《操作系统原理及应用(Linux)(第二版)》-王红-电子教案 第8章 现代操作系统实例

上传人:E**** 文档编号:89401461 上传时间:2019-05-24 格式:PPT 页数:50 大小:265KB
返回 下载 相关 举报
《操作系统原理及应用(Linux)(第二版)》-王红-电子教案 第8章 现代操作系统实例_第1页
第1页 / 共50页
《操作系统原理及应用(Linux)(第二版)》-王红-电子教案 第8章 现代操作系统实例_第2页
第2页 / 共50页
《操作系统原理及应用(Linux)(第二版)》-王红-电子教案 第8章 现代操作系统实例_第3页
第3页 / 共50页
《操作系统原理及应用(Linux)(第二版)》-王红-电子教案 第8章 现代操作系统实例_第4页
第4页 / 共50页
《操作系统原理及应用(Linux)(第二版)》-王红-电子教案 第8章 现代操作系统实例_第5页
第5页 / 共50页
点击查看更多>>
资源描述

《《操作系统原理及应用(Linux)(第二版)》-王红-电子教案 第8章 现代操作系统实例》由会员分享,可在线阅读,更多相关《《操作系统原理及应用(Linux)(第二版)》-王红-电子教案 第8章 现代操作系统实例(50页珍藏版)》请在金锄头文库上搜索。

1、第8章 现代操作系统实例,本章学习目标 掌握UNIX系统的内核管理方法 了解Windows系统的内核管理方法 了解分布式操作系统特性及进程管理方式,第8章 现代操作系统实例,1,教学内容 8.1 UNIX操作系统 8.2 WINDOWS 2000操作系统 8.3 分布式操作系统,8.1 UNIX操作系统,8.1.1 UNIX操作系统的发展 UNIX是目前最流行的操作系统之一,于1969年,在美国的电报电话公司(AT&T)贝尔实验室诞生的。最初的UNIX系统是用汇编语言编写的,1973年,Ritchie又用C语言重写了UNIX。,第8章 现代操作系统实例,3,8.1.2 UNIX操作系统的特点,

2、1多用户多任务 2可移植性 3树型文件系统结构 4I/O重定向和管道技术 5非富的实用程序 6电子邮件,第8章 现代操作系统实例,4,8.1.3 UNIX系统的内核结构,第8章 现代操作系统实例,5,第8章 现代操作系统实例,6,8.1.4 UNIX系统中的进程管理,1UNIX进程的结构 (1)用户级上下文 用户级上下文主要成分是用户程序。包括正文段即代码(text)、数据段(data)两部分。 (2)寄存器上下文 寄存器上下文主要是由CPU中的一些寄存器的内容组成的。 (3)系统级上下文,第8章 现代操作系统实例,7,系统级上下文包括操作系统为管理该进程所用的信息,可分为静态和动态两部分。它

3、包括: proc结构:该结构常驻内存,内容包括经常需要访问的往息,如进程标识符、进程状态等。 user结构:该结构暂驻内存,进程处于执行状态时调入内存。它包含了进程的一些私有信息,如,进程表项指针、有效用户标识符等各种资源表格。 进程区表:从虚拟地址到物理地址的映射。 核心栈:核心态执行时过程调用的栈结构。 若干寄存器级上下文。,第8章 现代操作系统实例,8,2进程调度算法,UNIX系统是分时系统,它的进程调度采用动态优先数轮转调度算法。优先数越小,优先级别越高。例如,对换进程的优先数是,而等待磁盘I/O进程的优先数是。 UNIX S-5中进程的优先级分为两大类:用户优先级类和核心优先级类。核

4、心用两种方式改变进程的优先级:对核心态进程设置优先数;对用户态进程计算优先数。,第8章 现代操作系统实例,9,3进程状态及转换,UNIX System 5进程的状态存放在进程的proc结构中。这些进程的状态共有9个,它们是: (1)用户态执行。 (2)核心态执行。 (3)内存中睡眠。 (4)睡眠且换出。 (5)内存中就绪。 (6)就绪且换出。 (7)僵死。 (8)被剥夺状态。 (9)创建。,第8章 现代操作系统实例,10,第8章 现代操作系统实例,11,4Unix系统中进程的家族关系,Unix的内核中设置了一个0进程,它是惟一一个在系统引导时被创建的进程。在系统初启时,由0进程再创建1进程及其

