mirror of
https://github.com/rcore-os/rCore.git
synced 2024-11-25 01:16:18 +04:00
1.6 KiB
1.6 KiB
ucore_os_lab port status
lab1:
- Basic init:LocalAPIC,IOAPIC,GDT,PIC
- Device:Keyboard,Serial,PIT,IDE
- Interrupt & Trapframe
- ※ Muilt-core startup
lab2: Physical memory management
- Frame allocator:Naive
- Frame allocator:First Fit,Best Fit,Worst Fit,Buddy,Slab
- Higher half kernel space
- Kernel remap
lab3: Virtual memory management
- Page table
- Heap allocator:LinkedList (Rust crate)
- ※ Stack allocator:Naive
- MM & VMA
- Copy on write
- Swap
lab4: Kernel thread
- idleproc
- initproc
- fork
- Scheduler thread
lab5: User thread
- Run xv6 64bit user programs:See the list below
- Run ucore 32bit user programs:See the list below
lab6: Schedule
- Schedule framework
- RRScheduler
- StrideScheduler
lab7: Synchronization
- Mutex
- Semaphore
- Monitor
- Dinning Philosophers Problem
lab8: File system
- Simple file system
- Load user programs from .img
- FS framework for process
- Device IO
uCore 32bit user programs pass status
- badarg
- badsegment
- divzero
- exit
- faultread
- faultreadkernel
- forktest
- forktree
- hello
- ls
- matrix
- pgdir
- priority
- sh
- sleep
- sleepkill
- softint
- spin
- testbss
- waitkill
- yield
xv6 64bit user programs pass status
- cat
- chmod
- echo
- forktest
- grep
- init
- kill
- ln
- ls
- mkdir
- rm
- sh
- stressfs
- usertests
- wc
- zombie