欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    Windows操作系统-体系结构(一).ppt

    • 资源ID:34131712       资源大小:850KB        全文页数:48页
    • 资源格式: PPT        下载积分:20金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要20金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    Windows操作系统-体系结构(一).ppt

    2操作系统结构设计操作系统结构设计 操作系统设计有着不同于一般应用系统设操作系统设计有着不同于一般应用系统设计的特征:计的特征:复杂程度高复杂程度高研制周期长研制周期长正确性难以保证正确性难以保证 解决途径:解决途径:良好的操作系统结构良好的操作系统结构先进的开发方法和工程化的管理方法先进的开发方法和工程化的管理方法高效的开发工具高效的开发工具 操作系统结构设计操作系统结构设计3操作系统的设计目标操作系统的设计目标 可靠性:正确性和健壮性可靠性:正确性和健壮性 高效性:提高系统的运行效率高效性:提高系统的运行效率 易维护性:易读、易扩充、易剪裁、易修改性易维护性:易读、易扩充、易剪裁、易修改性 易移植性:一次开发,多处使用易移植性:一次开发,多处使用 安全性:计算机软件系统安全性的基础安全性:计算机软件系统安全性的基础 可适应性可适应性 简明性简明性 %100smsuusuuTTTTT操作系统结构设计操作系统结构设计4Windows的设计目标的设计目标 总原则:市场需求总原则:市场需求 驱动驱动 设计目标设计目标 需求:需求:提供一个真提供一个真3232位抢占式可重入的虚拟内存操作系统位抢占式可重入的虚拟内存操作系统能够在多种硬件体系结构和平台上运行能够在多种硬件体系结构和平台上运行能够在对称多处理系统上运行并具有良好的可伸缩性能够在对称多处理系统上运行并具有良好的可伸缩性优秀的分布式计算平台,既可作为网络客户,又可作优秀的分布式计算平台,既可作为网络客户,又可作为网络服务器为网络服务器可运行多数现有可运行多数现有1616位位MS-DOSMS-DOS和和Microsoft Windows 3.1 Microsoft Windows 3.1 应用程序应用程序符合政府对符合符合政府对符合POSLX 1003.1POSLX 1003.1的要求的要求符合政府和企业对操作系统安全性的要求符合政府和企业对操作系统安全性的要求支持支持UnicodeUnicode,适应全球市场的需要,适应全球市场的需要 操作系统结构设计操作系统结构设计5 可扩充性可扩充性当市场需求变化时,代码必须易于扩当市场需求变化时,代码必须易于扩充改动充改动 可移植性可移植性系统必须能够在多种硬件体系结构中系统必须能够在多种硬件体系结构中运行和相对简单地移入新的体系结构运行和相对简单地移入新的体系结构 可靠性及健壮性可靠性及健壮性系统能防止内部故障及外部侵系统能防止内部故障及外部侵扰造成的损害,应用程序不应该损害操作系统及正扰造成的损害,应用程序不应该损害操作系统及正在运行的其他应用程序在运行的其他应用程序 兼容性兼容性用户界面和用户界面和API应与已有的应与已有的Windows 版本兼容版本兼容 性能性能系统应该在每一种硬件平台上尽可能快地系统应该在每一种硬件平台上尽可能快地响应响应Windows的设计目标的设计目标操作系统结构设计操作系统结构设计6操作系统的设计阶段操作系统的设计阶段 功能设计:操作系统应具备哪些功能功能设计:操作系统应具备哪些功能 算法设计:选择和设计满足系统功能的算法设计:选择和设计满足系统功能的算法和策略,并分析和估算其效能算法和策略,并分析和估算其效能 结构设计:选择合适的操作系统结构结构设计:选择合适的操作系统结构 按照系统的功能和特性要求,选择合适的按照系统的功能和特性要求,选择合适的结构,使用相应的结构设计方法将系统逐步结构,使用相应的结构设计方法将系统逐步地分解、抽象和综合,使操作系统结构清晰、地分解、抽象和综合,使操作系统结构清晰、简单、可靠、易读、易修改,而且使用方便,简单、可靠、易读、易修改,而且使用方便,适应性强适应性强操作系统结构设计操作系统结构设计7操作系统结构操作系统结构操作系统结构设计操作系统结构设计操作系统是一种大型软件操作系统是一种大型软件, 为了研制操作系统,为了研制操作系统,必须分析它的体系结构必须分析它的体系结构-也就是要弄清楚如何也就是要弄清楚如何把这一大型软件划分成若干较小的模块以及这把这一大型软件划分成若干较小的模块以及这些模块间有着怎样的接口。些模块间有着怎样的接口。 模块组合结构模块组合结构层次结构层次结构虚拟机结构虚拟机结构微内核结构微内核结构8几种常见的操作系统结构几种常见的操作系统结构 模块组合结构模块组合结构根据功能划分系统中的模块根据功能划分系统中的模块优点优点结构紧密,接口简单直接,系统效率高结构紧密,接口简单直接,系统效率高操作系统结构设计操作系统结构设计9 模块组合结构模块组合结构缺点缺点模块间转接随便模块间转接随便数据基本上作为全程量处理数据基本上作为全程量处理常常关中断,系统的并发性难以提高常常关中断,系统的并发性难以提高操作系统结构设计操作系统结构设计几种常见的操作系统结构几种常见的操作系统结构10 层次结构层次结构把操作系统的所有功能模块按功能的调用次序,把操作系统的所有功能模块按功能的调用次序,分别排列成若干层,各层之间的模块只能是单分别排列成若干层,各层之间的模块只能是单向依赖或单向调用的关系向依赖或单向调用的关系 E.W.Dijkstra的的THE系统:系统:1 12 23 34 45 5处理器分配和多道程序内存和磁盘管理操作员进程通信输入/输出管理用户程序操作员 0 0操作系统结构设计操作系统结构设计几种常见的操作系统结构几种常见的操作系统结构11F层次结构的特点层次结构的特点分解成许多功能单一的模块,各模块之间有分解成许多功能单一的模块,各模块之间有清晰的组织结构和依赖关系清晰的组织结构和依赖关系具有更高的可读性和可适应性具有更高的可读性和可适应性层次结构是单向依赖的,上层模块建立在下层次结构是单向依赖的,上层模块建立在下层基础上层基础上很容易增加或替换掉一层而不影响其它层次很容易增加或替换掉一层而不影响其它层次便于修改、扩充便于修改、扩充 操作系统结构设计操作系统结构设计几种常见的操作系统结构几种常见的操作系统结构12F层次结构的层间关系层次结构的层间关系全序全序 半序半序第第3 3层层第第2 2层层第第1 1层层第第0 0层层操作系统结构设计操作系统结构设计几种常见的操作系统结构几种常见的操作系统结构13F分层原则分层原则为了增加操作系统的可适应性,并且便于将操作系统为了增加操作系统的可适应性,并且便于将操作系统移植到其它机器上,必须把与机器特点紧密相关的软移植到其它机器上,必须把与机器特点紧密相关的软件,如中断处理,输入输出管理等放在紧靠硬件的最件,如中断处理,输入输出管理等放在紧靠硬件的最低层。低层。为了便于操作系统从一种操作方式转为了便于操作系统从一种操作方式转 变到另一种操变到另一种操作方式,通常把多种操作方式共同使用的基本部分放作方式,通常把多种操作方式共同使用的基本部分放在内层,而把随着这些操作方式而改变的部分放在外在内层,而把随着这些操作方式而改变的部分放在外层。层。为了给进程的活动提供必要的环境和条件,因此必须为了给进程的活动提供必要的环境和条件,因此必须要有一部分软件要有一部分软件系统调用的各功能,来为进程提系统调用的各功能,来为进程提供服务,通常这些功能模块(各系统调用功能)构成供服务,通常这些功能模块(各系统调用功能)构成操作系统内核,放在系统的内层。操作系统内核,放在系统的内层。操作系统结构设计操作系统结构设计几种常见的操作系统结构几种常见的操作系统结构14操作系统结构设计操作系统结构设计虚拟机结构虚拟机结构 系统的核心系统的核心 -虚拟机监控程序虚拟机监控程序(VM) VM/370在裸机上运行并且具在裸机上运行并且具备了多道程序功能。该系统备了多道程序功能。该系统向上层提供了若干台虚拟机。这些虚拟机仅仅是精确复制的向上层提供了若干台虚拟机。这些虚拟机仅仅是精确复制的裸机硬件裸机硬件, 包含:核心态用户态,包含:核心态用户态,IO功能,中断,及其功能,中断,及其它真实硬件所具有的全部内容。它真实硬件所具有的全部内容。 几种常见的操作系统结构几种常见的操作系统结构15操作系统结构设计操作系统结构设计虚拟机结构虚拟机结构 由于每台虚拟机都与裸机由于每台虚拟机都与裸机相同,所以每台虚拟机可相同,所以每台虚拟机可以运行一台裸机所能够运以运行一台裸机所能够运行的任何类型操作系统。行的任何类型操作系统。 会话监控系统会话监控系统(CMS)程序在执行系统调用时,它的系统调用陷入其虚拟机中的操程序在执行系统调用时,它的系统调用陷入其虚拟机中的操作系统。然后作系统。然后CMS发出硬件发出硬件IO指令,在虚拟机者执行为指令,在虚拟机者执行为该系统调用所需的其它操作。这些该系统调用所需的其它操作。这些IO指令被指令被VM370捕捕获,作为对真实硬件模拟的一部分,获,作为对真实硬件模拟的一部分,VM370随后就执行随后就执行这些指令。这些指令。 几种常见的操作系统结构几种常见的操作系统结构16微内核结构微内核结构 CMU的的Mach、早期的、早期的Windows NT 非常适宜于应用在网络环境下,应用于非常适宜于应用在网络环境下,应用于分布式处理的计算环境中分布式处理的计算环境中 由两大部分组成由两大部分组成 : “微微”内核内核 服务进程服务进程操作系统结构设计操作系统结构设计几种常见的操作系统结构几种常见的操作系统结构17微内核微内核运行在核心态的内核提供所有操作运行在核心态的内核提供所有操作系统基本都具有的那些操作,包括系统基本都具有的那些操作,包括线程调度、虚拟存储、消息传递、线程调度、虚拟存储、消息传递、设备驱动以及内核的原语操作集和设备驱动以及内核的原语操作集和中断处理等。这些部分通常采用层中断处理等。这些部分通常采用层次结构并且只提供了一个很小的功次结构并且只提供了一个很小的功能集合,通常称为微内核。能集合,通常称为微内核。微内核结构微内核结构操作系统结构设计操作系统结构设计服务进程服务进程运行在用户态的并以客户运行在用户态的并以客户/服务器方式运行的进程。操作系统所服务器方式运行的进程。操作系统所有的其它部分被分成若干个相对独立的服务进程,提供各种系有的其它部分被分成若干个相对独立的服务进程,提供各种系统功能、文件系统服务以及网络服务等。客户进程与服务器进统功能、文件系统服务以及网络服务等。客户进程与服务器进程之间使用消息进行通信。程之间使用消息进行通信。几种常见的操作系统结构几种常见的操作系统结构18主要优点主要优点 机制与策略分离机制与策略分离机制机制(mechanism)-任务在系统中完成的任务在系统中完成的方法方法策略策略(policy)-决定应该执行哪个任务决定应该执行哪个任务,何何时执行等等时执行等等 可靠可靠 灵活灵活 适合分布式计算的需求适合分布式计算的需求缺点缺点 效率较低效率较低微内核结构微内核结构操作系统结构设计操作系统结构设计几种常见的操作系统结构几种常见的操作系统结构19Windows操作系统设计模型操作系统设计模型 融合了分层操作系统和微内核操作系统的设融合了分层操作系统和微内核操作系统的设计思想计思想 Windows通过硬件机制实现了核心态以及用通过硬件机制实现了核心态以及用户态两个特权级别。对性能影响很大的操作户态两个特权级别。对性能影响很大的操作系统组件运行在核心态。核心内没有保护。系统组件运行在核心态。核心内没有保护。 设计充分体现了机制与策略分离的思想设计充分体现了机制与策略分离的思想20 Windows的核心态组件使用了面向对象的设计的核心态组件使用了面向对象的设计原则原则 出于可移植性以及效率因素的考虑,大部分代出于可移植性以及效率因素的考虑,大部分代码使用了基于码使用了基于C语言的对象实现。语言的对象实现。 Windows的很多系统服务运行在核心态,这使的很多系统服务运行在核心态,这使得得Windows更加高效,而且也是相当稳定的。更加高效,而且也是相当稳定的。 Windows操作系统设计模型操作系统设计模型Windows操作系统设计模型操作系统设计模型21可移植性的获得两种手段两种手段 分层的设计。依赖于处理器体系结构或平台的系统底分层的设计。依赖于处理器体系结构或平台的系统底层部分被隔离在单独的模块之中,系统的高层可以被层部分被隔离在单独的模块之中,系统的高层可以被屏蔽在千差万别的硬件平台之外。提供操作系统可移屏蔽在千差万别的硬件平台之外。提供操作系统可移植性的两个关键组件是植性的两个关键组件是HAL和内核。依赖于体系结构和内核。依赖于体系结构的功能在内核中实现,在相同体系结构中,因计算机的功能在内核中实现,在相同体系结构中,因计算机而异的功能在而异的功能在HAL中实现。中实现。 Windows大量使用高级语言大量使用高级语言执行体、设备驱动程执行体、设备驱动程序等用序等用C语言编写,图形用户界面用语言编写,图形用户界面用C+编写。只有编写。只有那些必须和系统硬件直接通信的操作系统部分,或性那些必须和系统硬件直接通信的操作系统部分,或性能极度敏感的部分是用汇编语言编写的。汇编语言代能极度敏感的部分是用汇编语言编写的。汇编语言代码分布集中且少。码分布集中且少。 Windows操作系统设计模型操作系统设计模型Windows操作系统设计模型操作系统设计模型22对称多处理支持对称多处理支持 非对称多处理非对称多处理(Asymmetric Multiprocessing, ASMP):又称主从模式又称主从模式(Master-slave mode)。 主处理器:只有一个,运行主处理器:只有一个,运行OS。管理整个系统的资源,。管理整个系统的资源,为从处理器分配任务;为从处理器分配任务; 从处理器:可有多个,执行应用程序或从处理器:可有多个,执行应用程序或I/O处理。处理。 特点:不同性质任务的负载不均,可靠性不够高,不易移特点:不同性质任务的负载不均,可靠性不够高,不易移植(通常要求硬件也是非对称的)。植(通常要求硬件也是非对称的)。 对称多处理对称多处理(Symmetric Multiprocessing, SMP): 操作系统交替在各个处理器上执行。任务负载较为操作系统交替在各个处理器上执行。任务负载较为平均,性能调节容易平均,性能调节容易傻瓜式傻瓜式Windows操作系统设计模型操作系统设计模型Windows操作系统设计模型操作系统设计模型23对称多处理支持对称多处理支持Windows操作系统设计模型操作系统设计模型Windows操作系统设计模型操作系统设计模型24Windows操作系统设计模型操作系统设计模型对称多处理支持对称多处理支持Windows操作系统设计模型操作系统设计模型 Windows是一个支持是一个支持SMP的操作系统,操的操作系统,操作系统本身和用户线程可以在任何处理器作系统本身和用户线程可以在任何处理器上运行上运行不存在主处理器不存在主处理器 不同版本支持的处理器数目不同:不同版本支持的处理器数目不同: Professional2 Server4 Advanced Server8 Datacenter Server3225系统支撑处理器系统支持进程服务进程用户程序环境子系统子系统动态链接库用户态用户态核心态核心态硬件抽象层(HAL)执行体核心设备驱动程序图形引擎Windows的体系结构的体系结构系统支持进程服务进程用户程序环境子系统子系统动态链接库执行体内核设备驱动程序硬件抽象层(HAL)窗口与图形26硬件抽象层(硬件抽象层(HAL) HAL=Hardware Abstraction Layer HAL是一个核心态模块是一个核心态模块(HAL.DLL),),它为运行它为运行Windows的硬件平台提供低级接口。的硬件平台提供低级接口。 HAL隐藏各种与硬件有关的细节,例如隐藏各种与硬件有关的细节,例如I/O接口、接口、中断控制器以及多处理器通信机制等中断控制器以及多处理器通信机制等 实现多种硬件平台上的可移植性实现多种硬件平台上的可移植性Windows操作系统体系结构操作系统体系结构27硬件抽象层(硬件抽象层(HAL)在在Windows发行介质上有许多发行介质上有许多HAL:Hal.dll标准标准PCHalsmp.dll多处理器多处理器PCHalsp.dll Compaq SystemPro 安装时根据硬件平台选择的模块复制到系统中,安装时根据硬件平台选择的模块复制到系统中,并改名为并改名为Hal.dllWindows操作系统体系结构操作系统体系结构28硬件抽象层(硬件抽象层(HAL)为了维护可移植性,为了维护可移植性,Windows内部组件和用户编写内部组件和用户编写的设备驱动程序并不直接访问硬件,而是通过调用的设备驱动程序并不直接访问硬件,而是通过调用Hal.dll中的例程。中的例程。READ_PORT_XXXWRITE_PORT_XXXREAD_PORT_BUFFER_XXXWRITE_PORT_ BUFFER_XXXREAD_REGISTER_XXXWRITE_ REGISTER_XXXREAD_ REGISTER_BUFFER_XXXWRITE_ REGISTER_ BUFFER_XXXXXXUCHAR、USHORT、ULONG读(写)读(写)I/O端口端口从连续的从连续的I/O端口读端口读(写)一组数据(写)一组数据读(写)内存映射读(写)内存映射的设备寄存器的设备寄存器Windows操作系统体系结构操作系统体系结构29设备驱动程序设备驱动程序 可加载的核心态模块可加载的核心态模块 I/O系统和相关硬件之系统和相关硬件之间的接口间的接口 WDM=Windows Driver Model 设备驱动程序的分类设备驱动程序的分类 硬件设备驱动程序操作硬件。硬件设备驱动程序操作硬件。 文件系统驱动程序接受面向文件的文件系统驱动程序接受面向文件的I/O请求,请求,并把它们转化为对特殊设备的并把它们转化为对特殊设备的I/O请求。请求。 过滤器驱动程序截取过滤器驱动程序截取I/O并在传递并在传递I/O到下一层到下一层之前执行某些特定处理。之前执行某些特定处理。 Windows操作系统体系结构操作系统体系结构30内核内核 NTOSKRNL.EXE的下层的下层 内核是内核是对处理器体系结构的抽象,将执行体与处理器体对处理器体系结构的抽象,将执行体与处理器体系结构的差异相隔离,保证系统的可移植性。大多数代系结构的差异相隔离,保证系统的可移植性。大多数代码用码用C编写,部分依赖于硬件体系结构的代码用汇编编写编写,部分依赖于硬件体系结构的代码用汇编编写 功能功能 线程安排和调度线程安排和调度 陷阱处理和异常调度陷阱处理和异常调度 中断处理和调度中断处理和调度 多处理器同步多处理器同步 供执行体使用的基本内核对象供执行体使用的基本内核对象 始终运行在核心态,代码精简,可移植性好。除了中断始终运行在核心态,代码精简,可移植性好。除了中断服务例程服务例程,正在运行的线程不能抢先内核。正在运行的线程不能抢先内核。Windows操作系统体系结构操作系统体系结构31 内核对象内核对象内核实现了一组简单的对象,称为内核对象,以帮内核实现了一组简单的对象,称为内核对象,以帮助内核控制中心处理并支持执行体对象的创建。助内核控制中心处理并支持执行体对象的创建。 控制对象控制对象包括异步过程调用(包括异步过程调用(APC,asynchronous procedure call)对象、延迟过程调)对象、延迟过程调用(用(DPC,deferred procedure call)对象和几个)对象和几个由由I/O系统使用的对象,例如中断对象。系统使用的对象,例如中断对象。 调度程序对象调度程序对象负责同步操作并影响线程调度。负责同步操作并影响线程调度。调度程序对象包括内核线程、互斥体(调度程序对象包括内核线程、互斥体(Mutex)、)、事件(事件(Event)、内核事件对、信号量)、内核事件对、信号量(Semaphore)、定时器和可等待定时器)、定时器和可等待定时器 内核内核Windows操作系统体系结构操作系统体系结构32 硬件支持硬件支持 使得执行体和设备驱动程序同硬件无关使得执行体和设备驱动程序同硬件无关 实现手段:一组在多个体系结构上可移实现手段:一组在多个体系结构上可移植的、同语义的接口植的、同语义的接口 内核也有部分代码不具有移植性内核也有部分代码不具有移植性 支持虚拟支持虚拟8086模式的代码,用以运行一些古模式的代码,用以运行一些古老的老的16位位DOS程序程序 高速缓存管理高速缓存管理 描述表切换描述表切换内核内核Windows操作系统体系结构操作系统体系结构33执行体执行体Windows操作系统体系结构操作系统体系结构 执行体(执行体(Executive)是)是NTOSKRNL.EXE的的上上层层 执行体应该从两种角度来理解:执行体应该从两种角度来理解:1.执行体提供了一组函数调用执行体提供了一组函数调用2.执行体本身由若干组件组成执行体本身由若干组件组成34执行体执行体 提供的函数调用提供的函数调用 从用户态导出并且可以调用的函数。这些函数的接从用户态导出并且可以调用的函数。这些函数的接口在口在NTDLL.DLL中。通过中。通过Win32API或一些其他的或一些其他的环境子系统可以对它们进行访问。环境子系统可以对它们进行访问。 从用户态导出并且可以调用的函数,但当前通过任从用户态导出并且可以调用的函数,但当前通过任何文档化的子系统函数都不能使用。何文档化的子系统函数都不能使用。 在在Windows DDK中已经导出并且文档化的核心态中已经导出并且文档化的核心态调用的函数。调用的函数。 在核心态组件中调用但没有文档化的函数。例如在在核心态组件中调用但没有文档化的函数。例如在执行体内部使用的内部支持例程。执行体内部使用的内部支持例程。 组件内部的函数。组件内部的函数。 Windows操作系统体系结构操作系统体系结构35 包含的功能实体包含的功能实体 进程和线程管理器进程和线程管理器创建及中止进程和线程。对进程和线程创建及中止进程和线程。对进程和线程的基本支持在的基本支持在Windows 2000内核中实现,而执行体给这些内核中实现,而执行体给这些低级对象添加附加语义和功能。低级对象添加附加语义和功能。 虚拟内存管理器虚拟内存管理器实现实现“虚拟内存虚拟内存”。内存管理器也为高速。内存管理器也为高速缓存管理器提供基本的支持。缓存管理器提供基本的支持。 安全引用监视器安全引用监视器在本地计算机上执行安全策略。它保护了在本地计算机上执行安全策略。它保护了操作系统资源,执行运行时对象的保护和监视。操作系统资源,执行运行时对象的保护和监视。 I/O管理器管理器执行独立于设备的输入执行独立于设备的输入/输出,并进一步处理调用输出,并进一步处理调用适当的设备驱动程序。适当的设备驱动程序。 高速缓存管理器高速缓存管理器通过将最近引用的磁盘数据驻留在主内存通过将最近引用的磁盘数据驻留在主内存中来提高文件中来提高文件I/O的性能,并且通过在把更新数据发送到磁的性能,并且通过在把更新数据发送到磁盘之前将它们在内存中保持一个短的时间来延缓磁盘的写盘之前将它们在内存中保持一个短的时间来延缓磁盘的写操作,这样就可以实现快速访问。操作,这样就可以实现快速访问。Windows 2000/XP操作系统体系结构操作系统体系结构执行体执行体36 对象管理器对象管理器:创建、管理以及删除:创建、管理以及删除Windows的执行体的执行体对象和用于代表操作系统资源的抽象数据类型,例如对象和用于代表操作系统资源的抽象数据类型,例如进程、线程和各种同步对象。进程、线程和各种同步对象。 本地过程调用(本地过程调用(LPC,Local Procedure Call)机制)机制,在同一台计算机上的客户进程和服务进程之间传递信在同一台计算机上的客户进程和服务进程之间传递信息。息。LPC是一个灵活的、经过优化的是一个灵活的、经过优化的“远程过程调用远程过程调用”(RPC,Remote Procedure Call)版本。)版本。 一组广泛的公用运行时函数一组广泛的公用运行时函数,例如字符串处理、算术,例如字符串处理、算术运算、数据类型转换和完全结构处理。运算、数据类型转换和完全结构处理。 执行体支持例程执行体支持例程,例如系统内存分配(页交换区和非,例如系统内存分配(页交换区和非页交换区)、互锁内存访问和两种特殊类型的同步对页交换区)、互锁内存访问和两种特殊类型的同步对象:资源和快速互斥体。象:资源和快速互斥体。 执行体执行体包含的功能实体包含的功能实体Windows操作系统体系结构操作系统体系结构37NTDLL 子系统动态链接库子系统动态链接库 功能功能 提供系统调用入口提供系统调用入口 为子系统、子系统动态链接库、及其他本为子系统、子系统动态链接库、及其他本机映像提供内部支持函数机映像提供内部支持函数 NTDLL也包含许多支持函数,例如映像也包含许多支持函数,例如映像加载程序、堆管理器和加载程序、堆管理器和Win32子系统进程子系统进程通信函数以及通用运行库。通信函数以及通用运行库。 用户态异步过程调用(用户态异步过程调用(APC)调度器和异)调度器和异常调度器。常调度器。 Windows操作系统体系结构操作系统体系结构38环境子系统环境子系统 将基本的执行体系统服务的将基本的执行体系统服务的某些子集以特定的形态展示某些子集以特定的形态展示给应用程序给应用程序 三种环境子系统:三种环境子系统:POSIX、OS/2和和Win32(OS/2 只能用只能用于于x86系统)系统) Win32子系统必须始终处于运行状态,其他两个子子系统必须始终处于运行状态,其他两个子系统只是在需要时才被启动,系统只是在需要时才被启动,Win32子系统是子系统是Windows运行的基本条件之一。运行的基本条件之一。 函数调用不能在不同子系统之间混用,因此每一个函数调用不能在不同子系统之间混用,因此每一个可执行的映像都受限于唯一的子系统可执行的映像都受限于唯一的子系统Windows操作系统体系结构操作系统体系结构39 Win32子系统子系统 Win32环境子系统进程(环境子系统进程(CSRSS.EXE): 包括对下列功能的包括对下列功能的支持:控制台(文本)窗口、创建及删除进程与线程、支支持:控制台(文本)窗口、创建及删除进程与线程、支持持16位位DOS虚拟机(虚拟机(VDM)进程的部分。)进程的部分。 Win32子系统动态链接库子系统动态链接库(User32.dll、Kernel32.dll、GDI32.dll),将文档化的,将文档化的Win32 API函数转化为适当的非文函数转化为适当的非文档化的核心系统服务档化的核心系统服务(调用调用NTOSKRNL.EXE和和WIN32.SYS) 核心态设备驱动程序(核心态设备驱动程序(WIN32K.SYS):): 窗口管理器窗口管理器(User): 控制窗口显示,管理屏幕输出,实现控制窗口显示,管理屏幕输出,实现用户界面用户界面 图形设备接口(图形设备接口(GDI,Graphics Device Interfaces) 图形设备驱动程序,包括依赖于硬件的图形显示驱动程序、图形设备驱动程序,包括依赖于硬件的图形显示驱动程序、打印机驱动程序和视频小型端口驱动程序。打印机驱动程序和视频小型端口驱动程序。环境子系统环境子系统Windows操作系统体系结构操作系统体系结构40环境子系统环境子系统 Win32子系统子系统Win32应用程序应用程序(client)CSRSS(server)Win32子系统子系统DLL子子系统系统动态链接库(动态链接库(NTDLL)用户态用户态核心态核心态WIN32K.SYSLPC机制机制Windows操作系统体系结构操作系统体系结构41环境子系统环境子系统当一个应用程序调用子系统动态链接库中的函数时,可能会当一个应用程序调用子系统动态链接库中的函数时,可能会出现下面三种情况之一:出现下面三种情况之一: 函数完全在子系统动态链接库的用户态部分中实现,这时并没有函数完全在子系统动态链接库的用户态部分中实现,这时并没有消息发送到环境子系统进程,也没有调用执行体服务。函数在用户消息发送到环境子系统进程,也没有调用执行体服务。函数在用户态中执行,结果返回到调用者。态中执行,结果返回到调用者。例如:例如:GetCurrentProcessId 函数需要一个或多个对执行体函数的调用。函数需要一个或多个对执行体函数的调用。例如:例如:ReadFile,由子系统动态链接库调用由子系统动态链接库调用Windows 系统服务系统服务NtReadFile 函数要求某些工作在环境子系统进程中进行。在这种情况下,将函数要求某些工作在环境子系统进程中进行。在这种情况下,将产生一个客户产生一个客户/服务器请求到环境子系统,其中的一个消息将被发送服务器请求到环境子系统,其中的一个消息将被发送到子系统去执行某些操作,这时使用执行体的到子系统去执行某些操作,这时使用执行体的“本地过程调用本地过程调用”(LPC)机制。然后子系统动态链接库在消息返回给调用者之前会)机制。然后子系统动态链接库在消息返回给调用者之前会一直等待应答。一直等待应答。例如:例如:CreatProcess将涉及将涉及2和和3两种情况两种情况 Win32子系统子系统Windows操作系统体系结构操作系统体系结构42 POSIX子系统子系统 设计的强迫性目标设计的强迫性目标 Windows 2000实现了实现了POSIX.1,功能局限,功能局限,用处不大用处不大 Windows XP/Server 2003实际上并不包含实际上并不包含POSIX子系统子系统 Windows Services for UNIX/Interix是一个独是一个独立于操作系统的软件,它是原立于操作系统的软件,它是原POSIX子系统子系统的超集,提供了对的超集,提供了对POSIX的支持的支持环境子系统环境子系统Windows操作系统体系结构操作系统体系结构43 POSIX子系统子系统环境子系统环境子系统Windows操作系统体系结构操作系统体系结构44系统支持进程和服务进程系统支持进程和服务进程 Idle进程进程 系统进程系统进程 会话管理器会话管理器SMSS Win32子系统子系统CSRSS 登录进程登录进程WINLOGIN 本地安全身份验证服务器本地安全身份验证服务器LSASS 服务控制器服务控制器SERVICES及其相关及其相关的服务进程的服务进程 Windows操作系统体系结构操作系统体系结构45Windows的关键系统组件的关键系统组件Windows操作系统体系结构操作系统体系结构46Windows 9x的体系结构简介的体系结构简介Windows 9x的体系结构简介的体系结构简介 Windows 9x操作系统内核称为虚拟机管理器操作系统内核称为虚拟机管理器(VMM),它的主要工作就是创建,它的主要工作就是创建“虚拟虚拟”机器,机器,这些虚拟机器共享同一个物理机器。这些虚拟机器共享同一个物理机器。 Windows 9x引入虚拟设备驱动程序引入虚拟设备驱动程序(VxD), 其目的其目的就是为了虚化设备,以帮助就是为了虚化设备,以帮助VMM实现每个虚拟实现每个虚拟机器都拥有全部硬件的假象。机器都拥有全部硬件的假象。47Windows 9x的体系结构简介的体系结构简介Windows 9x的体系结构简介的体系结构简介Windows 9x在处理磁盘在处理磁盘操作、通讯口操作、键操作、通讯口操作、键盘操作,等等方面与盘操作,等等方面与Windows NT系列有很大系列有很大不同。不同。Windows 9x以两以两种完全不同的方式为种完全不同的方式为32位应用程序和位应用程序和16位应用位应用程序提供服务。程序提供服务。

    注意事项

    本文(Windows操作系统-体系结构(一).ppt)为本站会员(豆****)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开