计算机系统结构 日一般情况下,我们不能直接操作裸机,必须通过一个 叫做基本输入输出系统的软件系统(英文为 Basic Input/Output System,简称BIOS),才能操作控制 应用程序 裸机,之所以这样称呼它,是因为它提供了最基本的 操作系统 计算机操作功能,如在屏幕上显示一点,接收一个键 盘字符的输入等。 基本输入输出系统(BOS) 日在基本输入输出系统的外面是操作系统( Operating System):专门负责管理计算机的各种资源,并提供 底层硬件设备 操作电脑所需的工作界面。有了它们,人们才可以方 便自如地使用电脑。 日应用软件一般都运行在操作系统之上,由专业人员 根据各种需要开发。我们平时见到和使用的绝大部分 软件均为应用软件,如杀毒软件,文字处理软件,学 习软件,游戏软件,上网软件等等 具体结构图如右图所示: 7
7 底层硬件设备 基本输入输出系统(BIOS) 操 作 系 统 应用程序 计算机系统结构 一般情况下,我们不能直接操作裸机,必须通过一个 叫做基本输入输出系统的软件系统(英文为Basic Input/Output System,简称BIOS),才能操作控制 裸机,之所以这样称呼它,是因为它提供了最基本的 计算机操作功能,如在屏幕上显示一点,接收一个键 盘字符的输入等。 在基本输入输出系统的外面是操作系统(Operating System):专门负责管理计算机的各种资源,并提供 操作电脑所需的工作界面。有了它们,人们才可以方 便自如地使用电脑。 应用软件一般都运行在操作系统之上,由专业人员 根据各种需要开发。我们平时见到和使用的绝大部分 软件均为应用软件,如杀毒软件,文字处理软件,学 习软件,游戏软件,上网软件等等 具体结构图如右图所示:
Linux操作系统结构 用户进程 系统调用接口 LINUX内核 硬件:CPU、内存、硬盘、网络硬件等 日用户进程:用户应用程序是运行在LⅠNUX操作系统最高层的一个庞大的软件集合,当一个用户 程序在操作系统之上运行时,它就成为操作系统中的一个进程。 日系统调用接口:在应用程序中,可通过系统调用来调用操作系统内核中特定的过程,以实现特 定的服务,比如创建一个新进程等。由若干条指令构成的过程: SHELL、WHO等 内核:操作系统的灵魂,它负责管理磁盘上的文件、内存,负责启动并运行程序,负责从网络 上接收和发送数据包等。内核实际是抽象的资源操作到具体硬件操作细节之间的接口。 日硬件:这个子系统包括了LNUX安装时需要的所有可能的物理设备,如CPU、内存、硬盘、网 络硬件等
8 硬件:CPU、内存、硬盘、网络硬件等 LINUX 内核 系统调用接口 用户进程 Linux 操作系统结构 用户进程:用户应用程序是运行在LINUX操作系统最高层的一个庞大的软件集合,当一个用户 程序在操作系统之上运行时,它就成为操作系统中的一个进程。 系统调用接口:在应用程序中,可通过系统调用来调用操作系统内核中特定的过程,以实现特 定的服务,比如创建一个新进程等。由若干条指令构成的过程:SHELL、WHO等 内核:操作系统的灵魂,它负责管理磁盘上的文件、内存,负责启动并运行程序,负责从网络 上接收和发送数据包等。内核实际是抽象的资源操作到具体硬件操作细节之间的接口。 硬件:这个子系统包括了LINUX安装时需要的所有可能的物理设备,如CPU、内存、硬盘、网 络硬件等
Linux内核的构成 内存管理子系统 日内存管理子系统:允许多 个进程安全地共享主内存 区域,支持虚拟内存 虚拟文件系统 日进程调度控制着进程对CPU uwy 日虚拟文件系统隐藏了各种不同… 的访问,当需要选择下一个 进程间通信 硬件的具体细节,为所有设备 进程运行时,由调度程序选 择最值得运行的进程 日进程间通信支持进程 提供了统一的接口,V支持wrro 间各种通信机制 几十种不同的文件系统 w 网络接口 日网络接口提供了对各种网 络标准的存取和各种网络 硬件的支持
9 Linux 内核的构成 进程调度 (SCHED) 硬件驱动程序 逻辑文件系统 虚拟文件系统 (VFS) 进程间通信 (IPC) 硬件相关 硬件无关 内存管理子系统 (MM) 硬件驱动程序 网络协议 网络接口 (NET) 进程调度控制着进程对CPU 的访问,当需要选择下一个 进程运行时,由调度程序选 择最值得运行的进程 内存管理子系统:允许多 个进程安全地共享主内存 区域,支持虚拟内存 虚拟文件系统隐藏了各种不同 硬件的具体细节,为所有设备 提供了统一的接口,VFS支持 几十种不同的文件系统 网络接口提供了对各种网 络标准的存取和各种网络 硬件的支持 进程间通信支持进程 间各种通信机制
Linux进程调度子系统 进程调度子系统完成的主要功能: ☆允许进程建立自己的拷贝 令决定哪一个进程将占用CPU,使得可运行进程之间进行有效地转移 接受中断并把他们发送到合适的内核子系统 在屏幕上的不同位置分别显示 令发送信号给用户进程 各自的计数器值(16进制) 令管理定时器硬件 令当进程结束后,释放进程所占用的资源 NET 令支持动态装入模块,这些模块代表着内核启动以后所增加的新功能 task task2 task3 ,这种可装入的模块将由虚拟文件系统和网络接口使用 系统调 用接口 进程调度进程 Scheduler内核任务调度程序 定时器管理调度 模块管理 「几时钟中断(m次/秒) 3、进程调度示意图 2、进程调度的结构图 结构特定 的模块
10 Linux 进程调度子系统 FS IPC MM NET 结构特定 的模块 进程调度 定时器管理 模块管理 进程 调度 系统调 用接口 Scheduler内核任务调度程序 时钟中断(182次/ 秒) task1 task2 task3 在屏幕上的不同位置分别显示 各自的计数器值(16 进制) 3、进程调度示意图 2、进程调度的结构图 1、进程调度与其他子系统的依赖关系 SCHED 进程调度子系统完成的主要功能: ❖ 允许进程建立自己的拷贝 ❖ 决定哪一个进程将占用CPU,使得可运行进程之间进行有效地转移 接受中断并把他们发送到合适的内核子系统 ❖ 发送信号给用户进程 ❖ 管理定时器硬件 ❖ 当进程结束后,释放进程所占用的资源 ❖ 支持动态装入模块,这些模块代表着内核启动以后所增加的新功能 ,这种可装入的模块将由虚拟文件系统和网络接口使用
Linux内存管理子系统 中央处理单元(CPU) 昂贵 功能单元 快速 日小容量 寄存器 内部 cache 内部 cache 8a便宜 8日低速 1大容量 主存 内存管理是Iinm内核最复杂的任务之 主要包括地址映射、请页、交换 磁盘 内存分配、内存回收、缓存、刷新、共 享等机制 存储器的层次结构 日程序的创建和执行以及内存的初始化
11 中央处理单元(CPU) 功能单元 寄存器 内部cache 内部cache 磁盘 主存 存储器的层次结构 Linux 内存管理子系统 昂贵 快速 小容量 便宜 低速 大容量 内存管理是Linux内核最复杂的任务之 一:主要包括地址映射、请页、交换、 内存分配、内存回收、缓存、刷新、共 享等机制 程序的创建和执行以及内存的初始化