转载请注明出处,谢谢~
最近工作上偶尔有涉及到内核的一些初步知识,根据网上的资料加上自己的理解,整理了一下基本的内核知识,技术有限,希望大家多多指正。
内核,听名字就可以以判断出它是Linux操作系统的核心,初步可以理解它的作用是用于管理软硬件的资源,并为其提供运行环境,具体是负责管理系统的进程、内存、设备驱动程序、文件和网络系统,决定着系统的性能和稳定性。通俗的可以理解为内核是一种控制计算机硬件资源与提供上层应用程序运行环境的软件。
1、Linux系统的整个框架
了解内核首先要了解Linux系统的整体框架组成,大致如下图:
上图说明了Linux内核的整体架构。根据内核的核心功能,Linux内核提出了5个子系统,分别负责如下的功能:
进程的调度与管理(Process Scheduler):负责管理CPU资源,以便让各个进程可以以尽量公平的方式访问CPU。
内存管理(Memory Manager):负责管理Memory(内存)资源,以便让各个进程可以安全地共享机器的内存资源。另外,内存管理会提供虚拟内存的机制,该机制可以让进程使用多于系统可用Memory的内存,不用的内存会通过文件系统保存在外部非易失存储器中,需要使用的时候,再取回到内存中。