Explanation Needed: What Is a Operating System Kernel?
In this newly written episode of Explanation Needed, as best I can I'll explain what exactly is the kernel, not what you'll find in popcorn, I'm talking about the operating system Kernel — the operating system core that has complete control over everything. When powering on your computer there's a lot going on before you even click on any desktop application, the kernel is one of the first programs to load during startup. It has many responsibilities, handling several startup duties as well as input/output requests from the operating system translating into data-processing instructions for the actual processor. The kernel also handles your computer's memory and peripherals that includes the keyboard, audio speakers, and printer.
But there's a critical code within the kernel that loads separately into an area of your memory, its fully protected from programs or, less essential parts of the operating system. Regarding overall function, the Kernel performs tasks, such as running processes, manage hardware devices like your hard drives and handle interrupts that takes place within kernel space that's protected. Now, in contrast, daily user tasks such as writing text, running programs in GUI, gaming, etc is done in a user's space. There is separation preventing user data and kernel data from intertwining with each other which can cause system instability and slowdowns that can thwart any multitasking functions.
The actual kernel interface is considered to be a low-level abstraction. When the process requests the kernel, this is supposed to be a system call. The kernel design differs in how it manages a system call and resources. The kernel runs the entire operating system instructions.
Just think of the Kernel as the proverbial glue that holds the entire operating system together. The processor is considered to be the brains of the computer, the kernel is the pinnacle brains of any operating system, be it desktop computing, Mac OS, Windows, Linux, or mobile smartphones IOS and Android. All of these operating systems have a written kernel code.