Join the Ben Heck team every week for amazing hacks! Watch them build and mod community-inspired projects using electronics!
|See All Episodes|
At the base level of the operating system is the kernel. The kernel interacts with the firmware on the motherboard. On top of the firmware there is the kernel as well as the device drivers. Above the kernel and the device drivers there are system services. Going beyond that, above the system services you see the graphical interface and the application layer. The operating system consists of everything down to the kernel and drivers up to the system services, graphical interface, and the application layer.
The kernel acts as the translation layer between the application interface and the firmware on the motherboard. Firmware is the software that’s embedded on the motherboard. It can be either a e ufi (unified extensible firmware interface) or bios which is a legacy basic input/output interface. A driver is a piece of code that is either part of the kernel or a module that’s loaded into the kernel. Or, it sits alongside the kernel or next to the kernel in some way.
The driver interfaces with the firmware that’s on a peripheral. This could be anything from a printer to a video card or even things on the motherboard. It then communicates that with the kernel. System services are things that sit on top of the kernel and they manage a range of services that may be necessary for the operating system in order for it to do its tasks. The graphical interface, unlike a console or a command line, provides a visual aid for a user to understand what’s going on inside the computer. Finally, the application layer, in the operating system software stack, is where programs such as a web browser or email client are contained. They differ from kernels or drivers because they don’t really manage the system resources.