WindowsNT操作系统.ppt_第1页
WindowsNT操作系统.ppt_第2页
WindowsNT操作系统.ppt_第3页
WindowsNT操作系统.ppt_第4页
WindowsNT操作系统.ppt_第5页
已阅读5页,还剩46页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、Windows NT操作系统,1. 概 述,93年推出WINDOWS NT是一个32位的多任务操作系统。 NT操作系统控制CPU时间的分配,而不是控制应用程序的分配。 NT支持多CPU,多CPU提供真正的多任务,使用对称的多处理,意味着处理器分享所有任务,不象非对称的多处理那样让操作系统使用一个CPU,而让应用程序用另一个CPU。 NT也是一个容错的操作系统,应用程序在自己的虚拟内存地址空间(4GB)上运行,一个应用程序不会干扰另一个应用程序的内存空间。,1) WINDOWS NT的特点,图形用户界面技术; 支持多操作系统运行环境; 对称多处理能力; 内装网络功能; 多重文件系统与异步I/O以

2、及采用面向对象的软件开发技术 它提供了现代操作系统的几乎所有功能,如:多任务能力;多处理系统;虚拟资源管理;统一成一体化的I/O系统;网络通信功能等,具有很多的性能,2) 设计目标,可扩充性。(要求操作系统易于扩充,随市场需求的变动易于改动) 可移植性。(尽可能通过少改动而移植到不同的处理机上) 可靠性。(操作系统应是稳健的,能对一切意外处理;主动保护自己及其它用户免遭破坏) 兼容性。(能执行为其它操作系统所编写的程序能力,如早期版本等) 高的系统性能。(快速处理图、文、声、像、仿真软件等),3) NT的优良特性,先进的操作系统结构 性能优良的内核程序 丰富的网络服务,2. Windows N

3、T的系统模型,客户/服务器模型 对象模型 对称处理模型,1) 客户/服务器模型,提供多种操作系统运行环境的支持。(由NT设计目标兼容性的要求) 改进了可靠性: A每个服务器是以分配给它的主存分区的独立进程方式运行。 B每个服务器是以独立的用户进程方式运行 C适宜于分布式计算模型,2) 对象模型,NT操作系统使用对象模型有以下优点: 操作系统访问和操纵其资源是一致的。(通过对象句柄) 所有对象采用同样的保护方法,因此简化了安全措施。,3) 对称多处理模型,所谓多处理模式是指一台计算机中具有两个以上的处理机,可同时执行(NT线程)。每个处理机上同时可有一进程(或线程)在执行。对称多处理系统允许操作

4、系统在任何一个处理机上运行,即各处理机平等。它们既可执行操作系统又执行用户进程,共同负责管理系统主存,外设和其它资源,各处理机共用主存。,NT采用对称处理模式的优点,操作系统可在任一个空闲的处理机上运行,也可同时在各处理机上运行。 一个进程的多个线程可同时在多个处理机上运行。 服务器进程可使用多个线程在不同的处理机上处理多个客户进程的服务请求。,3. Windows NT的结构图,1) Windows NT的结构,NT分为系统用户态部分(NT保护子系统)和系统核心态部分(NT执行体)。 核心态处于特权处理器方式下,用户态处于非特权处理器方式。 核心态包括了系统服务和硬件描述层(HAL), 系统

5、服务包含了一个操作系统的所有应有服务,文件系统,进程控制,内存管理,设备管理等等。 NT中除了微内核外,另外还包含了一些独特的部分,如对象管理器,配置管理器,执行体支持,本地过程调用,安全监视器,所有这些都建立在HAL之上。 IO管理器实现对设备的管理,包含了文件系统,中间介质和设备驱动。,2) 保护子系统,用户态模式是由诸客户进程、服务器进程所构成的部分,其结构为客户/服务器模型。由环境子系统和集成子系统 组成。 用户态模式包括了一些保护子系统,如OS/2子系统,POSIX子系统,安全子系统,当然还有最常用的Win32子系统,NT都称之为服务器。它们运行于CPU的用户层Ring3,建立在服务

