1
0
mirror of https://github.com/rcore-os/rCore.git synced 2024-11-23 08:26:17 +04:00
Rust version of THU uCore OS. Linux compatible.
Go to file
2018-07-12 18:55:11 +08:00
crate Add CR3 to Context (x86_64) 2018-07-12 16:42:21 +08:00
docker Rewrite README. Add docker. 2018-04-02 15:28:32 +08:00
docs Experimental patch for core::sync::atomic on RISCV32I 2018-07-10 01:32:05 +08:00
macOS-env Add homebrew files for macOS 2018-04-03 14:49:26 +08:00
riscv-env Update dockerfile 2018-07-05 00:18:53 +08:00
riscv-pk Add riscv-pk from ucore_os_lab 2018-07-04 16:22:20 +08:00
src Print log level 2018-07-12 18:55:11 +08:00
user Add ucore & xv6-x86_64 user program img file. 2018-05-21 22:49:22 +08:00
.gitignore Generate vector.asm by build.rs. 2018-05-20 23:56:41 +08:00
.gitmodules Fork crate riscv as a submodule 2018-07-05 14:17:30 +08:00
.travis.yml Try to update travis 2018-07-06 23:23:02 +08:00
build.rs Add bbl as bootloader 2018-07-04 16:23:11 +08:00
Cargo.toml Make more mods common for both x86_64 & riscv32. 2018-07-10 17:07:03 +08:00
Makefile Experimental patch for core::sync::atomic on RISCV32I 2018-07-10 01:32:05 +08:00
README.md Add build guide. 2018-07-06 23:14:51 +08:00
riscv32-blog_os.json Experimental patch for core::sync::atomic on RISCV32I 2018-07-10 01:32:05 +08:00
status.md Update report 2018-06-15 11:50:51 +08:00
x86_64-blog_os.json Set the panic strategy to abort to fix _Unwind_Resume errors 2017-11-19 10:30:36 +01:00
Xargo.toml Clear all code, make it compile for RISCV in docker. 2018-07-03 22:27:55 +08:00

RustOS

Port to RISCV (WIP)

2018年THU计算机系统综合实验

Project Wiki

Documents

Environment

Dockerfile (Can not build directly. Just for reference)

Available on DockerHub: wangrunji0408/riscv-rust

How to run

git clone https://github.com/wangrunji0408/RustOS.git -b riscv --recursive
cd RustOS
# Pull docker image and enter docker interactive shell
make docker_riscv
# Inside docker ...
make build
make justrun

Summary

Build Status

A project of THU OS2018 spring.

Project Wiki

MidReport

FinalReport

The goal is to write a mini OS in Rust with multicore supporting.

It will start from the post of the Writing an OS in Rust series. Then reimplement xv6-x86_64 in Rust style.

Building

You need to have nasm, grub-mkrescue, xorriso, qemu, a nightly Rust compiler, and xargo installed. Then you can run it using make run.

A docker image is available and recommanded. Read this for details.

License

The source code is dual-licensed under MIT or the Apache License (Version 2.0).