Linux 结构和目录详细介绍 Linux 结构可以粗糙的抽象为三层:底层系统内核、shell 层、中间层和应用层。其中,内核控制着计算机系统上的所有硬件和软件,在必要时分配硬件,并根据需要执行软件。内核主要负责四种功能:系统内存管理、软件程序管理、硬件设备管理、文件系统管理。 一、系统内存管理 内核不仅管理服务器上的可用物理内存,还可以创建和管理虚拟内存(即实际并不存在的内存)。内核通过硬盘上的存储空间来实现虚拟内存,这块区域称为交换空间(swap space)。内核不断地在交换空间和实际的物理内存之间反复交换虚拟内存中的内容。这使得系统以为它拥有比物理内存更多的可用内存。内存存储单元按组划分成很多块,这些块称作页面(page)。内核将每个内存页面放在物理内存或交换空间。然后,内核会维护一个内存页面表,指明哪些页面位于物理内存内,哪些页面被换到了磁盘上。 二、软件程序管理 Linux 操作系统将运行中的程序称为进程。进程可以在前台运行,将输出显示在屏幕上,也可以在后台运行,隐藏到幕后。内核控制着 Linux 系统如何管理运行在系统上的所有进程。内核创建了第一个进程(称为 init 进程)来启动系统上所有其他进程。当内核启动时,它会将 init 进程加载到虚拟内存中。内核在启动任何其他进程时,都会在虚拟内存中给新进程分配一块专有区域来存储该进程用到的数据和代码。 三、硬件设备管理 内核的另一职责是管理硬件设备。任何 Linux 系统需要与之通信的设备,都需要在内核代码中加入其驱动程序代码。驱动程序代码相当于应用程序和硬件设备的中间人,允许内核与设备之间交换数据。在 Linux 内核中有两种方法用于插入设备驱动代码:编译进内核的设备驱动代码可插入内核的设备驱动模块以前,插入设备驱动代码的唯一途径是重新编译内核。每次给系统添加新设备,都要重新编译一遍内核代码。 四、文件系统管理 Linux 系统将硬件设备当成特殊的文件,称为设备文件。设备文件有 3 种分类:字符型设备文件、块设备文件和网络设备文件。字符型设备文件指处理数据时每次只能处理一个字符的设备,比如大多数类型的调制解调器和终端。块设备文件指处理数据时每次能处理大块数据的设备,比如硬盘。网络设备文件指采用数据包发送和接收数据的设备,包括各种网卡和一个特殊的回环设备。
剩余8页未读,继续阅读
- 粉丝: 4
- 资源: 4
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助