articles/kernel.md: new article

This commit is contained in:
tocariimaa 2025-03-02 19:03:48 -03:00
parent d30e7b0a2e
commit 8bb6485b6c

16
articles/kernel.md Normal file
View file

@ -0,0 +1,16 @@
# Kernel
A kernel is the fundamental part of an [operating system](operating_system.md) which has full
control of the machine is running on and is responsible of managing the fundamental
functionality required for a full OS (like memory management, security, hardware [in monolithic kernels], etc.).
## Monolithic kernel
Monolithic kernels include all relevant functionality in the kernel side, including drivers. Naturally, this
mean that monolithic kernels are big and have a huge attack surface due to the amount of code running in kernel
mode (with full privileges).
Notable monolithic kernels are: the classical [Unix](unix.md), [Linux](linux.md) and the [BSD](bsd) kernels.
## Microkernel
*See [Microkernel](microkernel.md)*
A microkernel--unlike a monolithic one, has less functionality on the kernel side, moving most
to the userland.