Linux系统体系机构

Linux基本体系结构

1、用户空间(也叫应用程序)

用户空间是用户操作应用程序执行的地方,简明说就是解析用户的操作。所以这里主要提供两种服务,①从用户空间应用程序转换到内核空间的机制(通过C库的函数(C语言的函数)连接系统调用接口),②连接内核的系统调用接口。实际上用户空间也可以算做每个用户空间里进程的虚拟空间,相对的内核则是实际的地址空间。

2、内核空间

内核是系统的核心,主要负责管理系统的进程、内存、设备驱动程序、文件、网络系统。决定着系统的性能和稳定性。

主要组成部分有:内存管理、进程管理、设备驱动管理、文件系统、网络管理等。

2.1系统调用接口(SCI)

用户空间和内核空间中间层,提供一些从用户空间到内核的函数。

2.2文件管理

Linux使用“虚拟内存”的内存管理方式,将内存划分为易处理的“内存页”(一般都是4kb)。当内存页满了或者完全没有使用,系统会调整对应的内存使用。为防止内存被消耗光,一些内存会被移除内存放入磁盘中,此过程称为交换。

2.3进程管理

进程是某个应用程序的运行实体。Linux支持多进程,通过短时间内轮流运行这些进程实现“多任务”,这个时间间隔称为“时间片”,让进程轮流运行的方法叫做“进程调度”,完成调度的程序称为“调度程序”。每个进程都有单独的地址空间,且只能由这一进程访问。进程间通过通讯机制互相访问,常见的进程通讯机制有信号、管道、共享内存、信号量、套接字等。内核通过“系统调用接口(SCI)”为一个应用程序创建编程接口(API)的形式来创建一个新的进程。

2.4文件系统

Linux系统将文件系统组合成一个层次化的树形结构,由一个单独的实体代表这一文件系统。Linux安装文件系统称为“挂载”。Linux支持不同类型的文件系统。

2.5设备驱动程序

设备驱动程序可提供一组操作系统可理解的抽象接口,用来完成操作系统之间的交互,与硬件相关的操作则是由设备驱动程序来完成。一般设备驱动程序和设备的控制芯片有关。简单说就是控制操作系统与硬件的交互。

2.6网络接口程序

网络接口程序提供了各种网络标准的存取和各种网络硬件的支持。网络接口分为网络协议和网络驱动程序。网络协议负责实现网络传输协议,Linux支持全部的TCP/IP协议,因为Linux内核的网络部分由BSD套接字、网络协议层和网络设备驱动程序组成;网络设备驱动程序负责与硬件设备通讯,每一种硬件设备都有对应的设备驱动程序。

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章