第7章几种常见操作系统典型功能的实现方法举例课件.ppt

上传人:小飞机 文档编号:1525613 上传时间:2022-12-03 格式:PPT 页数:49 大小:1.47MB
返回 下载 相关 举报
第7章几种常见操作系统典型功能的实现方法举例课件.ppt_第1页
第1页 / 共49页
第7章几种常见操作系统典型功能的实现方法举例课件.ppt_第2页
第2页 / 共49页
第7章几种常见操作系统典型功能的实现方法举例课件.ppt_第3页
第3页 / 共49页
第7章几种常见操作系统典型功能的实现方法举例课件.ppt_第4页
第4页 / 共49页
第7章几种常见操作系统典型功能的实现方法举例课件.ppt_第5页
第5页 / 共49页
点击查看更多>>
资源描述

《第7章几种常见操作系统典型功能的实现方法举例课件.ppt》由会员分享,可在线阅读,更多相关《第7章几种常见操作系统典型功能的实现方法举例课件.ppt(49页珍藏版)》请在三一办公上搜索。

1、第7章 几种常见操作系统典型功能的实现方法举例,7.1 Windows NT进程、线程的特点7.2 UNIX进程管理7.3 UNIX进程通信与同步机制7.4 Windows NT文件系统7.5 UNIX文件系统索引结构介绍7.6 Linux文件系统7.7 UNIX NFS文件系统7.8 Windows NT 存储管理的二级页表结构7.9 Linux 系统的内存管理技术7.10 UNIX内存管理技术7.11 UNIX I/O设备管理7.12 Linux I/O设备管理,本章学习目标,UNIX的进程管理及调度,包括进程同步机制介绍UNIX文件的物理结构Linux操作系统文件名到文件分量的映射Win

2、dowsNT、Linux及UNIX内存管理技术Linux及UNIX设备管理,7.1 Windows NT进程、线程的特点,7.1.1 Windows NT进程、线程及对象之间的关系7.1.2 进程管理程序7.1.3 线程调度,返回首页,7.1.1 Windows NT进程、线程及对象之间的关系,(1)线程是进程的一个组成部分。(2)进程多线程都在进程的地址空间活动。 (3)资源是分给进程的,而不是分给线程的,并且系统还为分给进程的资源规定了配额。(4)调度的基本单位是线程。 (5)线程在执行过程中需要同步。,返回本节,7.1.2 进程管理程序,(1)客户进程用创建原语创建进程。 (2)客户进程

3、通过发送消息给相应的服务器进程。(3)服务器进程调用Windows NT执行体的进程管理程序为之创建一个Windows NT本机进程。 (4)进程创建后,进程管理程序返回一个句柄给进程对象。(5)环境子系统取得该句柄,生成客户应用程序所期望的适合本环境的返回值。(6)环境子系统调用Windows NT的进程管理程序为已创建的新进程创建一个线程。,返回本节,7.1.3 线程调度,在Windows NT中,一个线程在它的生命期中要经历以下6种状态:(1)就绪状态(2)备用状态 (3)运行状态(4)等待状态 (5)转换状态 (6)终止状态(如图7.1所示),图7.1 线程的调度状态之间的转化图,返回

4、本节,7.2 UNIX进程管理,7.2.1 UNIX进程状态7.2.2 UNIX进程描述7.2.3 UNIX进程控制7.2.4 UNIX进程调度,返回首页,7.2.1 UNIX进程状态,UNIX中共有9种进程状态:(1)核心运行状态 (2)用户运行状态 (3)内存中就绪 (4)内存中睡眠 (5)就绪且换出,(6)睡眠且换出 (7)被抢占状态 (8)创建状态 (9)僵死状态 (如图7.2所示),图7.2 UNIX进程状态转化图,返回本节,7.2.2 UNIX进程描述,(1)一个进程是对一个程序的执行。(2)一个进程的存在意味着系统中存在着一个常驻内存的进程表项(proc结构),它包含着相应进程的

