Linux内核的组成部分(一)进程调度

Linux内核主要由进程调度、内存管理、虚拟文件系统、网络接口和进程间通信5个子系统组成。

Linux内核的组成部分(一)进程调度_第1张图片
image.jpeg

进程调度

进程调度控制系统中的多个进程对CPU的访问,使得多个进程能在CPU中"微观串行,宏观并行"的执行。

Linux内核的组成部分(一)进程调度_第2张图片
image.jpeg

在Linux内核中,使用task_struct结构体来描述进程,该结构体中包含描述该进程的内存资源,文件系统资源,文件资源,tty资源,信号处理等指针。Linux线程采用轻量级进程模型来实现,在用户空间通过pthread_create()创建线程的时候,本质上内核只是创建了一个新的task_struct,并将新task_struct的所有资源指针指向创建他的那个task_struct的资源指针。

绝大多数进程(包括进程中的)是由用户空间的应用创建的,当他们存在底层资源或硬件访问的需求时,会通过系统调用进入内核空间。

你可能感兴趣的:(Linux内核的组成部分(一)进程调度)