acadia/zion
Drew Galbraith 642fc4d80d [Zion/Mammoth] Move init cap decls to mammoth.
They no longer need to be independent now that we have removed the libc.
2023-12-01 10:42:26 -08:00
..
boot [Zion] Compile kernel with -Wall -Werror. 2023-11-26 22:07:52 -08:00
capability [Zion] Remove all capabilities on process cleanup. 2023-11-24 17:05:11 -08: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 [Zion/Mammoth] Move init cap decls to mammoth. 2023-12-01 10:42:26 -08:00
interrupt [Zion] Don't ignore DriverManager Register return code. 2023-11-25 13:06:14 -08:00
lib
loader [Zion] Compile kernel with -Wall -Werror. 2023-11-26 22:07:52 -08:00
memory [Zion] Free paging structures after process exit. 2023-11-24 17:19:32 -08:00
object [Zion] Free paging structures after process exit. 2023-11-24 17:19:32 -08:00
scheduler
syscall [Zion] Fix thread start checks and add logging. 2023-11-25 13:06:50 -08:00
usr
CMakeLists.txt [Zion] Compile kernel with -Wall -Werror. 2023-11-26 22:07:52 -08:00
README.md
TODO.md
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.