9_2007_的操作系统结构设计.ppt

  1. 1、本文档共68页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
9_2007_的操作系统结构设计

第九章 操作系统设计 一、操作系统设计目标 (1)可靠性 正确性 困难:并发性、共享性、随机性(中断) 健壮性(鲁棒性) 操作系统设计目标(续1) (2)高效性 多道程序设计的目标是提高资源利用率,但系统开销加大 Tu:运行目态程序所用的时间 Tsu:运行管态程序为用户服务所用的时间 Tsm:运行管态程序做系统管理工作所用的时间 系统运行效率: ?=(Tu+Tsu) / (Tu+Tsu+Tsm) 操作系统设计目标(续2) (3)易维护 易读性 易扩充性 易修改性 易裁减性 (4)易移植性 (5)安全性 (6)可适应性 (7)简明性 二、操作系统的结构设计 设计一个操作系统主要包括: 功能设计 算法设计 结构设计 接口设计(用户界面、程序接口) 其他设计技术(策略与机制的分离,静态结构与动态结构,自顶向下的实现与自底向上的实现,隐藏硬件细节,间接处理等 ) 结构设计 按照系统的功能和特性要求,选择合适的结构,使用相应的结构设计方法将系统逐步地分解、抽象和综合,使操作系统结构清晰、简单、可靠、易读、易修改,而且使用方便,适应性强 操作系统的结构 整体式结构(单一内核结构) 层次式结构 虚拟机结构 层次管程结构 微内核结构 (1)整体式结构(单一内核结构) 模块接口法,无序模块法,模块组合 确定操作系统的总体功能 分解总功能为若干个子功能(模块) 继续分解,直至每个模块仅包含单一功能 通过接口将所有模块连接,形成一个整体 整体式结构(续1) 整体式结构(续2) 特点:根据功能划分模块 数据基本上作为全局量使用 在系统内部,不同模块的程序之间可以不加控制地互相调用和转移 信息的传递方式可以根据需要随意约定,因而造成模块间的循环调用 整体式结构(续3) 优点:结构紧密 接口简单直接 模块间转接灵活,系统效率高 缺点:由于模块之间可以任意相互调用,各模块互相联系,独立性差,系统结构不清晰 数据作为全局量处理,系统内各模块均可对其进行存取和修改,造成模块间更为隐蔽的关系。使得难于对软件结构作出综合性的理解,难于修改,可靠性、易读性、适应性难以保证 由于模块接口法常以大型表格为中心,为保证数据完整性,往往采用全局封中断的方法,从而限制了系统的并发性 (2)层次式结构 按此模型构造的第一个操作系统是E.W.Dijkstra和他的学生在荷兰开发的THE系统(1968年) 层次式结构(续1) 该系统分为六层: 层次 功能 5 操作员 4 用户程序 3 输入/输出管理 2 操作员-进程通信 1 内存和磁盘管理 0 处理器分配和多道程序 (3)虚拟机结构 虚拟机结构(续1) 虚拟机思想的应用:在奔腾CPU上运行老的MS-DOS程序 Intel在奔腾芯片上提供了一个虚拟8086模式,在此模式下,奔腾机就像一台8086计算机一样,包括1M字节内的16位寻址方式 虚拟机结构(续2) 虚拟8086模式被Windows、OS/2及其他操作系统用于运行MS-DOS程序。程序在虚拟8086模式下启动,执行一般的指令时它们在裸机上运行。但是,当一个程序试图陷入系统来执行一条系统调用时,或者试图执行受保护的I/O操作时,将发生一条虚拟机监控程序的陷入 虚拟机结构(续3) IBM390与Linux: Linux在S/390下有三种实现模式: 本地运行模式:即独立运行模式,Linux可以不依赖S/390自己的任何操作系统完整地运行 逻辑分区运行模式:Linux在S/390的硬件逻辑分区内运行,S/390最大支持15个独立的逻辑分区 VM/ESA模式:把Linux当成一个虚拟机来运行,VM提供虚拟的CPU、I/O子系统和内存资源 虚拟机结构(续4) IBM390与Linux: 用户既可以选择把OS/390与Linux共存,只是简单地共享硬件,也可以将两者设置成客户/服务器模式来应用,非常灵活 (4)层次管程结构 为了控制并发程序设计的复杂性,使并发程序易于理解和易于保证其正确性,人们在吸取模块组合结构和分层结构优点的基础上,不断寻求一种抽象的概念和严格的表示法,从而发展了以数据为中心的模块概念和操作系统的层次管程结构 层次管程结构(续1) 系统按资源管理的观点分解成若干模块,用数据表示抽象系统资源,同时分析了共享资源和专用资源在管理上的差别,按不同的管理方式定义模块的类型和结构,使同步操作相对集中,从而增加了模块的相对独立性 层次管程结构(续2) 从功能和实现相结合的观点出发,从系统中提炼出管程、类程、一般模块和

文档评论(0)

liwenhua00 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档