6、器上的各类应用程序被称为客户。,3) 环境子系统,是一个用户态服务器,为特定的操作系统提供一个API。(它为客户进程提供的服务是这样的,当一个应用程序调用其相应的某个API时,一个消息通过执行体的本地过程调用LPC工具,发送给完成该API的程序服务器环境子系统。子系统执行API例程,并通过LPC将结果返回应用程序进程),4) 集成子系统,是完成重要操作系统功能的服务器,包括安全子系统、网络软件中的若干部件。用户态的每个环境子系统都可支持多个客户应用程序同时运行,当用户试图进入系统时,首先须进行登录,由安全子系统对用户进行是否允许其进入和权限的检查与控制。安全子系统维护着一个有关用户账号信息的D

7、B,任何非法用户都不许进入。,5) NT执行体,NT执行体基本上是一个完整的操作系统,它由一组部件组成: 层次结构的第一层是由系统服务下面的几个部件构成,这些部件可通过内部界面互相调用。 NT内核是第二层,它类似Mach的微内核。 最底一层是硬件抽象层(HAL)。它将NT执行体的其余部分与运行机器的硬件特性隔离开来。,6)NT执行体各组成部件的主要功能,对象管理程序:生成、管理及删除执行体对象。 安全调用监视程序:监视操作系统资源,执行运行对象的保护和审查,实施安全方针。 进程管理程序:生成和终止进程及线程,执行暂停和恢复线程的执行、存贮和检索有关NT进程和线程的信息。,NT执行体各组成部件的

8、功能(续),本地过程调用功能(LPC):在同一台计算机中的客户进程和一个服务器进程之间传送消息,是远程过程调用的优化版本。 虚拟存贮管理(VM)程序:为每个进程提供专有地址空间,对进程地址空间进行保护,负责页面调度。 内核:对中断和异常作出响应,调度线程,提供一组基本对象和接口。,NT执行体各组成部件的功能(续),I/O系统包括下列子部件:I/O管理程序、文件系统、网络定向程序和网络服务器、设备驱动程序、高速缓冲存贮管理程序 硬件抽象层(HAL):运行于CPU的特权层Ring0(在驱动程序内部,在不同部分还分为不同权限层)。 以上这些组成部件中的前六个部件都要实现两组函数:1)系统服务:可以由

9、环境子系统和其它执行体部件调用; 2)内部例程:只可由在执行体内的组成部件使用。,4. 对象,是个抽象数据结构。在NT中用以表示所有资源。对象是数据和有关操作的封装体。它包括数据、数据的属性以及可以施加于数据上的操作等三个成分。NT的对象类(可理解为资源类),NT执行体中定义的对象类有:进程、线程、区域、文件、事件、事件对、信息量、时间器、对象目录、简要表、符号连接、关键字、端口、存贮令牌、多用户终端程序。,1) 执行体对象类,2) NT执行体实现两种对象,执行体对象:由执行体的各组成部件实现的对象,能被子系统或NT执行体创建和修改,其对象类列于上表中。 内核对象:由内核实现的一个更基本的对象

10、集合,称为控制对象集合,包括:内核过程对象、异步过程调用对象、延迟过程调用对象、中断对象、电源通知对象、电源状态对象、调度程序对象等。,3) 进程,被定义为表示操作系统所要做的工作,是操作系统用于组织其必须完成的诸项工作的一种手段。它由四个部分组成: 一个可执行的程序:它定义了初始代码和数据 一个私用地址空间:即进程的虚拟地址空间。 系统资源:由操作系统分给进程 至少有一个执行线程,与传统操作系统进程概念的不同,进程是作为对象来实现的。(它也是可共享的资源) NT进程要求一个独特的组成成分至少一个执行线程。 NT进程的组成中没有PCB,有关的信息在进程对象的对象体中及局限于进程对象表中等处都有

