acadia/zion
Drew Galbraith 0aa4a1f5f1 [Zion] Allow loading from an offset program segment. 2024-08-17 20:18:54 -07:00
..
boot [Zion] Compile kernel with -Wall -Werror. 2023-11-26 22:07:52 -08:00
capability [Zion] Make sure result of ValidateCapability is used. 2024-08-17 17:14:30 -07:00
common [Zion] Compile kernel with -Wall -Werror. 2023-11-26 22:07:52 -08:00
debug [Zion] Compile kernel with -Wall -Werror. 2023-11-26 22:07:52 -08:00
include Implement yunq server in rust. 2024-07-31 19:59:46 -07:00
interrupt [Zion] Print RBP on GP Fault. 2023-12-08 14:30:24 -08:00
lib [Zion] Add extra message for when unmap fails. 2024-08-17 12:54:09 -07:00
loader [Zion] Allow loading from an offset program segment. 2024-08-17 20:18:54 -07:00
memory [Zion] Ensure memory alignment of large allocations. 2024-08-17 12:53:25 -07:00
object Move glcr::Array & glcr::ArrayView loops to range-based. 2024-01-11 17:39:55 -08:00
scheduler [Zion] Add a thread sleep call. 2023-12-07 00:20:03 -08:00
syscall [Zion] Check right permission for reply port send. 2024-08-17 17:49:06 -07:00
usr [Zion] Remove dead ZMessage struct. 2023-11-02 21:57:29 -07:00
CMakeLists.txt [Denali] Add back accidentally deleted files. 2024-01-17 14:12:46 -08:00
README.md Update READMEs and TODOs 2023-10-24 22:56:45 -07:00
TODO.md Update TODOs 2023-12-05 16:16:42 -08:00
linker.ld
zion.cpp [Zion] Add a keyboard interrupt handler and a driver manager. 2023-11-25 11:14:30 -08:00

README.md

Zion Microkernel

The Zion Microkernel is a capability based kernel. The types of objects that processes can hold a capability to exist in the object/ directory. The system calls used to interact with them are enumerated in include/zcall.h and are implemented in the syscalls/ directory.

The system uses a barebones ELF loader (loader/init_loader.h) to jump to userspace but from there userspace processes are responsible for loading child processes into memory and executing them.

Open Work

The TODO file enumerates current areas for improvement.