Linux是很稳定的操作系统,提供了完整的操作系统当中最底层的硬件控制与资源管理的完整框架。
Linux处在硬件系统和应用程序之间的操作系统包括:内核和系统调用。
linux可划分为4个部分:
内核的主要功能:
系统内存管理:内核不仅管理服务器上的可用物理内存,还可以创建和管理虚拟内存(实际并不存在的内存)。
交换空间:内核通过硬盘上的存储空间来实现虚拟内存。内存不断在物理内存和交换空间反复交换数据。
软件程序管理:内核控制着linux系统如何管理运行在系统上的所有进程。
内核创建了第一个进程(init进程)来启动系统上其他的所有进程。内核启动时他会将init进程加载到虚拟内存中。
内核在启动任何其他进程时都会在虚拟内存中给新进程分配一块专有区域来存储该进程用到的数据和代码。
硬件设备管理:任何Linux系统需要的与之通信的设备,都需要在内核代码中加入其驱动程序代码。驱动程序代码相当于是应用程序和硬件设备的中间人,允许内核与设备之间交换数据。
在linux内核中有两种方法用于插入设备驱动代码:
Linux系统将硬件设备当成特殊的文件,称为设备文件
linux为系统上的每个设备都创建一种称为节点的特殊文件。与设备的所有通信都通过设备的节点完成。
文件系统管理:Linux内核支持通过不同类型的文件系统从硬盘中读写数据。内核在编译时就加入对所有可能用到的文件系统的支持。(不限于自由的诸多文件系统,还支持其他系统的文件类型(Windows))
Linux内核采用虚拟文件系统(Virtual File System,VFS)作为和每个文件系统交互的接口。这为不同的文件类型同Linux内核提供了标准的接口。
当每个文件系统都被挂载和使用时,VFS将信息都缓存在内存中。
参考:Linu命令行于shell脚本编程大全-->Blum, Bresnahan