1
0
mirror of https://github.com/rcore-os/rCore.git synced 2024-11-23 00:16:17 +04:00
Rust version of THU uCore OS. Linux compatible.
Go to file
2018-08-07 14:53:35 +08:00
crate Fit for newest Rust nightly. x86_64 ok, riscv32 broken. 2018-08-04 16:20:25 +08:00
docker Rewrite README. Add docker. 2018-04-02 15:28:32 +08:00
docs Update doc & README 2018-07-12 22:46:17 +08:00
kernel Mul & div inst emulation 2018-08-07 14:53:35 +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 rv64 toolchain configure for riscv-pk 2018-08-04 23:02:50 +08:00
user Fix user project for new toolchain 2018-08-05 10:41:51 +08:00
.gitignore Fix x86_64. Not elegant. 2018-08-05 17:50:56 +08:00
.gitmodules Fork crate riscv as a submodule 2018-07-05 14:17:30 +08:00
.travis.yml Update travis 2018-08-05 01:07:52 +08:00
Makefile Fix build guide 2018-07-16 13:37:26 +08:00
README.md Update README 2018-07-26 20:21:21 +08:00
status.md Update report 2018-06-15 11:50:51 +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 --recursive
cd RustOS
# Pull docker image and enter docker interactive shell
make docker_riscv
# Inside docker ...
cd kernel
# Patch the atomic mod of core lib
make patch-core
make run

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).