Linux内核体系结构(一)

Linux内核的体系结构主要分为5个模块:进程调度模块,内存管理模块,文件系统模块,进程间通信模块和网络接口模块。

进程调度模块主要负责控制进程对CPU资源的使用,策略是各进程能够公平合理访问CPU,同时保证内核能够及时执行硬件操作。

内存管理模块主要确保进程能够安全共享机器内存区,并且支持虚拟文件操作系统,把暂时不用的内存块交换到外部存储设备上去。

文件系统模块用于支持对外部设备的驱动和存储。虚拟文件系统向外部存储设备提供通用的文件接口,从而支持与其他操作系统兼容的多种文件系统格式。

进程间通信模块子系统用于支持多种进程间的信息交换方式。

网络接口模块提供对多种网络通信标准的访问并支持许多硬件网络。



内核程序使用进程号来标识,进程由可执行的指令代码、数据和堆栈区组成。进程之间的通信需要通过系统调用进行,内核通过任务调度分时调用各个进程。

Linux 下内核栈和用户栈是分开的。内核程序是通过进程表对进程进行管理的,每个进程在进程表中占有一项,进程表是一个 task 结构。

当一个进程在执行时,CPU的所有寄存器的值、进程的状态以及堆栈中的内容被称为该进程的上下文。在内核进行切换到另一个进程的时候需要保存当前的进程状态。


进程的各种状态及之间的转换.

只有当前进程从内核态转移到睡眠状态时,内核才会进行进程的切换.一个进程不能改变另一个进程的状态.



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值