首页计算机计算机软件计算机操作系统 16 第十二章 操作系统设计.pptx

16 第十二章 操作系统设计.pptx

页数:21页文件大小:108.3 KB来源: 计算机操作系统ppt课件

本课件从可维护性、可移植性与高效性等设计目标出发,说明基本内核的中断处理、原语管理、短程调度与交通控制成分,比较共享变量、消息传递与微内核三类体系结构,以及模块接口、核扩充与层次化设计方法。

第十二章操作系统设计,12.1操作系统设计目标12.2操作系统基本内核12.3操作系统体系;成分之间相互作用
12.1 操作系统设计目标,可维护性:易读,易修改,易裁减,易扩充;可移植性
12.2 操作系统基本内核,内核成分;内核各部分之间关系中断处理原语管理短程调度交通控制
查看本课件的文字版(共 21 页,供检索与复制)

第1页:第十二章操作系统设计

  • 12.1操作系统设计目标12.2操作系统基本内核12.3操作系统体系结构
  • 成分之间相互作用
  • 基于公共变量的结构
  • 基于消息传递的结构
  • 微内核结构12.4操作系统设计方法
  • 模块接口法
  • 核扩充法
  • 层次化方法
  • 面向对象方法

第2页:12.1 操作系统设计目标

  • 可维护性:易读,易修改,易裁减,易扩充
  • 可移植性
  • 易加载性
  • 正确性
  • 高效性
    • 系统开销:运行系统程序、完成系统管理功能所花费的时间与空间。
    • 系统效率Tu:执行用户程序所占时间Tsu:执行操作系统程序为用户服务所占时间Tsm:执行操作系统程序做系统管理所占时间

第3页:12.2 操作系统基本内核

  • 内核成分
    • 中断处理
    • 原语管理
    • 短程调度(低级调度)
    • 交通控制(同步、互斥)
  • 内核各部分之间关系中断处理原语管理短程调度交通控制

第4页:12.3 操作系统体系结构

  • 操作系统组成成分
    • 主动成分:进程,线程
    • 被动成分:模块,对象
  • 基于共享变量的体系结构
  • 基于消息通讯的体系结构
  • 微内核结构

第5页:12.3 操作系统体系结构(续)

  • 主动主动消息主动主动公共变量
  • 1.主动-主动
  • 2.主动-被动主动主动被动主动被动被动

第6页:12.3 操作系统体系结构(续3)

3.被动-被动被动主动主动

第7页:12.3.1 基于共享变量结构共享变量被

:效率高缺点:不适合分布被动被动被动......主动主动...............

第8页:12.3.2 基于消息通讯结构基本内核高

:适合分布缺点:效率不高主动主动.........主动主动.........

第9页:12.3.3 微内核结构文件系统微内核

(Micro-kernel)硬件微内核(micro-kernel)是体积很小的内核,只包括操作系统中绝对必要的成分,其它与应用有关的系统功能以进程或线程模式在目态执行....设备驱动虚拟存储进程控制应用程序应用程序

第10页:@B1@微内核组成

  • 微内核组成
    • 处理机调度
    • 基本中断处理程序
    • 同步机制
    • 内存管理
    • 进程通讯原语
    • 电源管理12.3.3微内核结构
  • 优点
    • 体积小,正确性健壮性容易保障
    • 适应性好,灵活性强,应用面广
  • 缺点:实现效率低

第11页:12.4 操作系统设计方法

1.模块接口法功能1:模块1功能2:模块2………….功能n:模块n优点:高效缺点:正确性难于保障M1M2M4M9M6M7M8M5M3

第12页:12.4 操作系统设计方法(续)

基本内核硬件扩充1扩充2OS1OS2特点:适应性好Eg. RC4000 P.B.Hansen2.核扩充法

第13页:312.4 操作系统设计方法

3.层次化方法E.W. Dijkstra分若干层层间单向依赖(全序,半序)Example system: THEM1M2M4M9M6M7M8M5M

第14页:12.4 操作系统设计方法

  • 层次化设计的实现
    • 确定设计目标(An)
    • 确定宿主系统(A0)
    • 层次设计⑴自底向上(bottom-up) :A0,A1,A2,…,An-1,An优点:易于调试缺点:可能偏离设计目标⑵自顶向下(top-down):An,An-1,An-2,…,A2,A1,A0优点:无偏差缺点:调试困难(仿真)⑶混合策略:A0,A1,A2,…,An-1,An

第15页:12.4 操作系统设计方法(续)

  • 分层原则⑴与界面有关的放在高层⑵与硬件有关的放在低层⑶并发控制放较低层⑷其它放在中层

第16页:12.4 操作系统设计方法(续3)

2.4操作系统设计方法SPOOLing系统作业调度终端命令第6层系统调用(OS API)第5层高级通讯进程控制第4层文件系统虚拟存储第3层设备管理内存管理第2层设备驱动第1层原语管理中断处理交通控制短程调度宿主系统(HAL)第0层分层实例

第17页:12.4 操作系统设计方法(续4)

5.面向对象设计方法Building Operating systems withobjects + threadsBenefits:⑴Better organization/structure of inherent complexityinheritance, encapsulation,...⑵Reduced development effort through reuse⑶More extensible and maintainable systemExample systems:Windows2000/XP

第18页:12.4 操作系统设计方法(续5)

  • 2.5系统举例—Windows2000
  • 基本组成
  • (1)硬件抽象层(HAL):体现硬件无关性.可加载的核心模块HAL.dll,掩盖了与硬件有关的细节,例如I/O接口、中断控制等.
  • (2)核心(kernel):由操作系统中最常用、最基础的构件组成.其中包括调度、上下文切换、中断处理、异步过程调用(APC)、延迟过程调用(DPC)、多处理机同步等.内核常住内存.
  • (3)执行体(Executive):是Windows2000操作系统的主体,包括进程管理器、虚拟内存管理器、安全引用管理器、I/O管理器、本地过程调用等.其中I/O管理包含了所有与外部打交道的成分,如文件、网络等.

第19页:12.4 操作系统设计方法(续6)

  • Windows2000/XP设计特点
    • 基于服务–由NT发展而来
    • C/S模型,RPC,LPC,DPC
    • 关于微内核–最初:NT微内核–目前:不是纯微内核结构
    • 文件、虚拟存储等已被放入核心
    • 关于面向对象–执行体采用O2设计原则–大部分代码非O

第20页:12.4 操作系统设计方法(续7)

OS/2应用Win32应用OS/2子系统系统级线程Win32子系统POSIX子系统POSIX应用系统服务执行体用户态系统态对象管理器安全访问控制进程管理器虚拟存储管理器本地过程调用核心HAL文件系统缓存管理设备驱动网络管理I/O管理器硬件Windwso2000/XP体系结构

第21页:12.4 操作系统设计方法(续8)

对象头部属性对象体对象名(Object name)对象目录(directory in which object live)安全描述字(access security descriptor)配额使用价格(resource quota charges)打开把柄记数(open handle counter)打开把柄数据库(open handle database)永久/临时(permanent/temporary)核心/用户模式(kernel/user mode)访问记数(reference counts)对象类型指针(type object pointer)对象体(Object body)Windows2000/XP对象

顶部目录