5、控制信息。(3)对每一个进程,有一个被称为U区的数据结构,这个结构中存放着该进程的私用控制信息。(4)一个进程可以生成或撤销其子进程。(5)一个进程是获得和释放各种系统资源的基本单位。,返回本节,7.2.3 UNIX进程控制,在UNIX系统中,除了0#进程之外,其他所有进程都是被另一个进程利用系统调用fork创建的。0#进程是一个特殊的系统进程,它是在系统引导时被创建的。系统初启时,0#进程创建了1#进程,此后0#进程就变成了交换进程,而1#进程变成了系统的始祖进程。UNIX系统利用fork为每个终端创建一个子进程为用户服务,如等待用户登录、执行shell命令解释程序等。,返回本节,7.2.4

6、 UNIX进程调度,由于UNIX系统是单纯的分时系统,所以没有设置作业调度。UNIX系统的进程调度采用的算法是,多级反馈队列轮转调度法。调度的算法如图7.3所示。核心先从最高优先级就绪队列中取出排在队列最前面的进程,当进程执行完一个时间片仍未完成则剥夺它的执行,将它放入到相应的队列中。然后,再从最高优先级就绪队列中取出下一个就绪进程投入运行。,图7.3 UNIX进程调度算法,返回本节,7.3 UNIX进程通信与同步机制,UNIX系统V中的进程通信可分为4个部分:低级通信、管道通信、进程间通信和网络进程间通信。(1)低级通信主要用来传递进程间的控制信号。 (2)管道通信用来在同一家族的进程间传递

7、比特流。,返回首页,(3)进程间通信IPC是UNIX系统V的一个核心程序包,它负责完成同一计算机内各进程间大量数据的传送工作。它由3部分组成:消息机制、共享存储器机制和信号量机制。(4)网络进程间的通信是基于通信协议的。,返回本节,7.4 Windows NT文件系统,7.4.1 FAT文件分配表7.4.2 NTFS文件系统,返回首页,7.4.1 FAT文件分配表,文件分配表是微软用在DOS及Windows操作环境的文件系统格式。FAT文件系统有如下特点:(1)支持长文件名。 (2)不提供本地安全性。 (3)最大文件/分区大小为4GB。,返回本节,7.4.2 NTFS文件系统,NTFS文件系统

8、的特点:(1)支持长文件名称的操作。 (2)提供了C2的安全等级。(3)支持比FAT文件系统更大的文件与分区,理论上两者均可达到16EB,而NTFS在典型硬件上实际最大分区可以达到2TB。,(4)支持文件压缩。 (5)支持族的再映射。 (6)支持Macintosh文件。(7)支持POSIX需求NTFS是Windows POSIX.1兼容支持的文件系统。,返回本节,7.5 UNIX文件系统索引结构介绍,1UNIX系统的文件类型2文件系统的目录结构3文件的物理结构4文件逻辑块号到物理块号的转换,返回首页,1UNIX系统的文件类型,UNIX系统中的文件分为3种类型:目录文件普通文件特殊文件(或称设备

9、文件),2文件系统的目录结构,UNIX文件系统采用的是多级的树形目录结构。整个目录就像一棵倒挂的树,根目录在最上面。下面有树干树枝(目录、子目录),有树叶(文件)。特殊文件存放在一级子目录/dev中,其他所有各级目录中存放的全是普通文件和目录文件。,3文件的物理结构,在UNIX系统中,文件的数据存储在离散的磁盘块中,这些文件的盘块号直接或间接地存放在该文件索引节点的13个地址中。索引节点中的直接块和间接块如图7.4所示。(1)直接寻址方式。(2)一级间接寻址方式。(3)多级间接寻址方式。,图7.4 索引节点中的直接块和间接块,4文件逻辑块号到物理块号的转换,(1)直接地址(2)间接地址。一级间

10、接地址寻址多级间接地址寻址(如图7.5所示 ),图7.5 文件索引节点中的磁盘地址,返回本节,7.6 Linux文件系统,7.6.1 EXT2文件系统7.6.2 EXT2索引节点7.6.3 EXT2超级块7.6.4 EXT2中的目录,返回首页,7.6.1 EXT2文件系统,图7.6 EXT2文件系统结构示意图,返回本节,7.6.2 EXT2索引节点,图7.7 EXT2文件系统索引节点示意图,返回本节,7.6.3 EXT2超级块,超级块主要包括如下信息:(1)幻数(Magic Number)(2)修订级别(Revision Level)(3)挂接数(Mount Count)和最大挂接数(Maxi

11、mum Mount Count) (4)块组号(Block Group Number)(5)块大小(Block Size),(6)每组块数(Blocks per Group)(7)空闲块(Free Blocks)(8)空闲索引节点(Free Inodes)(9)第一个索引节点(First Inode),返回本节,7.6.4 EXT2中的目录,在ext2文件系统中,目录是一些特殊的文件,它们用来创建和保存系统中文件的存取路径(如图7.8所示)。一个目录文件包括很多的目录入口,一个目录入口包括以下内容:(1)索引节点(inode)(2)名称长度(name length)(3)名称(name),图7

