# Security Part of the design philosophy that drives my inspiration for Gila is the idea of creating a new, fast, and safe kernel with security as a central focus. Kernels such as Linux, Mach, and NT have been around for too long to work perfectly with today's system security model. Gila is brand-new, and built almost exclusively in Rust for the utmost memory safety. ## Goals - Distrustful by default - Small, simple, and transparent - Performant - Capability based - Highly isolated ## Gila's security model ### Microkernel architecture Gila is a microkernel. Only the most important functionality runs at Ring 0 (Protected Mode) to reduce attack surface. This functionality includes: - Modifying and reading kernel configurations - Process creation and destruction - Scheduling - Memory allocation and management - Inter-process communication - Hardware communication interfaces User processes perform complex functionality by interacting with server processes. Servers perform many different things: - PCI(e) - USB - Security policy - Filesystems - Logins ### Capability based MAC Eventually, once Gila is complex enough to need access control, I would like to implement support for capability-based mandatory access control. Details will be decided on once more APIs are stabilized.