1. Preface
This article briefly describes the functions of the Linux kernel, and what parts of the Linux kernel are composed, and gives a brief description of the main functions completed by each part.
2. Functions of the kernel
The kernel is a middle tier of hardware and software, which is the function of passing application requests to hardware.
- From the perspective of the application
Any requests made by the application are abstracted by the kernel, masking the details of the operation, so the kernel is an enhancement to the hardware for the application.
- From the perspective of multi-process concurrency execution
When multiple processes are executing, the kernel needs to allocate and manage resources such as memory, so the kernel is a resource manager
- From the angle of the system call
Applications can request the kernel to do some functions through system calls, which are like libraries that the application calls
3. Implementation strategy of the kernel
There are two implementation strategies for the kernel:
Microkernel: The kernel only implements the most basic functions, non-basic functions such as file system, memory management, etc. delegated to some independent process processing
Macro kernel: In addition to the most basic functions of the kernel, other functions include file system, memory management, drivers are packaged in the same file
Linux kernel belongs to the macro kernel, but can be plugged into the kernel code or removed from the kernel code.
4. Components of the kernel
Introduction to the Linux kernel