c2_Windows 2000XP的体系结构教学文案.ppt
《c2_Windows 2000XP的体系结构教学文案.ppt》由会员分享,可在线阅读,更多相关《c2_Windows 2000XP的体系结构教学文案.ppt(70页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、c2_Windows 2000XP的体系结构本章要点操作系统的设计目标操作系统的设计目标操作系统的设计阶段操作系统的设计阶段几种常见的操作系统体系结构范型几种常见的操作系统体系结构范型Windows 2000/XPWindows 2000/XP的操作系统模型的操作系统模型Windows 2000/XPWindows 2000/XP的体系结构的体系结构Windows 2000/XPWindows 2000/XP的重要组成部分的重要组成部分Windows 2000/XPWindows 2000/XP的系统机制的系统机制Windows 2000/XPWindows 2000/XP注册表、服务控制与管
2、理注册表、服务控制与管理机制机制Windows 2000/XPWindows 2000/XP的设计目标:的设计目标:可扩充性可扩充性 可移植性可移植性可靠性及坚固性可靠性及坚固性兼容性兼容性性能性能操作系统的设计考虑功能设计:功能设计:操作系统应具备哪些功能操作系统应具备哪些功能 算法设计:算法设计:选择和设计满足系统功能的算法和策选择和设计满足系统功能的算法和策略,并分析和估算其效能略,并分析和估算其效能 结构设计:结构设计:选择合适的操作系统结构选择合适的操作系统结构 操作系统结构设计 按照系统的功能和特性要求,选择合适的结按照系统的功能和特性要求,选择合适的结构,使用相应的结构设计方法将
3、系统逐步地分解、构,使用相应的结构设计方法将系统逐步地分解、抽象和综合,使操作系统结构清晰、简单、可靠、抽象和综合,使操作系统结构清晰、简单、可靠、易读、易修改,而且使用方便,适应性强易读、易修改,而且使用方便,适应性强操作系统体系结构问题程序结构程序结构程序结构的两层含义:程序结构的两层含义:整体结构、局部结构整体结构、局部结构程序的结构良好的准则程序的结构良好的准则软件结构软件结构操作系统体系结构操作系统体系结构大型软件,模块划分、接口定义复杂大型软件,模块划分、接口定义复杂并发性,接口复杂、信息交换频繁并发性,接口复杂、信息交换频繁计算机体系结构日益复杂,应用扩大、使用要求提高计算机体系
4、结构日益复杂,应用扩大、使用要求提高使得操作系统体系结构日趋复杂使得操作系统体系结构日趋复杂几种常见的操作系统结构模块组合结构模块组合结构的特点与适应性模块组合结构的特点与适应性模块间转接随便模块间转接随便数据基本上作为全程量处理数据基本上作为全程量处理常常关中断,系统的并发性难以提高常常关中断,系统的并发性难以提高层次结构层次结构设计方法的核心思想层次结构设计方法的核心思想例如例如E.W.DijkstraE.W.Dijkstra的的THETHE系统:系统:12345处理器分配和多道程序内存和磁盘管理操作员进程通信输入/输出管理用户程序操作员0分层原则分层原则与硬件相关的与硬件相关的最底层最底
5、层计算机具有多操作方式计算机具有多操作方式多操作方式共有的基本部分放多操作方式共有的基本部分放在内层,具体操作方式相关的方在外层;在内层,具体操作方式相关的方在外层;OSOS基于进程的概念,内核放在内层;内层中又分多层,基于进程的概念,内核放在内层;内层中又分多层,公用功能在最内层公用功能在最内层。层次结构的特点层次结构的特点分解成许多功能单一的模块,各模块之间有清晰的组分解成许多功能单一的模块,各模块之间有清晰的组织结构和依赖关系织结构和依赖关系具有更高的可读性和可适应性具有更高的可读性和可适应性层次结构是单向依赖的,上层模块建立在下层基础上,层次结构是单向依赖的,上层模块建立在下层基础上,
6、设计了比较可靠的基础设计了比较可靠的基础很容易增加或替换掉一层而不影响其它层次很容易增加或替换掉一层而不影响其它层次便于修改、扩充便于修改、扩充 层次结构的层间关系全序:同层模块不互相调用,各层简单向全序:同层模块不互相调用,各层简单向半序:有循环半序:有循环第第3 3层层第第2 2层层第第1 1层层第第0 0层层全序半序进程分层结构进程分层结构实现代价较大:实现代价较大:必须设立一个进程控制块,用以保留进程的状态信息,增加必须设立一个进程控制块,用以保留进程的状态信息,增加了内存开销了内存开销进程之间的控制转移、状态保留及信息传送,均由核心去管进程之间的控制转移、状态保留及信息传送,均由核心
7、去管理,时间消耗多,效率下降理,时间消耗多,效率下降系统并发活动过多,调度负担过重,且同步操作过于分散,系统并发活动过多,调度负担过重,且同步操作过于分散,易于造成死锁,影响了系统的安全性易于造成死锁,影响了系统的安全性层次结构的两种类型核心核心层次管程结构层次管程结构进程:并发单位进程:并发单位类程:专用资源的抽象类程:专用资源的抽象 管程:共享资源的抽象管程:共享资源的抽象 一个动态的系统由内核和一组有限个满足规定调用关系一个动态的系统由内核和一组有限个满足规定调用关系的进程的进程P P、类程、类程C C和管程和管程MM构成构成。其中进程是系统中唯一能动的成份,管程和类程都是被其中进程是系
8、统中唯一能动的成份,管程和类程都是被动成份动成份 优点优点采用层次管程结构的系统结构清晰、统一采用层次管程结构的系统结构清晰、统一同步操作相对集中,系统安全性较高同步操作相对集中,系统安全性较高用高级语言书写程序,研制周期短,通过编译技术获用高级语言书写程序,研制周期短,通过编译技术获取更高的灵活性和效率取更高的灵活性和效率只用一种概念描述并发,减少了不必要的并行性,减只用一种概念描述并发,减少了不必要的并行性,减少了系统开销。少了系统开销。缺点:缺点:管程嵌套问题比较难于高效的解决管程嵌套问题比较难于高效的解决不便于管理多个资源和全局性资源不便于管理多个资源和全局性资源 虚拟机结构 如如IB
9、MIBM大型机上的系列操作系统大型机上的系列操作系统基本思想:基本思想:系统应该提供系统应该提供多道程序能力多道程序能力及及一个比裸机有一个比裸机有更方便扩展界面的计算机更方便扩展界面的计算机 。但二者的实现应相互独立。但二者的实现应相互独立特点特点虚拟机概念可以实现完全保护虚拟机概念可以实现完全保护用软件从硬件逐层扩展用软件从硬件逐层扩展虚拟机方法把多道程序和扩展机器的功能完全分开,使每一部虚拟机方法把多道程序和扩展机器的功能完全分开,使每一部分都简单、灵活,更易于维护。分都简单、灵活,更易于维护。370裸机VM/370CMSCMSCMS系统调用陷入I/O指令陷入若干个370虚拟机CMS:会
10、话监控系统微内核(客户/服务器结构)CMUCMU的的MachMach、早期的、早期的Windows NTWindows NT非常适宜于应用在网络环境下,应用于分布式处理的计算环境非常适宜于应用在网络环境下,应用于分布式处理的计算环境中中 由下面两大部分组成由下面两大部分组成运行在核心态的运行在核心态的“微微”内核内核用户态,以用户态,以C/SC/S模式运行的若干进程,通过内核进行通信模式运行的若干进程,通过内核进行通信主要特点主要特点机制(内核)与策略(服务进程)分离比较彻底机制(内核)与策略(服务进程)分离比较彻底可靠可靠灵活灵活适合分布式计算的需求适合分布式计算的需求缺点:缺点:效率较低效
11、率较低其它体系结构外展式核心(外展式核心(ExokernelsExokernels)这种观点认为操作系统应该只负责在竞争的用户之间安全、有效这种观点认为操作系统应该只负责在竞争的用户之间安全、有效的分配计算资源的分配计算资源 传统操作系统的绝大部分功能应该在系统库中以可选的方式链接传统操作系统的绝大部分功能应该在系统库中以可选的方式链接进用户程序进用户程序可扩展系统可扩展系统可扩展系统认为应该将尽可能多的模块以一种受保护的方式放进可扩展系统认为应该将尽可能多的模块以一种受保护的方式放进核心当中。操作系统的构造者可以先构造从一个只包含稍微多于核心当中。操作系统的构造者可以先构造从一个只包含稍微多
12、于核心保护机制的一个最小核心。而其它的功能则通过不断的往核核心保护机制的一个最小核心。而其它的功能则通过不断的往核心中添加受保护的模块实现。心中添加受保护的模块实现。2.2 Windows 2000/XP系统模型融合了分层操作系统和微内核操作系统的设计思想,使用融合了分层操作系统和微内核操作系统的设计思想,使用面向对象的分析与设计,采用整体式的实现面向对象的分析与设计,采用整体式的实现Windows 2000/XPWindows 2000/XP通过硬件机制实现了核心态以及用户态通过硬件机制实现了核心态以及用户态两个特权级别两个特权级别 。对性能影响很大的操作系统组件运行在核。对性能影响很大的操
13、作系统组件运行在核心态。心态。核心内没有保护核心内没有保护。Windows 2000/XPWindows 2000/XP的核心态组件使用了面向对象设计原则的核心态组件使用了面向对象设计原则出于可移植性以及效率因素的考虑,大部分代码使用了基出于可移植性以及效率因素的考虑,大部分代码使用了基于于C C语言的对象实现。语言的对象实现。Windows 2000/XPWindows 2000/XP的很多系统服务运行在核心态,这使得的很多系统服务运行在核心态,这使得Windows 2000/XPWindows 2000/XP更加高效,而且也是相当稳定的。更加高效,而且也是相当稳定的。系统支持进程服务进程用
14、户程序环境子系统子系统动态链接库图形引擎图形引擎执行体执行体执行体执行体核心核心核心核心设备驱动设备驱动设备驱动设备驱动HALHAL用户态用户态核心态核心态Windows 2000/XP的构成用户态组件用户态组件系统支持进程系统支持进程(system support processsystem support process),不是),不是Windows 2000/XPWindows 2000/XP服务,不由服务控制器启动。服务,不由服务控制器启动。服务进程服务进程(service processservice process),),Windows 2000/XPWindows 2000/XP
15、的服的服务。务。环境子系统环境子系统(enviroment subsystemsenviroment subsystems),它们向应用),它们向应用程序提供操作系统功能调用接口包括:程序提供操作系统功能调用接口包括:Win32Win32、POSIXPOSIX和和OS/2 1.2OS/2 1.2。应用程序应用程序(user applicationsuser applications),五种类型:),五种类型:Win32Win32、Windows 3.1Windows 3.1、MS-DOSMS-DOS、POSIX POSIX 或或OS/2 1.2OS/2 1.2。子系统动态链接库子系统动态链接库
16、:调用层转换和映射:调用层转换和映射核心态组件核心态组件核心(核心(kernelkernel)包含了最低级的操作系统功能,例如线程调度、中包含了最低级的操作系统功能,例如线程调度、中断和异常调度、多处理器同步等。同时它也提供了执行体断和异常调度、多处理器同步等。同时它也提供了执行体(ExecutiveExecutive)用来实现高级结构的一组例程和基本对象。)用来实现高级结构的一组例程和基本对象。执行体执行体包含基本的操作系统服务,例如内存管理器、进程和线程包含基本的操作系统服务,例如内存管理器、进程和线程管理、安全控制、管理、安全控制、I/OI/O以及进程间的通信。以及进程间的通信。硬件抽象
17、层(硬件抽象层(HAL,Hardware Abstraction LayerHAL,Hardware Abstraction Layer)将内核、设备驱将内核、设备驱动程序以及执行体同硬件分隔开来,实现硬件映射。动程序以及执行体同硬件分隔开来,实现硬件映射。设备驱动程序(设备驱动程序(Device DriversDevice Drivers)包括文件系统和硬件设备驱动程包括文件系统和硬件设备驱动程序等,其中硬件设备驱动程序将用户的序等,其中硬件设备驱动程序将用户的I/OI/O函数调用转换为对特定函数调用转换为对特定硬件设备的硬件设备的I/OI/O请求。请求。图形引擎图形引擎包含了实现图形用户界
18、面(包含了实现图形用户界面(GUIGUI,Graphical User Graphical User InterfaceInterface)的基本函数。)的基本函数。可移植性的获得两种方法两种方法分层的设计分层的设计 依赖于处理器体系结构或平台的系统底层部分被隔依赖于处理器体系结构或平台的系统底层部分被隔离在单独的模块之中,系统的高层可以被屏蔽在千差万别的硬件离在单独的模块之中,系统的高层可以被屏蔽在千差万别的硬件平台之外。提供操作系统可移植性的平台之外。提供操作系统可移植性的两个关键组件是两个关键组件是两个关键组件是两个关键组件是HALHAL和内核。和内核。和内核。和内核。依赖于体系结构的功
19、能在内核中实现,在相同体系结构中,因计依赖于体系结构的功能在内核中实现,在相同体系结构中,因计算机而异的功能在算机而异的功能在HALHAL中实现。中实现。Windows 2000/XPWindows 2000/XP大量使用高级语言大量使用高级语言执行体、设备驱动程序执行体、设备驱动程序等用等用C C语言编写,图形用户界面用语言编写,图形用户界面用C+C+编写。只有那些必须和系编写。只有那些必须和系统硬件直接通信的操作系统部分,或性能极度敏感的部分是用汇统硬件直接通信的操作系统部分,或性能极度敏感的部分是用汇编语言编写的。汇编语言代码分布集中且少。编语言编写的。汇编语言代码分布集中且少。对称多处
20、理器支持代码对多处理器的可伸缩性好代码对多处理器的可伸缩性好完善的完善的I IPCPC和锁机制解决资源竞争问题和锁机制解决资源竞争问题核心态组件代码可重入程度极高核心态组件代码可重入程度极高多优先级抢占式调度(利用系统陷阱调度),多数多优先级抢占式调度(利用系统陷阱调度),多数核心态组件代码都可以被抢占核心态组件代码都可以被抢占由由NTOSKRNL.EXENTOSKRNL.EXE屏蔽屏蔽SMPSMP硬件设置,绝大多数组硬件设置,绝大多数组件不可见、也无需关心,。件不可见、也无需关心,。2.3 Windows 2000/XP的构成P43 图2-5 windows2000/xp体系结构内核内核内核
21、对象内核对象硬件支持硬件支持硬件抽象层硬件抽象层执行体执行体驱动程序驱动程序环境子系统与动态链接库环境子系统与动态链接库Win32Win32PosixPosixOs/2Os/2Ntdll.dllNtdll.dll系统支持进程系统支持进程内核功能功能线程安排和调度线程安排和调度陷阱处理和异常调度陷阱处理和异常调度中断处理和调度中断处理和调度多处理器同步多处理器同步供执行体使用的基本内核对象供执行体使用的基本内核对象 始终运行在核心态,代码精简,可移植性好。除了中始终运行在核心态,代码精简,可移植性好。除了中断服务例程(断服务例程(ISRISR,interrupt service routinei
22、nterrupt service routine),正在),正在运行的线程不能抢先内核。运行的线程不能抢先内核。内核对象内核对象帮助控制、处理并支持执行体对象的操作,以降低系帮助控制、处理并支持执行体对象的操作,以降低系统策略代价统策略代价控制对象,这个对象集和包括内核进程对象、异步过控制对象,这个对象集和包括内核进程对象、异步过程调用(程调用(APCAPC,asynchronous procedure callasynchronous procedure call)对象、)对象、延迟过程调用(延迟过程调用(DPCDPC,deferred procedure calldeferred proc
23、edure call)对象)对象和几个由和几个由I/OI/O系统使用的对象,例如中断对象。系统使用的对象,例如中断对象。调度程序对象集合负责同步操作并影响线程调度。调调度程序对象集合负责同步操作并影响线程调度。调度程序对象包括内核线程、互斥体(度程序对象包括内核线程、互斥体(MutexMutex)、事件)、事件(EventEvent)、内核事件对、信号量()、内核事件对、信号量(SemaphoreSemaphore)、定)、定时器和可等待定时器时器和可等待定时器 内核与硬件使得执行体和设备驱动程序同硬件无关使得执行体和设备驱动程序同硬件无关 实现手段:一组在多个体系结构上可移植、同实现手段:一
24、组在多个体系结构上可移植、同语义的接口语义的接口内核也有部分代码不具有移植性内核也有部分代码不具有移植性支持虚拟支持虚拟80868086模式的代码,用以运行一些古老的模式的代码,用以运行一些古老的1616位位DOSDOS程序程序高速缓存管理高速缓存管理描述表切换描述表切换硬件抽象层(HAL)实际硬件与实际硬件与Windows 2000/XPWindows 2000/XP抽象计算机描述的接抽象计算机描述的接口层和功能映射层口层和功能映射层隐藏各种与硬件有关的细节,例如隐藏各种与硬件有关的细节,例如I/OI/O接口、中断接口、中断控制器以及多处理器通信机制等控制器以及多处理器通信机制等实现多种硬件
25、平台上的可移植性实现多种硬件平台上的可移植性执行体提供的功能性调用提供的功能性调用从用户态导出并且可以调用的函数。这些函数的接从用户态导出并且可以调用的函数。这些函数的接口在口在NTDLL.DLLNTDLL.DLL中。通过中。通过Win32APIWin32API或一些其他的环或一些其他的环境子系统可以对它们进行访问。境子系统可以对它们进行访问。从用户态导出并且可以调用的函数,但当前通过任从用户态导出并且可以调用的函数,但当前通过任何文档化的子系统函数都不能使用。何文档化的子系统函数都不能使用。在在Windows 2000 DDKWindows 2000 DDK中已经导出并且文档化的核中已经导出
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- c2_Windows 2000XP的体系结构教学文案 2000 XP 体系结构 教学 文案
限制150内