12、.8 EXT2文件系统目录结构示意图,返回本节,7.7 UNIX NFS文件系统,NFS最主要的特点是它的健壮性。在客户和服务器之间产生的每个请求本身是完整的,不必知道以前的执行情况。NFS主要的缺憾是它的设计本身是不安全的。这就要求在任何时候通过NFS将磁盘共享给其他的计算机时,需要给该计算机的用户一定的信任度。NFS的两个主要文件是:/etc/exports和/etc/fstab文件。,返回首页,7.8 Windows NT 存储管理的二级页表结构,Windows NT运行在32位的微机上,因此每个进程都有4GB的虚拟地址空间(如图7.9所示)。Windows NT的地址变换机构不同与传统

13、的页面地址变换机构,它采用的是一种称为二级页表结构的技术(如图7.10所示)。某进程的二级页表及虚拟地址如图7.11所示, Windows NT采用两级页表的缺点是降低了访问内存的速度。,返回首页,图7.9 虚拟地址空间,图7.10 二级页表地址变换结构,图7.11 地址变换过程举例,返回本节,7.9 Linux 系统的内存管理技术,(1)采用缓冲区高速缓存来保存块设备驱动程序所用到的数据缓冲区。 (2)Linux系统采用页面高速缓存来加速磁盘中文件镜像和数据的存取。(3)Linux系统采用交换高速缓存只将那些被修改过的页面保存到交换文件中。 (4)将一个常用的硬件高速缓存放在处理器中,它一般

14、用来保存页面表的入口(如图7.12所示)。,返回首页,图7.12 虚拟内存地址示意图,返回本节,7.10 UNIX内存管理技术,交换空间的管理。在UNIX系统中分配交换空间是通过驻留在内存中的交换映射表来实现的。 进程的换出。当内核需要内存空间时,就可以把一个进程换到交换区中。 进程的换入。引用计数值为0的进程即为交换进程。,返回首页,UNIX系统为实现该技术所配置的4种数据结构:(1)页表(2)磁盘块描述表(如图7.13所示)(3)页框数据表(4)交换使用表(如图7.14所示),图7.13 页表项和磁盘块描述表,图7.14 请求分页4种数据结构之间的关系,返回本节,7.11 UNIX I/O

15、设备管理,UNIX操作系统将设备分为两类:块设备和字符设备。所谓块设备是指用于存储信息且信 UNIX系统的设备管理主要有两个特点:第一个特点是:UNIX将各类设备当作文件来管理。第二个特点是:UNIX设备管理采用了缓冲技术。 (1)块设备缓冲。 (2)字符设备缓冲区。,返回首页,7.12 Linux I/O设备管理,设备管理的一个基本目标就是对设备的抽象处理。一个设备驱动程序控制的所有设备有一个相同的主设备号,通过不同的从设备号来区分设备和它们的控制器。Linux系统使用主设备号和系统中的一些表来将系统调用中使用的设备文件映射到设备驱动程序中。Linux系统支持三种类型的硬件设备:字符设备、块设备、网络设备。,返回首页,本章小结,针对前6章介绍的操作系统的功能,本章以UNIX、Linux、Windows NT操作系统为实例,具体介绍操作系统的进程管理、内存管理、文件管理与I/O设备管理在上述三种操作系统中的应用,具体的应用是理论知识的印证,而应用的细节与理论之间又是创新的关系。本章介绍的UNIX进程状态转换与控制就与理论介绍中的进程管理有较大差别;Windows NT的二级页表结构也是对理论介绍中的页式系统的改进,而UNIX文件系统的深入介绍也是对文件系统中文件物理结构的补充。通过本章的学习,可以在更深的层面上了解操作系统及系统程序的设计方法,对创新思维人才的培养大有裨益。,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号