11、进程的信息 调度和执行的基本单位是线程而不是进程,因此不必划分进程状态。,与传统操作系统进程概念的不同,一个NT进程可有多个线程在其地址空间内执行。 进程是由进程创建的,当应用程序启动时,相应的环境子进程调用执行体的进程管理程序为之建立以进程,并返回一句柄,然后进程管理程序又调用对象管理程序为之建立一个进程对象。当系统启动时,系统为每个环境子系统建立一个服务器进程。 进程管理程序不维护进程的父/子或其它关系。 进程和线程都具有内含的同步机制。,4) 线程,进程内的一个执行单元;进程内的一个可调度实体。(若把进程理解为操作系统所做的作业,则线程表示完成该作业的许多可能的子任务之一)。它由四个基本

12、组成部分组成:一个唯一的标识符(ID);描述处理机状态的状态寄存器内容(相当于老PSW);两个栈,分别用于用户态和核心态下执行时使用;一个私用存储器。,线程的优点,通过线程可方便有效地实现并行性,进程可创建多线程执行同一程序的不同部分 创建线程比创建进程快,少开销,它除栈和寄存器内容外,共享同一主存 创建多线程、对客户同时提出请求回答十分便利,因服务器程序只被装入主存一次,就可使多客户同时提出服务请求分别由一独立服务器线程通过执行适当的服务器功能,并行为客户进行处理。,5) 对象、进程和线程间的关系,对象、进程和线程是组织和构造NT操作系统的三个基本成分。它们之间互相交叉,对象是一抽象的数据结

13、构,是构成操作系统的三个基本成分中非活动的成分,而进程、线程是构成操作系统的二个活动成分,它们的关系如下:,对象、进程和线程间的关系(续),线程是进程的一个组成部分。 进程的多个线程都在进程的地址空间活动。 资源分配的对象是进程,即资源是分给进程而非线程。 调度的基本单位是线程,即CPU是分配给线程的。 线程在执行过程中,需要协作同步,在不同进程的线程间的同步用消息通信,它要用到进程的资源端口。因此,通信的是线程,用的消息队列是进程的资源。(可喻为,进程相当董事长,线程相当部门经理,或类似作业与进程),6. 内核的主要任务,调度线程的执行 当中断核异常发生时,将控制转移到相应的中断和异常 执行

14、低级的多处理器同步 在电源失效后,实现系统的恢复过程。 NT内核提供了一组精心定义的操作系统原语机制,通过使用内核原语,NT执行体可构成许多更高级的功能。,1) 线程的生命期的状态,一个线程的生命期的状态是变化的,它在任何一个时刻的状态是六种状态之一。 就绪状态:线程已具备执行的条件,等待CPU执行,调度程序从中选入备用 备用状态:被调度程序选用定为某一特定处理机上只能有一个处于备用状态的线程。 运行状态:一旦调度程序对线程执行完描述表切换,线程进入运行状态。 等待状态:以下情况线程进入其状(线程等待同步对象、因I/O,自己挂起) 转换状态:若线程已准备好执行,但由于资源成为不可用(如页在外存

15、)从而转入转换状态,当资源成为可用,则进入就绪状态。 终止状态:线程完成它的执行,2) 优先级,内核的线程调度程序是采用可抢占 的动态优先级调度算法,调度程序按线程的优先级调度线程的执行顺序,先调度高优先级的线程。 NT支持32个优先级,分两类:实时优先级 从1631 实时程序所用的主优先级线程、可变优先级 从115。 当系统中无任何事件时,内核提供一总在执行的线程,称为空闲线程,优先级最低。,3) 中断和异常处理,NT中的中断主要是由硬件引起的,是随机发生的异常事件。而异常是某一特别指令执行的结果,是同步情况,如主存存取错,除零。 当中断和异常发生被捕捉后,系统将执行线程由用户态切换到核心态

