How casys-kaist/keos works
OS-projects is an educational operating-systems and virtualization repository: learners implement KeOS kernel features across five sequential projects, then KeV virtualization features across its project sequence. The runtime layer is KeOS, with KeV using it as its host; project directories provide the implementation stages. The README establishes the curriculum and progression, while sampled bootstrap code shows VMX startup and filesystem registration. Individual project internals are not sampled, so their detailed runtime wiring is intentionally omitted.
Main entry points: src/lib.rs KeOS kernel · src/lib.rs KeV runtime · mod.rs Fast filesystem · src System calls
Components 21
KeOS kernel
- KeOS kernel
keos/src/lib.rs
KeOS projects
- System calls
keos-projects/keos-project1/src - Memory management
keos-projects/keos-project2/src - Advanced memory
keos-projects/keos-project3/src - Process management
keos-projects/keos-project4/src - Filesystem project
keos-projects/keos-project5/src - User C library
keos-projects/kelibc
KeV hypervisor
- KeV runtime
kev/src/lib.rs - VM control
kev/src/vm_control.rs - VM exits
kev/src/vmexits.rs
KeV projects
- KeOS foundations
kev-projects/kev-project0/src/lib.rs - VMCS and exits
kev-projects/kev-project1/src - Hardware virtualization
kev-projects/kev-project2/src - Interrupt and I/O
kev-projects/kev-project3/src - Final project
kev-projects/kev-project4
Filesystem
- SimpleFS adapter
fs/simple_fs/src/lib.rs - Fast filesystem
keos-projects/keos-project5/src/ffs/mod.rs - Page cache
keos-projects/keos-project5/src/page_cache/mod.rs
Other components
- Learner
- Disk
- x86 hardware
Connections 24
- Learner → System calls: implements first
- System calls → Memory management: builds on
- Memory management → Advanced memory: builds on
- Advanced memory → Process management: builds on
- Process management → Filesystem project: builds on
- KeOS kernel → System calls: hosts project
- KeOS kernel → Memory management: hosts project
- KeOS kernel → Advanced memory: hosts project
- KeOS kernel → Process management: hosts project
- KeOS kernel → Filesystem project: hosts project
- User C library → KeOS kernel: invokes syscalls
- Filesystem project → Fast filesystem: implements
- Fast filesystem → Page cache: wrapped by
- Fast filesystem → Disk: reads and writes
- SimpleFS adapter → Disk: loads from
- Learner → KeOS foundations: starts with
- KeOS foundations → VMCS and exits: builds on
- VMCS and exits → Hardware virtualization: builds on
- Hardware virtualization → Interrupt and I/O: builds on
- Interrupt and I/O → Final project: extends project
- KeOS kernel → KeV runtime: provides host
- KeV runtime → VM control: controls VMs
- VM control → VM exits: handles exits
- KeV runtime → x86 hardware: initializes VMX