5、它核心进程,然后1号进程又为每个终端创建命令解释进程;用户输入命令后又创建若干进程,这样便形成了一棵进程树。以后0号进程作为系统的对换及调度进程,1号进程成为系统始祖进程,同时又创建其它进程。系统中除0进程以外,所有其它进程都是由fork创建的。,第8章 现代操作系统实例,12,8.1.5 UNIX系统的内存管理,UNIX系统采用求请调页存储管理方式,支持内外存的对换功能。内存空间的分配和回收均以页为单位进行。 1交换 将内存中处于睡眠状态的某些进程调到外存交换区中,而将交换区中的就绪进程重新调入内存。为实现这种策略,系统内核应具有交换空间的管理、进程换出和进程换入这三个功能。,第8章 现代操

6、作系统实例,13,2请求分页,UNIX系统为实现请求分页的功能,配置了四种数据结构,分别为: (1)页表。 (2)磁盘块描述字。 (3)页面数据表。 (4)交换使用表。,第8章 现代操作系统实例,14,3换页进程,换页进程为核心进程。该进程的主要任务是增加内存中所有的有效页年龄,并将内存中长期不用的页面换出。 4缺页 在UNIX系统中可能会出现两类缺页:有效缺页和保护性缺页。当出现缺页时,缺页处理程序可能要从盘上读一个页面到内存,并在I/O执行期间睡眠。,第8章 现代操作系统实例,15,8.1.6 UNIX系统的文件管理,UNIX系统中的文件子系统,既具有很强的功能,又具有灵活性。按文件的内部

7、构造方式,UNIX系统将文件分为三类,即:普通文件、目录文件和特别文件(即设备文件)。UNIX系统的目录结构为有向非循环图结构。,第8章 现代操作系统实例,16,1文件卷的组织结构,UNIX系统中,文件是以块为单位存放在介质上的,存储介质可以是磁盘或磁带。通常把每个磁盘或磁带看作一个文件卷。上图示出了UNIX系统的文件卷结构。 其中,0号块是系统的引导块或空闲,当该系统需引导时才有引导程序放在这里,其它一般文件系统都不使用引导块;1号块为超级块(也称为专用块),它既是文件系统的控制块,也是对空闲盘块和I结点等资源的管理表。从2号块到第K号块为索引结点区,(K值由系统配置给定),用来存放该文件卷

8、中所有文件的索引结点;从第K+1块至第N块为文件区,用来存放系统中所有的文件。,第8章 现代操作系统实例,17,超级块包括以下内容: (1)文件系统大小。 (2)空闲盘块数目。 (3)空闲索引结点数目。 (4)空闲索引结点索引表。 (5)封锁标记。 (6)专用块修改标记。 (7)其它信息。,第8章 现代操作系统实例,18,2文件的目录结构,UNIX系统的目录结构采用了将文件名与文件描述信息分开的方法。文件目录由文件名和该文件的索引结点号构成。其中,文件名占14个字节,索引结点号占2个字节。因此,在1KB的盘块中就可以存放64(1K/16)个目录项。这样就节省了系统查找及访问文件的时间。,第8章

9、 现代操作系统实例,19,UNIX一个文件的磁盘索引结点占64个字节,主要包括文件标识符、文件存取权限、文件物理地址、文件长度、文件连接系数、文件存取时间等一些文件的重要信息。,第8章 现代操作系统实例,20,3文件的物理结构,UNIX系统文件的物理结构采用混合索引方式,对分配给文件的磁盘块进行管理。在UNIX文件系统的索引结点中,存在一项i.addr13,用于存放该文件的磁盘块号。如图8-7示出了UNIX系统的混合索引文件结构。,第8章 现代操作系统实例,21,(1)直接寻址 i.addr0 i.addr9这10项。直接从索引结点中找出该文件所在的磁盘块号,访问速度较快。 (2)一次间接寻址

10、方式 i.addr10这一项中存放的磁盘块号。 (3)二次间接寻址方式 i.addr11存放的磁盘块号,采用两级索引的方式。 (4)三次间接寻址方式 i.addr12存放的磁盘块号,采用三级索引的方式。,第8章 现代操作系统实例,22,4磁盘空间的管理方式,UNIX系统对于空闲盘块的管理,采用成组链接法。该方法把第一组中的所有空闲盘块号放入超级块的空闲盘块号栈中。 5系统为打开文件建立的数据结构 UNIX系统打开文件的操作,就是由操作系统在内存为文件建立相应的数据结构。系统为打开文件建立的数据结构有三个,即:用户文件描述符表、文件表和内存索引结点。,第8章 现代操作系统实例,23,第8章 现代