16、,将CPU控制权交给操作系统中有效在主存中固定地址的陷阱处理程序。它首先保存执行线程中断现场,确定所发生的情况,并转相应处理程序。,7. 输入输出(I/O)系统,建立一个统一的主层界面I/O设备虚拟界面,即将所有读写数据看成直接送往虚拟文件的字节流。,8. NT的内装网络,无需其它软件即可为用户提供文件共享、打印机共享、电子邮件和网络DDE等功能。,9. 对象管理程序,它的主要功能是创建、管理、删除用来表示操作系统资源的对象,操作系统通过对象管理程序对资源进行统一的管理,使用共同的代码操纵它们。,对象管理程序的工作,NT的对象管理程序在接到创建对象的系统服务后,要做以下工作: 为对象分配主存。

17、 给对象一个附加安全描述体,以指出允许谁使用对象以及谁被允许进行操作。 创建和维护对象目录表目 创建一个对象句柄并返回调用者。 NT对对象的管理、组织和操作的模型是基于文件系统的模型。,10. NT的安全性,登录进程和安全子系统 存取令牌 存取控制表 主存保护 客户/服务器模型,11. 虚拟内存,NT/2K/XP中,操作系统利用虚拟内存管理技术来维护地址空间映像,每个进程分配一个4GB的虚拟地址空间。运行在用户态的应用程序,不能直接访问物理内存地址;而运行在核心态的驱动程序,能将虚拟地址空间映射为物理地址空间,从而访问物理内存地址。,1) 进程的虚拟地址空间,NT为每个进程提供一个很大的虚拟空

18、间(4GB)( 抛弃了早期从808680286使用分段模式造成的64K局限) NT运行在32位的386以上微机。 进程4GB的地址被等分为两部分,高2GB给系统用,低地址2GB用户用。直接映射区寻址由硬件直接变换,且常驻内存,存取数据快,用以有效NT内核中频繁使用,响应速度快的那些代码。,2) NT虚拟分页地址变换机构,它不同于传统页地址变换。采用一种称为两极页表结构技术,第一级为页目录,第二级为页表,每个进程一个页目录。 页目录:包含1024个表目。每个表目指出二级页表所在页表地址。 页表:包含1024个表目。每个页面大小为4KB。 在系统中有控制寄存器指出进程的页目录地址。,页目录地址,目

19、录位移,页表位移,页位移,虚拟地址,页表地址,. . .,页目录(每进程一个),块号,. . .,页表,代码或数据,. . .,内存块,二级页表结构及地址映射,+,+,3) 地址变换过程,当给出虚拟地址后,按图示被自动分为三部分,页目录(10位)、页表位移(10位)、页内位移12位 将寄存器的页表地址与目录位移(左移两位,因表目录为4字节)拼接成页目录中表目所在地址,该表目中有页表地址。 页表地址与页内位移(左移两位)拼接找到页架号。 将页架号与页内位移拼成绝对地址,从而访问主存。,4) NT要采用二级页表结构的原因,由于每个进程的虚拟地址空间太大,232个可能虚地址,每页大小位4K(212)

20、,每个进程的地址空间可有1048576页(220),每个进程的页表有2204字节。若将全部页表都放入主存,则占主存大的开销,位避免主存都消耗在页表上,根据需要把页表换入、换出主存。,NT采用二级页表结构的原因(续),采用两级页表结构主存访问速度慢(要从主存访问数据三次访问主存方可)因此,采用快表:用高速相关存贮器来存放经常使用的页表表目(NT称快表位变换查找缓冲区【TLB】)使用高速缓存:在位处理器与主存间设置32K或64K的高速缓存,大部分的指令核数据取自高速缓存。(命中率98)所以存取数据和指令相当高。,5) 页面调度策略,NT采用按进程需要请求取页,又采取集群方法(即缺页时将附进页一起装入主存)将一些页面提前装入主存。

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论