Introduction to the 1.Linux kernel
How 1.1.Linux systems Form
Kernel space (Kernel spaces) + user space
User space = User program + C language Library (example: GNC C Libraries)
Kernel space = Kernel + system call Interface (INTERFACE) + architecture-related code
Linux system is divided into the user space kernel space reasons?
The CPU now implements different modes of operation, taking arm as an example
A. User mode (USR)
B. System mode (SYS)
C. External interrupt mode (IRQ)
D. Management Mode (SVC)
E. Fast interrupt mode (FIQ)
F. Data access discontinuation (ABT)
G. Undefined directive exception (und)
The Linux system uses the CPU to run the Linux kernel and application separately, so that the operating system itself is fully protected.
Kernel space and user space are two different states of program execution.
Kernel space, User space
Transfer of user space to kernel space through system calls and hardware interrupts
1.2 Core composition
7 Components
Sci:system call Interface System Invoke interface
Pm:process Management process Management, process creation, process scheduling, process communication,
Mm:memory Management memory management, virtual address and Physical address translation, memory reclamation, (zone address)
Arch: Architecture-related code (ARM system) This place needs to modify its content .
Dd:device Drivers Device Driver
Network stack: Networking protocol stack (Linux supports multiple network protocols)
Vfs:virtual File System virtual filesystem
Fundamentals of Linux kernel development