rCore-Tutorial version 3.5. See the Documentation in Chinese.
This project aims to show how to write an Unix-like OS running on RISC-V platforms from scratch in Rust for beginners without any background knowledge about computer architectures, assembly languages or operating systems.
qemu-system-riscv64 simulator or dev boards based on Kendryte K210 SoC such as Maix DockTODO:
Now we are still updating our project, you can find latest changes on branches chX-dev such as ch1-dev. We are intended to publish first release 3.5.0 after completing most of the tasks mentioned below.
Overall progress: ch7
power series application in early chapters, now you can find modulus in the outputUPSafeCell instead of RefCell or spin::Mutex in order to access static data structures and adjust its API so that it cannot be borrowed twice at a time(mention & .exclusive_access().task[0] in run_first_task)TaskContext into TaskControlBlock instead of restoring it in place on kernel stack(since ch3), eliminating annoying task_cx_ptr2llvm_asm! with asm!rcore-fs-fuse to 128MiBhuge_write which evaluates the fs performance(qemu~500KiB/s k210~50KiB/s)spin::Mutex with UPSafeCell before SMP chapterfind_pte rather than find_pte_create in PageTable::unmapfind_pte instead of checking it outside this functionWe will add them later.