OS之操作系统结构设计.ppt

  1. 1、本文档共72页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
对象管理:创建、管理以及删除Windows 2000/XP的执行体对象和用于代表操作系统资源的抽象数据类型,例如进程、线程和各种同步对象。 本地过程调用(LPC,Local Procedure Call)机制,在同一台计算机上的客户进程和服务进程之间传递信息。LPC是一个灵活的、经过优化的“远程过程调用”(RPC,Remote Procedure Call)版本。 一组广泛的公用运行时函数,例如字符串处理、算术运算、数据类型转换和完全结构处理。 执行体支持例程,例如系统内存分配(页交换区和非页交换区)、互锁内存访问和两种特殊类型的同步对象:资源和快速互斥体。 设备驱动程序 可加载的核心态模块 I/O系统和相关硬件之间的接口 使用WDM以及加强的WDM方式 分类 硬件设备驱动程序操作硬件。 文件系统驱动程序接受面向文件的I/O请求,并把它们转化为对特殊设备的I/O请求。 过滤器驱动程序截取I/O并在传递I/O到下一层之前执行某些特定处理。 环境子系统 将基本的执行体系统服务的某些子集以特定的形态展示给应用程序,函数调用不能在不同子系统之间混用,因此每一个可执行的映像都受限于唯一的子系统 三种环境子系统:POSIX、OS/2和Win32(OS/2 只能用于x86系统) Win32子系统必须始终处于运行状态,其他两个子系统只是在需要时才被启动,Win32子系统是Windows 2000/XP运行的基本条件之一 Win32子系统 Win32环境子系统进程CSRSS,包括对下列功能的支持:控制台(文本)窗口、创建及删除进程与线程、支持16位DOS虚拟机(VDM)进程的部分 核心态设备驱动程序(WIN32K.SYS) 图形设备接口(GDI,Graphics Device Interfaces) 子系统动态链接库,它调用NTOSKRNL.EXE和WIN32.SYS将文档化的Win32 API函数转化为适当的非文档化的核心系统服务 图形设备驱动程序,包括依赖于硬件的图形显示驱动程序、打印机驱动程序和视频小型端口驱动程序。 其他混杂的函数,如几种自然语言支持函数 POSIX子系统 设计的强迫性目标 实现了POSIX.1,功能局限,用处不大 Windows XP实际上并不包含POSIX子系统 今后产品的POSIX/UNIX子系统将大大加强 NTDLL 主要用于子系统动态链接库的特殊系统支持库 功能 提供系统调用入口 为子系统、子系统动态链接库、及其他本机映像提供内部支持函数 NTDLL也包含许多支持函数,例如映像加载程序、堆管理器和Win32子系统进程通信函数以及通用运行库 用户态异步过程调用(APC)调度器和异常调度器 系统支持进程 Idle进程 系统进程 会话管理器SMSS Win32子系统CSRSS 登录进程WINLOGIN 本地安全身份验证服务器LSASS 服务控制器SERVICES及其相关的服务进程 复习题 1、在设计操作系统的时候要考虑哪些因素的影响,为什么? 2、一个优秀的操作系统设计应该具备什么样的特点,如何理解这些设计目标?你认为Windows 2000/XP、Linux等操作系统是否具备这些特点,请举例说明。 3、有哪些常见的操作系统的体系结构?Windows 2000/XP和Linux各自采用了什么样的体系结构? 4、请举例说明层次结构法的基本思想以及优缺点。 5、客户机/服务器的操作系统体系结构在分布式系统中使用非常广泛,你认为它能够用于单机环境么? 6、操作系统设计时讲求策略与机制的分离,请用你所熟悉的系统为例,说明这一点。 * 第一点是结构型 第二点总的构成成分分类 运行在核心态的组件包括,内存管理器、高速缓存管理器、对象及安全管理器、网络协议、文件系统(包括网络服务器和重定向程序)和所有线程和进程管理,都运行在核心态 。 机制与策略分离体现很多:比如内核与执行体的关系,内核提供了机制,执行体实现建立于这些机制上的策略,(内核提供线程调度机制、线程管理器则在执行体中) * 面向对象设计原则:它们不能直接访问某个数据结构中由单独组件维护的消息,这些组件只能使用外部的接口传送参数并访问或修改这些数据。 * * * * * * * * * * * * * * * * * * * * 层次管程结构的优点(2): 由于只有进程是系统中并发执行单位 因此可按照系统要求的并发度 设置进程 由于去掉了不必要的平行性 从而减少了系统开销 层次管程结构的局限性(1) 管程概念的一重要特征是 保证模块内数据的完整性 为了保证每一管程所管理的数据的完整性 可采用局部互斥技术,或缩小临界区 但在解决任意管程嵌套调用问题时 仅是局部互斥难于实现 要根据具体情况

文档评论(0)

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

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

1亿VIP精品文档

相关文档