Featured Leanpub Book
Code, Chips and Control
The Security Posture of Digital Isolation
Now we have made it to the kernel. Let's assume you have a chip, any chip, from the suppliers we've just discussed. You might choose to manually load a kernel onto that chip, using a GRand Unified Bootloader (GRUB) to load (or strap) the kernel, and pass all permissions over to it. It is the animus in the machine.
There are many different kernels, but they share one interesting characteristic to security: they run with the highest level of access, mediating interactions between user applications and the physical chips. A good kernel will handle low-level tasks like CPU scheduling, memory allocation, device input/output, and system calls. It is the bridge between software and hardware: if the kernel fails to load or crashes, the entire system will halt.
To make this level of access a bit safer, the kernel is designed to be always resident in memory, and execute in a protected mode that is isolated from applications. This prevents damage to core system data...








































