Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/0x59616e/SteinsOS
An operating system written in Rust
https://github.com/0x59616e/SteinsOS
armv8 kernel operating-system os osdev rust
Last synced: about 1 month ago
JSON representation
An operating system written in Rust
- Host: GitHub
- URL: https://github.com/0x59616e/SteinsOS
- Owner: 0x59616e
- License: mit
- Created: 2021-09-11T02:55:37.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2021-10-15T11:07:04.000Z (about 3 years ago)
- Last Synced: 2024-08-02T00:21:55.236Z (4 months ago)
- Topics: armv8, kernel, operating-system, os, osdev, rust
- Language: Rust
- Homepage:
- Size: 87.9 KB
- Stars: 114
- Watchers: 1
- Forks: 8
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-rust - 0x59616e/SteinsOS - a architecture. (Applications / Operating systems)
- awesome-rust-cn - 0x59616e/SteinsOS - a架构的一个操作系统。 (应用程序 Applications / 操作系统 Operating systems)
- awesome-rust - 0x59616e/SteinsOS - An OS for armv8-a architecture. (Applications / Operating systems)
- fucking-awesome-rust - 0x59616e/SteinsOS - An OS for armv8-a architecture. (Applications / Operating systems)
- fucking-awesome-rust - 0x59616e/SteinsOS - An OS for armv8-a architecture. (Applications / Operating systems)
README
# Introduction
SteinsOS is an operating system featuring non-preemptive kernel targeting on single-core armv8 architecture.SteinOS is derived from following tutorials and software distributions:
[Redox OS](https://gitlab.redox-os.org/redox-os/redox): The state-of-the-art Rust Operating System.
[RISC Vに従うCPUの上で動作するOSをRustで書く(CPU実験余興](https://moraprogramming.hateblo.jp/entry/2019/03/17/165802):
Very useful blog about Rust bare-metal programming.[Writing an OS in Rust](https://os.phil-opp.com/): An excellent series about kernel dev with Rust.
[xv6](https://github.com/mit-pdos/xv6-riscv): An Unix-like OS written in C.
# Document
Below are SteinsOS docuements, one in Taiwanese, and the other in English.[Taiwanese](https://hackmd.io/@0x59616e/rJEE2msfY)
[English](https://hackmd.io/@0x59616e/H1kKW4ift)
# Prerequisites
Here's what you need:
- [Rust compiler](https://www.rust-lang.org/tools/install)
```
$ curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
```
- [aarch64-none-elf toolchain](https://developer.arm.com/tools-and-software/open-source-software/developer-tools/gnu-toolchain/gnu-a/downloads)
- qemu-system-aarch64
```
$ sudo apt-get install -y qemu-system-aarch64
```# Build and run
Just run `make qemu`
```
$ make qemu
```
# Feature
- Preemptive multi-tasking
- Memory management
- Virtual Memory
- File system
- C library# Shell
```
$ ls
.
shell
ls
cat
READMD.md
$ cat ./README.md
...
```# Contribution
Pull requests, bug reports and any kind of suggestion are very welcomed.