1.4 操作系统的结构设计1.4.1 操作系统的构件 1.4.2 整体式结构的操作系统 1.4.3 层次式结构的操作系统 1.4.4 虚拟机结构的操作系统 1.4.5 客户/服务器与微内核结构的操作系统 1.4.6 操作系统的运行模型 1.4.7 Windows 2000/ XP的客户/服务器结构
1.4 .1操作系统的结构设计操作系统结构设计概况(1) 操作系统设计呈现出以下特征: 一是复杂程度高, 二是生成周期长, 三是正确性难保证 。 例如,CTSS、OS/360、Multics 、 Windows 2000
操作系统的结构设计概况(2)操作系统结构设计有两层含义
一.是研究操作系统程序的数据结构 和控制结构; 二.是组成操作系统程序的构造过程 和方法。采用不同的构件和构造方 法可组成不同结构的操作系统。
操作系统的构件(1) 内核 进程 线程 类程 管程
操作系统的构件(2)1、内核 内核不是进程,是提供支持系统运行 的基本功能的一组程序模块,有了内 核的支撑,进程运行环境得到改善, 安全性得到保证,系统效率就能提高。 分类:微内核和单内核。 Linux是单内核操作系统 ,Mach是微 内核操作系统 ,Windows2000/XP改 进的C/S结构 。
操作系统的构件(3)内核提供以下三方面功能
1)中断处理。 2)短程调度。 3)原语管理。
操作系统的构件(4)内核的执行有以下属性
1)内核是由中断驱动的 2)内核的执行是连续的 3)内核在屏蔽中断状态下执行 4)内核可以使用特权指令
操作系统的构件(5)内核和裸机组成了一台虚拟机具有 以下特性:1)虚拟机没有中断, 2)虚拟机为每个进程提供了一台虚拟 处理器, 3)虚拟机为进程或模块提供了功能较 强的指令系统。
运行进程发现中断源
目 态 硬 件 完 成
发现中断源
内核 被触 发和 内核 处理 流程
装配中断码 交换PSW
自愿中断事件 保护现场 分析和传递参数是 原语 ? 否
强迫中断事件
机器故 障 中断处 理
I/O 中断 处理
外中 断处 理
程序 中断 处理
管 态
原语处理
创建系统进程 系统调用处理
创建系统进程
操 作 系 统 内 核 完 成
队列调整 低级调度 运行进程 目 态
操作系统的构件(6)2、进程
进程是并发程序设计的一 个工具,并发程序设计支 撑了多道程序设计
操作系统的构件(7)进程概念使OS结构变得清晰
1)一个进程到另一个进程的控制转移由进程 调度机构统一管理,不能杂乱无章,随意进行。 2)进程间的信号发送、消息传递和同步互斥 由通信及同步机制完成,进程无法有意或无意 破坏它进程的数据。每个进程相对独立,相互 隔离,提高了系统的安全性和可靠性。 3)进程结构较好刻画了系统的并发性,动态 地描述出系统的执
行过程,具有进程结构的操 作系统,结构清晰、整齐划一,可维护性好。
操作系统的构件(8)3、线程 进程是系统进行保护和资源分配的 单位,而线程则是进程中一条执行 路径,每个进程中允许有多个并行 执行的路径,线程才是系统进行调 度的单位。
操作系统的构件(9)4、管程
管程是管理共享资源的机制,对 管程的调用表示对共享资源的请 求与释放。管程应包含条件变量, 当条件不满足时,可以通过对条 件变量做延迟操作使调用进程等 待,直到另一个进程调用管程过 程并执行一个释放操作为止。
操作系统的构件(10)5、类程
类程用于管理私有资源,对类程的 调用表示对私有资源的操作。它仅 能被进程及起源于同一进程的其它 类程或管程嵌套调用链所调用。其 本身也可以调用其它类程或管程。 类程可以看作子程序概念的扩充。
操作系统的构件(11)采用进程、管程、类程实现的操作系统 进程执行过程中若请求使用共享资源, 可以调用管程;若要控制私有资源操作, 可以调用类程,这样便于使用高级语言 来书写操作系统。 1975年,汉森成功地在PDP 11/45机上实 现了:单用户操作系统Solo、处理小作 业作业流系统和过程控制实时调度系统 等三个层次管程结构的操作系统。
操作系统体系结构分类 整体式结构 层次式结构 虚拟机结构 客户服务器及微内核结构