Early operating system kernels were rather small, partly because computer memory was limited.
Assembly languages are more typically used for detailed and/or time critical applications such as small real-time embedded systems or operating system kernels and device drivers.
Operating system kernels need to allocate memory just as application programs do.
For this reason, spinlocks are often used inside operating system kernels.
Additional to the system kernel is the Finder, an application used for file management, which also displays the Desktop.
Control intensive code include such things as nested branches which occur frequently in operating system kernels.
Same root file system, different kernel and CPU architecture.
GNU Hurd an operating system kernel whose name is a pun on "herd"
Hence, device drivers, file system code, and other features which are often found within operating system kernels must be run in processes on the 4000 systems.
The following tables compare general and technical information for a number of widely used and currently available operating system kernels.