- Basic init:LocalAPIC,IOAPIC,GDT,PIC
- Device:Keyboard,Serial,PIT,IDE
- Interrupt & Trapframe
- ※ Muilt-core startup
- Frame allocator:Naive
- Frame allocator:First Fit,Best Fit,Worst Fit,Buddy,Slab
- Higher half kernel space
- Kernel remap
- Page table
- Heap allocator:LinkedList (Rust crate)
- ※ Stack allocator:Naive
- MM & VMA
- Copy on write
- Swap
- idleproc
- initproc
- fork
- Scheduler thread
- Run xv6 64bit user programs:See the list below
- Run ucore 32bit user programs:See the list below
- Schedule framework
- RRScheduler
- StrideScheduler
- Mutex
- Semaphore
- Monitor
- Dinning Philosophers Problem
- Simple file system
- Load user programs from .img
- FS framework for process
- Device IO
- badarg
- badsegment
- divzero
- exit
- faultread
- faultreadkernel
- forktest
- forktree
- hello
- ls
- matrix
- pgdir
- priority
- sh
- sleep
- sleepkill
- softint
- spin
- testbss
- waitkill
- yield
- cat
- chmod
- echo
- forktest
- grep
- init
- kill
- ln
- ls
- mkdir
- rm
- sh
- stressfs
- usertests
- wc
- zombie