资源预览内容
第1页 / 共22页
第2页 / 共22页
第3页 / 共22页
第4页 / 共22页
第5页 / 共22页
第6页 / 共22页
第7页 / 共22页
第8页 / 共22页
第9页 / 共22页
第10页 / 共22页
亲,该文档总共22页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
第十一章 操作系统设计n操作系统设计目标n操作系统基本内核n操作系统体系结构n基于公共变量的结构n基于消息传递的结构n微内核结构n操作系统设计方法n模块接口法n核扩充法n层次化方法n面向对象方法11.1 操作系统设计目标n正确性n高效性n系统效率nTu: 执行用户程序所占时间nTsu: 执行操作系统程序为用户服务所占时间nTsm: 执行操作系统程序做系统管理所占时间n可维护性n易读,易修改,易裁减,易扩充n可移植性11.2 操作系统基本内核n内核成分n中断处理(非系统调用)n原语管理n处理机调度中断处理原语管理处理机调度11.3 操作系统体系结构n操作系统组成成分n主动成分:进程,线程n被动成分:模块,对象n操作系统体系结构n基于共享变量的体系结构n基于消息通讯的体系结构n微内核结构成分间的关系主动主动消 息主动主动公共变量1. 主动-主动2. 主动-被动主动主动被动主动被动被动成分间的关系被动-被动被动主动主动主动被动被动被动被动11.3.1 基于共享变量的体系结构共享变量被动被动被动被动主动主动.优点:效率高缺点:不适合分布11.3.2 基于消息通讯的体系结构主动主动主动主动.基本内核高级通讯原语优点:适合分布缺点:效率不高11.3.3 11.3.3 微内核结构微内核结构文 件 系 统设 备 驱 动虚 拟 存 储进 程 控 制应 用 程 序应 用 程 序微内核 (Micro-kernel)硬件微内核(micro-kernel)是体积很小的内核,只包括操作 系统中绝对必要的成分,其它与应用有关的系统功能 以进程或线程模式在目态执行 .微内核组成微内核组成l处理机调度 l基本中断处理程序 l同步机制 l基本内存管理 l进程通讯原语 l电源管理 优缺点优缺点l优点体积小,正确性健壮性容易保障 适应性好,灵活性强,应用面广 l缺点 实现效率低 11.4 操作系统设计方法1. 模块接口法功能1:模块1功能2:模块2 .功能n:模块nM1M2M4M9M6M7M8M5M3优点:高效缺点:正确性难于保障基本内核硬件扩充1扩充2OS1OS2特点:适应性好Eg. RC4000 P.B.Hansen2. 核扩充法3. 层次化方法E.W. Dijkstra分若干层层间单向依赖(全序,半序)Example system: THEM1M2M4M9M6M7M8M5M3层次化设计的实现1. 确定设计目标(An)2. 确定宿主系统(A0)3. 层次设计(1) 自底向上(bottom-up) (3) 混合策略A0,A1,A2,An-1,An A0,A1,A2,An-1,An优点:易于调试缺点:可能偏离设计目标(2) 自顶向下(top-down)An,An-1,An-2,A2,A1,A0优点:无偏差缺点:调试困难(仿真)4. 分层原则(1) 与界面有关的放在高层(2) 与硬件有关的放在低层(3) 并发控制放较低层(4) 其它放在中层分层实例6层5层4层3层2层0层1层系统调用(OS API)宿住系统中断处理原语管理内存管理 设备管理 虚拟存储 文件管理 进程(线程)管理 高级通讯 SPOOLing系统 作业调度 终端命令处理机调度5. 面向对象设计方法Building Operating systems with objects + threadsBenefits:(1) Better organization/structure of inherent complexityinheritance, containment,.(2) Reduced development effort through reuse(3) More extensible and maintainable systemExample systems:Windows2000/XP11.5 系统举例Windows2000n基本组成n(1) 硬件抽象层(HAL):体现硬件无关性可加载 的核心模块HAL.dll,掩盖了与硬件有关的细节, 例如I/O接口、中断控制等n(2) 核心(kernel):由操作系统中最常用、最基础 的构件组成其中包括调度、上下文切换、中断处 理、异步过程调用(APC)、延迟过程调用(DPC)、 多处理机同步等内核常住内存n(3) 执行体(Executive):是Windows2000操作 系统的主体,包括进程管理器、虚拟内存管理器、 安全引用管理器、I/O管理器、本地过程调用等 其中I/O管理包含了所有与外部打交道的成分,如 文件、网络等.Windows2000/XPWindows2000/XP设计特点设计特点l基于服务 由NT发展而来lC/S模型,RPC,LPC,DPCl关于微内核 最初:NT微内核目前:不是纯微内核结构l文件、虚拟存储等已被放入核心l关于面向对象 执行体采用O2设计原则 大部分代码非O2语言编写l数据对用户模式访问是公开的或数据访问是共享的或受限 制时才使用对象 OS/2应用 Win32应用 OS/2子系统 系统级线程 Win32子系统 POSIX子系统 POSIX应用 系统服务 执行体 用户态系统态对象 管理器 安全 访问控制 进程 管理器 虚拟存 储管理器 本地 过程调用 核心 HAL 文件系统 缓存管理 设备驱动 网络管理I/O管理器 硬件 Windwso2000/XP体系结构 对象头部属性 对象体 对象名(Object name) 对象目录(directory in which object live) 安全描述字(access security descriptor) 配额使用价格(resource quota charges) 打开把柄记数(open handle counter) 打开把柄数据库(open handle database) 永久/临时(permanenttemporary) 核心/用户模式(kernel/user mode) 访问记数(reference counts) 对象类型指针(type object pointer)对象体(Object body) Windows2000/XP对象
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号