Linux的内核
Linux从CPU的角度出发,为了保护内核的安全,把系统分成了2部分:用户空间和内核空间是程序执行的两种不同状态,我们可以通过“系统调用”和“硬件中断“来完成用户空间到内核空间的转移。
Linux的内核主要分为五个子系统组成:进程调度(SCHED)、内存管理(MM)、虚拟文件系统(VFS)、网络接口(NET)、和进程间通信(IPC)。
1.进程调度:
进程没调度控制系统中的多个进程对cpu的访问,使得多个进程能在CPU中“微观串行、宏观并行”地执行。
2.内存管理:
内存管理地主要作用是控制多个进程安全得共享主内存区域。
3.虚拟文件系统:
Linux虚拟文件系统隐藏了各种硬件的具体细节。为所有设备提供了统一的接口。
4.网络接口:
网络接口提供了对各种网络标准的存取和各种网络硬件的支持。
5.进程间通信:
进程间通信支持进程之间的通信,Linux支持进程之间多种通信机制,包含:信号量、共享内存、消息队列、管道、UNIX域套接字等,这些机制可以协助多个进程、多资源的互斥访问、进程间的同步和消息传递。