11、操作系统实例,24,8.1.7 UNIX系统的设备管理,UNIX系统把设备分为两类,即字符设备和块设备。 在UNIX系统中有两种类型的I/O,即:缓冲I/O和无缓冲I/O。 1缓冲高速缓存 UNIX系统中的缓冲Cache实际上是一个磁盘Cache。对于磁盘的I/O操作通过缓冲Cache处理。,第8章 现代操作系统实例,25,2字符队列,缓冲Cache可支持像磁盘、磁带这样的块设备。另一种缓冲则适用于面向字符的设备,如终端、打印机等。字符队列可以由I/O设备写、处理器读或由处理器来写、I/O设备读。 3无缓冲I/O 无缓冲I/O是进程进行I/O的最快的方法,它在设备和进程空间之间使用DMA,进行

12、无缓冲I/O的进程在主存中被锁起来,不能被换出。通过给高端内存加锁,减少了交换的机会,但也降低了整个系统的性能。同时,I/O设备也固定于一个进程,在传输中,不能为其他进程使用。,第8章 现代操作系统实例,26,4UNIX设备,UNIX系统本身可识别如下5种设备,即:磁盘驱动器、磁带驱动器、终端、通信线、打印机。 5磁盘的读/写方式 (1)读方式 一般读方式。 提前读方式。 (2)写方式 一般写方式。 异步写方式。 延迟写方式。,第8章 现代操作系统实例,27,8.2 Windows 2000操作系统,8.2.1 Windows 2000概述 Windows操作系统家族是微软公司的核心产品之一,

13、其产品包括Windows 95、Windows98、Windows Me等桌面型操作系统以及Windows NT、Windows2000服务器操作系统。 Windows 2000是一个商用多用户操作系统,其开发目标是开发工作站和服务器上的32位操作系统,以充分利用32位微处理器等硬件的新特性,并使它很容易适用将来的硬件变化,增加它的兼容性,同时,又不影响已有的应用程序的兼容性。,第8章 现代操作系统实例,28,8.2.2 Windows 2000中的进程和线程的特点,Windows 2000操作系统对CPU的管理可体现为它的进程和线程模型。它具有以下特点: 1它是多任务(多进程)、多线程、对称

14、多处理的。 2由于采用了客户/服务器模型, Windows 2000体现为多个服务器进程 。 3Windows 2000的进程以及线程全部作为对象实现,并通过对象服务访问。 4进程管理程序在它所管理的子进程之间不具有父进程/子进程或其他关系。 5在该系统中,基本的调度实体是线程,采用动态优先级多级调度队列算法,允许可抢占CPU,但核心代码不可被抢占。 6.可以在进程间共享对象,以及具有灵活的内部进程通信能力。 7Windows NT原设计可以Intel、MIPS等多种CPU上运行,但出于市场因素的考虑,Windows 2000只在Intel上运行。,第8章 现代操作系统实例,29,8.2.3

15、Windows 2000中的进程,1进程与线程 Windows 2000中的进程由以下几部分组成: (1)该进程所执行的程序。 (2)一个由该进程专用的地址空间。 (3)系统资源。 (4)至少有一个线程。 2进程的管理 在Windows 2000中,每个进程由一个进程对象结构表现,并有一个执行现场。进程执行现场包括进程的虚地址空间、该进程可见的资源集合、该进程的所有线程的集合。,第8章 现代操作系统实例,30,3进程的同步与互斥 Windows 2000中提供了互斥对象、信号量对象和事件对象等3种不同对象和相应的系统调用,用于进程和线程的同步。 4 进程通信 有以下几种:信号(Signal)通

16、信、共享存储区、管道通信 、邮件槽通信 、Windows套接字 、剪贴板。,8.2.4 Windows 2000中线程的实现,1线程的构成 在Windows 2000中,一个线程由以下几部分构成: (1)线程标识符。 (2)一组易变寄存器的内容,用来表示CPU的状态。 (3)两个栈。 (4)一个供该线程专用的存储区域 。,第8章 现代操作系统实例,32,2线程的状态,Windows 2000的线程状态共有以下六个: (1)就绪(ready)。 (2)备用(standby)。 (3)运行(running)。 (4)等待(waiting)。 (5)转换(transition)。 (6)终止(terminated)。,第8章 现代操作系统实例,33,8.2.5 Windows 2000 的调度算法,Windows 2000/NT中,基本的调度实体是线程。线程调度算法采用多级调度队列动态优先级算法。实现该调度算法的是内核中的一个数据结构,称为“调度程序数据库”。 Windows 20

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号