内核主要负责功能
内核主要负责以下四种功能:
- 系统内存管理
- 软件程序管理
- 硬件设备管理
- 文件系统管理
系统内存管理
内核通过硬盘上的存储空间来实现虚拟内存,这块区域称为交换空间(swap space)。内存存储单元块称作页面(page),内核会维护一个内存页面表,指明哪些页面位于物理内存内,哪些页面被交换到磁盘上。即使还有可用的内存,内核也会自动把一段时间未访问的内存页面复制到交换空间上(换出 swapping out)
软件程序管理
- 内核创建了第一个进程(init进程)来启动系统上所有其他进程。内核启动时,它会将init进程加载到虚拟内存中。
- 有的linux使用一个表来管理开机要启动的进程,通常在/etc/inittab中或/etc/init.d,开机启动/停止的脚本通过/etc/rcX.d目录入口(entry)(是/etc/init.d目录中启动脚本的符号链接)启动,X代表优先级。
- init系统采用了运行级,运行级为1时(单用户模式),只启动基本系统进程以及一个控制台终端进程。通常用来在系统有问题时进行紧急文件系统维护。
硬件设备管理
- 有两种方法用于插入设备驱动代码
- 编译进内核的设备驱动代码
- 可插入内核的设备驱动模块(可在硬件设备插入时将驱动代码写入,拔出时删除)
- 将硬件设备当成特殊的文件,称为设备文件
- 字符型设备文件(如调制解调器、终端)
- 块设备文件(如硬盘)
- 网络设备文件(如网卡)
- 为每个设备都创建一种节点特殊文件。与设备的所有通信都通过设备节点完成。每个节点都有唯一数值对来给Linux内核标识它。数值对为主设备号与次设备号,主设备号相当于组,次设备号标识组下特定设备。
参考文章
Linux Command Line and Shell Scripting Bible
该系列其他文章请查看:
Linux命令行与shell脚本
网友评论