The kernel is the main component of any operating system. The function or role of a kernel includes memory management, device management, and accessing all computer resources. Based on the functions of the kernel, there are three main categories of OS kernel.
The macro kernel is a combination of both
The monolithic kernel runs all the services in kernel mode, and the entire kernel functionality is organized into a single block that is difficult to debug and maintain.
The micro kernel is slower because of additional messages passing overhead between all the services, and the functionality of the kernel is minimal.
Finally, the hybrid kernel in which the macro kernel falls. It covers almost all the disadvantages of previous kernel structures. Let's discuss its function in detail.
The main purpose of this kernel is to have a similar kernel structure to the microkernel but to implement the monolithic structure at the same time. Following are the major functions of the macro kernel:
XNU is the kernel that Apple Inc. acquired and developed for use in the macOS, iOS, watchOS, and tvOS operating systems.
XNU is a macrokernel that includes monolithic and microkernel features, trying to get the most out of both technologies—including microkernel messaging capabilities. It makes the modularity of the operating system and most of the protected memory available to maintain the speed of the monolithic kernel for certain critical tasks.