The Linux kernel has been used in computers around the world for three decades. Due to the fact that the kernel is used on different platforms, this solution is found almost everywhere, for example in PCs, smartphones, wearable electronics, home appliances and networking devices. In this article, let's take a look at the kernel architecture, its main tasks and interfaces.
It is known that assembly code gives you the opportunity to get even more performance, in terms of capabilities it is somewhat limited, the lion's share of code is written in C language. This share is as much as 98%. In assembly language we decided to make only unimportant inserts that slightly increase performance, architecture-dependent functions and the loader.
What is the architecture of the Linux kernel? The level of access to PC resources depends largely on the type of kernel used by the OS. In terms of privileges, the kernel remains above other applications. Considering the number of tasks to be performed, the solution of the task takes place at the kernel level, so distinguish them several varieties. The most common solution is monolithic, microkernel and hybrid.
The lion's share of the monolithic Linux kernel is stored in a single file. But this does not yet indicate that it belongs to the monolithic kernel, but modules are capable of separate storage. The main trick is that the kernel can handle all requests, but does not take into account requests from user applications. The kernel takes care of such tasks as:
Despite the monolithic nature of the kernel, it consists of internal modules that are loaded as needed rather than individually. Some modules are kept separate from the kernel, but these are mostly auxiliary device drivers.
The kernel is the most privileged software on a PC. Specifically speaking about the Linux kernel, it is monolithic. This is the main thing to know at this stage.
Apply the discount by inserting the promo code in the special field at checkout: