书签 分享 收藏 举报 版权申诉 / 48
上传文档赚钱

类型《操作系统原理与实践》课件第7章常见操作系统典型功能和实现方法的举例 .ppt

  • 上传人(卖家):momomo
  • 文档编号:7385177
  • 上传时间:2023-12-16
  • 格式:PPT
  • 页数:48
  • 大小:334.50KB
  • 【下载声明】
    1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
    2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
    3. 本页资料《《操作系统原理与实践》课件第7章常见操作系统典型功能和实现方法的举例 .ppt》由用户(momomo)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
    4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
    5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
    配套讲稿:

    如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

    特殊限制:

    部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

    关 键  词:
    操作系统原理与实践 操作系统原理与实践课件第7章 常见操作系统典型功能和实现方法的举例 操作系统 原理 实践 课件 常见 典型 功能 实现 方法 举例
    资源描述:

    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设

    2、备管理设备管理7.12 Linux I/O设备管理设备管理本章学习目标本章学习目标 UNIX的进程管理及调度,包括进程同步机制介绍的进程管理及调度,包括进程同步机制介绍UNIX文件的物理结构文件的物理结构Linux操作系统文件名到文件分量的映射操作系统文件名到文件分量的映射Windows NT、Linux及及UNIX内存管理技术内存管理技术Linux及及UNIX设备管理设备管理 返回本章首页返回本章首页7.1 Windows NT进程、线程的特点进程、线程的特点 7.1.1 Windows NT进程、线程及对象之间的关系进程、线程及对象之间的关系7.1.2 进程管理程序进程管理程序7.1.3

    3、线程调度线程调度 返回本章首页返回本章首页7.1.1 Windows NT进程、线程及对象之间进程、线程及对象之间的关系的关系 Windows NT中的对象是用来表示资源的,而中的对象是用来表示资源的,而Windows NT的的对象类是描述资源类型的。下面介绍对象类是描述资源类型的。下面介绍Windows NT中实现的两中实现的两种对象:种对象:(1)执行体对象。它是由执行体的核心态组件实现的对象。)执行体对象。它是由执行体的核心态组件实现的对象。如进程、线程、事件等,这些对象能被如进程、线程、事件等,这些对象能被Windows NT执行体创执行体创建和修改。建和修改。(2)内核对象。它是由内

    4、核实现的一个更基本的对象集合。)内核对象。它是由内核实现的一个更基本的对象集合。这些对象对用户进程和线程来说是不可见的,它们在这些对象对用户进程和线程来说是不可见的,它们在Windows NT执行体内部创建和使用。内核对象提供了一些基执行体内部创建和使用。内核对象提供了一些基本功能,许多执行体对象包含着一个或多个内核对象。本功能,许多执行体对象包含着一个或多个内核对象。在在Windows NT中,进程被定义为一个程序的动态调用。中,进程被定义为一个程序的动态调用。Windows NT中的进程由四部分组成:中的进程由四部分组成:(1)一个可执行的程序:它定义了初始代码和数据。)一个可执行的程序:

    5、它定义了初始代码和数据。(2)一个私用地址空间:也就是进程的虚拟地址空间。)一个私用地址空间:也就是进程的虚拟地址空间。(3)系统资源:如通信端口、信号量、文件等。)系统资源:如通信端口、信号量、文件等。(4)至少有一个执行线程。)至少有一个执行线程。Windows NT中的进程具有如下特点:中的进程具有如下特点:(1)进程是作为对象来实现的。)进程是作为对象来实现的。(2)Windows NT中的进程要求至少有一个执行线程。中的进程要求至少有一个执行线程。(3)Windows NT中的进程没有进程控制块中的进程没有进程控制块PCB,进程的控制和管,进程的控制和管理信息存放在进程对象的对象体和

    6、局限于对象的对象表中。理信息存放在进程对象的对象体和局限于对象的对象表中。(4)Windows NT中的进程不是处理机调度的基本单位。中的进程不是处理机调度的基本单位。(5)每当一个用户的应用程序启动时,相应的环境子系统进程调度)每当一个用户的应用程序启动时,相应的环境子系统进程调度执行体的进程管理程序为该用户程序建立一个进程,然后进程管理执行体的进程管理程序为该用户程序建立一个进程,然后进程管理程序调度对象管理程序为该用户程序建立一个进程对象。程序调度对象管理程序为该用户程序建立一个进程对象。(6)当系统初始启动时,系统为每个环境子系统都建立一个服务器)当系统初始启动时,系统为每个环境子系统

    7、都建立一个服务器进程。进程。(7)Windows NT中进程管理程序不维护进程之间的父子关系及其中进程管理程序不维护进程之间的父子关系及其它它其他其他关系。关系。(8)Windows NT中的进程和线程都含有同步机制。中的进程和线程都含有同步机制。进程和线程是构造进程和线程是构造Windows NT的两个活动部分,它们之间的关系归纳的两个活动部分,它们之间的关系归纳如下:如下:(1)线程是进程的一个组成部分。每个)线程是进程的一个组成部分。每个Windows NT进程在创建时只有进程在创建时只有一个线程,需要时这个线程可以创建其它一个线程,需要时这个线程可以创建其它其他其他线程。线程。(2)进

    8、程的多线程都在进程的地址空间活动。)进程的多线程都在进程的地址空间活动。(3)资源是分给进程的,而不是分给线程的,并且系统还为分给进程)资源是分给进程的,而不是分给线程的,并且系统还为分给进程的资源规定了配额。的资源规定了配额。(4)调度的基本单位是线程。线程之间竞争处理机。真正在处理机上)调度的基本单位是线程。线程之间竞争处理机。真正在处理机上执行的是线程,线程在执行中需要资源时,系统从进程的配额中扣除并执行的是线程,线程在执行中需要资源时,系统从进程的配额中扣除并分配给它。分配给它。(5)线程在执行过程中需要同步。在不同进程的线程间的同步要用消)线程在执行过程中需要同步。在不同进程的线程间

    9、的同步要用消息传递机制,消息传递中要用到进程的资源息传递机制,消息传递中要用到进程的资源端口(端口也是对象,端口(端口也是对象,端口中有消息队列)。所以,可以这样说,相互通信的是线程,线程使端口中有消息队列)。所以,可以这样说,相互通信的是线程,线程使用的资源却是进程的。用的资源却是进程的。返回本节返回本节7.1.2 进程管理程序进程管理程序 Windows NT的进程管理程序的主要功能是:创建和终的进程管理程序的主要功能是:创建和终止进程和线程,挂起线程的执行,存储和检索进程和止进程和线程,挂起线程的执行,存储和检索进程和线程的信息。线程的信息。Windows NT中的环境子系统通过完成两个

    10、主要任务中的环境子系统通过完成两个主要任务(一是模拟子系统的客户应用程序的运行环境;二是(一是模拟子系统的客户应用程序的运行环境;二是提供客户应用程序所要求的适应原环境的进程结构)提供客户应用程序所要求的适应原环境的进程结构)来实现来实现Windows NT支持多种操作系统运行环境的功能。支持多种操作系统运行环境的功能。在在Windows NT中进程和线程的创建过程如下:中进程和线程的创建过程如下:(1)客户进程用创建原语创建进程。)客户进程用创建原语创建进程。(2)客户进程通过发送消息给相应的服务器进程(某环境子系)客户进程通过发送消息给相应的服务器进程(某环境子系统)。统)。(3)服务器进

    11、程调用)服务器进程调用Windows NT执行体的进程管理程序为之创执行体的进程管理程序为之创建一个建一个Windows NT本机进程。在此过程中,进程管理程序调用本机进程。在此过程中,进程管理程序调用Windows NT执行体的对象管理程序为该进程创建一个进程对象。执行体的对象管理程序为该进程创建一个进程对象。(注意:(注意:Windows NT把进程创建视为对象创建)把进程创建视为对象创建)(4)进程创建后,进程管理程序返回一个句柄给进程对象。)进程创建后,进程管理程序返回一个句柄给进程对象。(5)环境子系统取得该句柄,生成客户应用程序所期望的适合本)环境子系统取得该句柄,生成客户应用程序

    12、所期望的适合本环境的返回值。环境的返回值。(6)环境子系统调用)环境子系统调用Windows NT的进程管理程序为已创建的新的进程管理程序为已创建的新进程创建一个线程。进程创建一个线程。返回本节返回本节7.1.3 线程调度线程调度 在在Windows NT中,一个线程在它的生命期中要经历以下中,一个线程在它的生命期中要经历以下6种状态。种状态。(1)就绪状态)就绪状态(2)备用状态)备用状态(3)运行状态:)运行状态:(4)等待状态:)等待状态:(5)转换状态:)转换状态:(6)终止状态:)终止状态:返返回本节回本节7.2 UNIX进程管理进程管理 7.2.1 UNIX进程状态进程状态7.2.

    13、2 UNIX进程描述进程描述7.2.3 UNIX进程控制进程控制7.2.4 UNIX进程调度进程调度返回本章首页返回本章首页7.2.1 UNIX进程状态进程状态 返回本节返回本节7.2.2 UNIX进程描述进程描述 在在UNIX系统中,进程被赋予了以下特定的含义和特性:系统中,进程被赋予了以下特定的含义和特性:(1)一个进程是对一个程序的执行。)一个进程是对一个程序的执行。(2)一个进程的存在意味着系统中存在着一个常驻内存)一个进程的存在意味着系统中存在着一个常驻内存的进程表项(的进程表项(proc结构),它包含着相应进程的控制信结构),它包含着相应进程的控制信息。息。(3)对每一个进程,有一

    14、个被称为)对每一个进程,有一个被称为U区(区(user结构)的结构)的数据结构,这个结构中存放着该进程的私用控制信息。数据结构,这个结构中存放着该进程的私用控制信息。该结构只有在相应进程执行时才调入内存。该结构只有在相应进程执行时才调入内存。(4)一个进程可以生成或撤销其子进程。)一个进程可以生成或撤销其子进程。(5)一个进程是获得和释放各种系统资源的基本单位。)一个进程是获得和释放各种系统资源的基本单位。(1)进程表项。记录了进程的状态和有关控制信息。它是常驻内存)进程表项。记录了进程的状态和有关控制信息。它是常驻内存的控制信息。的控制信息。(2)U区。区。U区中的各域进一步刻画了进程的特性

    15、。它是在进程执区中的各域进一步刻画了进程的特性。它是在进程执行时才使用的控制信息,因此这些信息不必常驻内存。行时才使用的控制信息,因此这些信息不必常驻内存。(3)系统区表。)系统区表。UNIX系统把一个进程的虚拟地址空间划分为若干系统把一个进程的虚拟地址空间划分为若干连续的逻辑区,如正文区、数据区、栈区等。这些区是可以被共享连续的逻辑区,如正文区、数据区、栈区等。这些区是可以被共享和保护的独立体,多个进程可以共享一个区。为了对区进行有效的和保护的独立体,多个进程可以共享一个区。为了对区进行有效的管理,管理,UNIX系统在核心设置了一个系统区表(简称区表),各表项系统在核心设置了一个系统区表(简

    16、称区表),各表项记录了描述活动区的有关信息。记录了描述活动区的有关信息。(4)本进程区表。)本进程区表。UNIX系统为每个进程都配置了一张进程区表,系统为每个进程都配置了一张进程区表,以便记录进程的每个区在进程中的虚地址。以便记录进程的每个区在进程中的虚地址。返回本节返回本节7.2.3 UNIX进程控制进程控制 在在UNIX系统中,进程既是一个独立拥有资源的基本单位,系统中,进程既是一个独立拥有资源的基本单位,又是一个独立调度的基本单位。在又是一个独立调度的基本单位。在UNIX系统中,除了系统中,除了0#进程之外,其它进程之外,其它其他其他所有进程都是被另一个进程利用系所有进程都是被另一个进程

    17、利用系统调用统调用fork创建的。调用创建的。调用fork的进程称为父进程,的进程称为父进程,fork创创建的进程叫做子进程,从而构成进程的家族关系。建的进程叫做子进程,从而构成进程的家族关系。0#进进程是一个特殊的系统进程,它是在系统引导时被创建的。程是一个特殊的系统进程,它是在系统引导时被创建的。系统初启时,系统初启时,0#进程创建了进程创建了1#进程,此后进程,此后0#进程就变成进程就变成了交换进程,而了交换进程,而1#进程变成了系统的始祖进程。进程变成了系统的始祖进程。返回本节返回本节7.2.4 UNIX进程调度进程调度 返回本节返回本节7.3 UNIX进程通信与同步机制进程通信与同步

    18、机制 在早期版本的在早期版本的UNIX中,仅为进程的通信与同步提供了软中断信号和管中,仅为进程的通信与同步提供了软中断信号和管道机制。道机制。(1)软中断信号。它是一种实现进程之间简单通信的设施,用于通知)软中断信号。它是一种实现进程之间简单通信的设施,用于通知对方发生了异常事件。软中断是对硬件中断的一种模拟。发送软中断就对方发生了异常事件。软中断是对硬件中断的一种模拟。发送软中断就是向接收进程的进程表项结构中的相应项发送一个软中断信号。接收进是向接收进程的进程表项结构中的相应项发送一个软中断信号。接收进程在收到软中断信号后,将去执行一个软中断处理程序。但是软中断处程在收到软中断信号后,将去执

    19、行一个软中断处理程序。但是软中断处理程序不像硬件中断处理程序那样收到中断信号后立即被启动,而是必理程序不像硬件中断处理程序那样收到中断信号后立即被启动,而是必须等待接收进程执行时才生效。须等待接收进程执行时才生效。(2)管道机制。管道是指能连接某些读进程和写进程的专门用于进程)管道机制。管道是指能连接某些读进程和写进程的专门用于进程通信的共享文件(通信的共享文件(pipe文件),它允许读、写进程按先进先出的方式进文件),它允许读、写进程按先进先出的方式进行大批量的信息传送。也就是说,写进程从管道的一端向管道写入数据行大批量的信息传送。也就是说,写进程从管道的一端向管道写入数据流,而读进程则从管

    20、道的另一端读出数据流。流,而读进程则从管道的另一端读出数据流。UNIX系统中的进程通信可分为系统中的进程通信可分为4个部分:低级通信、管道通信、进程间个部分:低级通信、管道通信、进程间通信和网络进程间通信。通信和网络进程间通信。返回本章首页返回本章首页7.4 Windows NT文件系统文件系统 7.4.1 FAT文件分配表文件分配表7.4.2 NTFS文件系统文件系统返回本章首页返回本章首页7.4.1 FAT文件分配表文件分配表 FAT文件系统有如下特点:文件系统有如下特点:(1)支持长文件名。包括全路径位置,最多不)支持长文件名。包括全路径位置,最多不超过超过255个字符的文件名。个字符的

    21、文件名。(2)不提供本地安全性。没有任何存取权限的)不提供本地安全性。没有任何存取权限的限制,任何用户都可以操作整个硬盘中的内容和限制,任何用户都可以操作整个硬盘中的内容和资料。资料。(3)最大文件)最大文件/分区大小为分区大小为4GB。7.4.2 NTFS文件系统文件系统 NTFS文件系统的特点:文件系统的特点:(1)支持长文件名称的操作。文件及文件夹(包括扩展名)名字最长为)支持长文件名称的操作。文件及文件夹(包括扩展名)名字最长为255个字符。个字符。(2)提供了)提供了C2的安全等级。的安全等级。NTFS允许向单个文件及文件夹指定权限,提允许向单个文件及文件夹指定权限,提供对服务器或个

    22、人计算机所需的安全性的支持。供对服务器或个人计算机所需的安全性的支持。(3)支持比)支持比FAT文件系统更大的文件与分区,理论上两者均可达到文件系统更大的文件与分区,理论上两者均可达到16EB,而而NTFS在典型硬件上实际最大分区可以达到在典型硬件上实际最大分区可以达到2TB。(4)支持文件压缩。可以将文本性质的应用或数据文件压缩大约)支持文件压缩。可以将文本性质的应用或数据文件压缩大约50%,将,将可执行文件压缩大约可执行文件压缩大约40%。(5)支持族的再映射。由硬盘扇区损坏而引起的读写错误,)支持族的再映射。由硬盘扇区损坏而引起的读写错误,NTFS可将损可将损坏扇区的数据写入其它坏扇区的

    23、数据写入其它其他其他未损坏的扇区,同时记录有坏扇区的族的地址,未损坏的扇区,同时记录有坏扇区的族的地址,防止以后再使用它。防止以后再使用它。(6)支持)支持Macintosh文件。文件。(7)支持支持POSIX需求。需求。NTFS是是Windows POSIX.1兼容支持的文件系统。兼容支持的文件系统。7.5 UNIX文件系统索引结构介绍文件系统索引结构介绍 1UNIX系统的文件类型系统的文件类型 2文件系统的目录结构文件系统的目录结构 3文件的物理结构文件的物理结构4文件逻辑块号到物理块号的转换文件逻辑块号到物理块号的转换返回本章首页返回本章首页1UNIX系统的文件类型系统的文件类型UNIX

    24、系统中的文件分为系统中的文件分为3种类型:种类型:(1)目录文件)目录文件(2)普通文件)普通文件(3)特殊文件)特殊文件 2文件系统的目录结构文件系统的目录结构正如前面所述,正如前面所述,UNIX文件系统采用的是多级的文件系统采用的是多级的树形目录结构。整个目录就像一棵倒挂的树,根树形目录结构。整个目录就像一棵倒挂的树,根目录在最上面。下面有树干树枝(目录、子目目录在最上面。下面有树干树枝(目录、子目录),有树叶(文件)。特殊文件存放在一级子录),有树叶(文件)。特殊文件存放在一级子目录目录/dev中,其它中,其它其他其他所有各级目录中存放的全所有各级目录中存放的全是普通文件和目录文件。是普

    25、通文件和目录文件。3文件的物理结构文件的物理结构(1)直接寻址方式。)直接寻址方式。UNIX系统为了提高对文件的检索速度,在索系统为了提高对文件的检索速度,在索引节点中建立了引节点中建立了10个地址项用来直接存放该文件所在的盘块号。个地址项用来直接存放该文件所在的盘块号。(2)一级间接寻址方式。)一级间接寻址方式。UNIX系统还提供一级间接寻址方式。在系统还提供一级间接寻址方式。在这种寻址方式中,一级间接地址项中存放的不是文件所在的物理盘这种寻址方式中,一级间接地址项中存放的不是文件所在的物理盘块号,而是先将块号,而是先将1256个盘块号存放在一个磁盘块中,再将该文件个盘块号存放在一个磁盘块中

    26、,再将该文件所在的磁盘的块号存放在这一地址中。所在的磁盘的块号存放在这一地址中。(3)多级间接寻址方式。)多级间接寻址方式。UNIX系统为了进一步扩大寻址范围,还系统为了进一步扩大寻址范围,还引入了二级间接寻址方式和三级间接寻址方式。引入了二级间接寻址方式和三级间接寻址方式。4文件逻辑块号到物理块号的转换文件逻辑块号到物理块号的转换 根据逻辑盘块号可以求出对应的文件地址是直接地址还是间接地址,然后针根据逻辑盘块号可以求出对应的文件地址是直接地址还是间接地址,然后针对不同的地址采用不同的方法进行转换。对不同的地址采用不同的方法进行转换。(1)直接地址。当文件逻辑盘块号小于)直接地址。当文件逻辑盘

    27、块号小于10时,将其逻辑盘块号转换为物理时,将其逻辑盘块号转换为物理块号的方法是将文件逻辑块号转换为索引节点的地址项下标,从该下标指示块号的方法是将文件逻辑块号转换为索引节点的地址项下标,从该下标指示的地址项中可直接获得该文件的物理盘块号。的地址项中可直接获得该文件的物理盘块号。(2)间接地址。)间接地址。l一级间接地址寻址。当文件逻辑盘块号大于或等于一级间接地址寻址。当文件逻辑盘块号大于或等于10且小于且小于266(256+10)时,将其逻辑块号转换成物理块号的方法是:从索引节点的一级间接项中得时,将其逻辑块号转换成物理块号的方法是:从索引节点的一级间接项中得到的是一级间接的盘块号,根据该间

    28、接块的内容计算一级间接块中的地址下到的是一级间接的盘块号,根据该间接块的内容计算一级间接块中的地址下标,即将文件的逻辑块号减标,即将文件的逻辑块号减10,从相应下标的地址项中得到物理块号。,从相应下标的地址项中得到物理块号。l多级间接地址寻址。当文件的逻辑盘块号大于或等于多级间接地址寻址。当文件的逻辑盘块号大于或等于266且小于且小于65802(256*265+266)时,应采用二级间接地址寻址;当文件的逻辑盘块号大于)时,应采用二级间接地址寻址;当文件的逻辑盘块号大于或等于或等于65802时,应采用三级间接地址寻址。时,应采用三级间接地址寻址。【例例1】假定一个索引节点为假定一个索引节点为1

    29、28字节,指针为字节,指针为4字节长,而状态信息占用字节长,而状态信息占用68个字节,每块的大小个字节,每块的大小为为8KB。问:。问:(1)在索引节点中有多大的空间给指针?)在索引节点中有多大的空间给指针?(2)使用直接指针、一级间接指针、二级间接)使用直接指针、一级间接指针、二级间接指针和三级间接指针分别可以表示多大的文件?指针和三级间接指针分别可以表示多大的文件?【例例2】假定盘块的大小为假定盘块的大小为1KB,每个盘块号占,每个盘块号占4个字节,文件索引节点中的磁盘地址如图个字节,文件索引节点中的磁盘地址如图7.5所所示,如何将下列文件的字节偏移地址转换为物理示,如何将下列文件的字节偏

    30、移地址转换为物理地址。地址。(1)8112;(;(2)14000;(;(3)350000。返回本返回本节节7.6 Linux文件系统文件系统 Linux支持多种不同的文件系统,这是支持多种不同的文件系统,这是Linux的一个重要特征。目前,的一个重要特征。目前,Linux系统支持大约系统支持大约15个文件系统:个文件系统:EXT、EXT2、XIA、MINIX、UMSDOS、MSDOS、VFAT、PROC、SUM、NCP、ISO9660、SYSV、HPFS、AFFS和和UFS。其中。其中EXT、EXT2是是Linux自己的文件自己的文件系统。系统。在在Linux系统中,整个系统是一种树形结构,每

    31、个单独的文件系统是系统中,整个系统是一种树形结构,每个单独的文件系统是这个树形结构中的一部分。当需要挂接一个新的文件系统时,不管这个树形结构中的一部分。当需要挂接一个新的文件系统时,不管是什么类型,是什么类型,Linux把它挂接到这个树形的文件系统中的一个目录下,把它挂接到这个树形的文件系统中的一个目录下,并隐藏目录中原有的内容。这个目录被称为挂接目录或挂接点。当并隐藏目录中原有的内容。这个目录被称为挂接目录或挂接点。当该文件系统被卸载时,这个目录中原有的内容才再次显示出来。该文件系统被卸载时,这个目录中原有的内容才再次显示出来。返回本章首页返回本章首页引进引进EXT文件系统后,文件系统后,L

    32、inux有了一个重大的改进:真正有了一个重大的改进:真正的文件系统从操作系统和系统服务中分离出来,在它们的文件系统从操作系统和系统服务中分离出来,在它们之间使用了一个接口层之间使用了一个接口层VFS(Virtual File System,虚拟文件系统)。虚拟文件系统)。VFS允许允许Linux支持多种不同的文件系支持多种不同的文件系统,每个文件系统都要提供给统,每个文件系统都要提供给VFS一个相同的接口。这一个相同的接口。这样所有的文件系统对系统内核和系统中的程序来说都是样所有的文件系统对系统内核和系统中的程序来说都是相同的。相同的。Linux系统中的系统中的VFS层使得用户可以同时在系统层

    33、使得用户可以同时在系统中透明地挂接很多不同的文件系统。中透明地挂接很多不同的文件系统。7.6 Linux文件系统文件系统7.6.1 EXT2文件系统文件系统7.6.2 EXT2索引节点索引节点7.6.3 EXT2超级块超级块7.6.4 EXT2中的目录中的目录 7.6.1 EXT2文件系统文件系统 EXT2现在被称为现在被称为“Linux文件系统文件系统”,是,是Linux用户最常用户最常使用的文件系统。各种使用的文件系统。各种Linux的系统发布都将的系统发布都将EXT2文件系文件系统作为操作系统的基础。统作为操作系统的基础。EXT2文件系统结构示意图如图文件系统结构示意图如图7.6所示。所

    34、示。返回返回本节本节7.6.2 EXT2索引节点索引节点 索引节点是索引节点是EXT2文件系统的基础,因为文件系统的基础,因为EXT2文件系统文件系统中的每一个文件和目录都使用一个唯一的索引节点。其中的每一个文件和目录都使用一个唯一的索引节点。其结构如图结构如图7.7所示。所示。返回返回本节本节7.6.3 EXT2超级块超级块 超级块主要包括如下信息:超级块主要包括如下信息:(1)幻数()幻数(Magic Number)(2)修订级别()修订级别(Revision Level)(3)挂接数()挂接数(Mount Count)和最大挂接数()和最大挂接数(Maximum Mount Count)

    35、(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文件系统中,目录是一些特殊的文件,它们用来创建和保存文件系统中,目录是一些特殊的文件,它们用来创建和保存系统中文件的存取路径。一个目录入口在内存中的结构如图系统中文件的存取路径。一个目录入口在

    36、内存中的结构如图7.8所示。所示。返回返回本节本节7.7 UNIX NFS文件系统文件系统 网络文件系统(网络文件系统(Network File System,NFS)是)是UNIX系系统之间互相共享磁盘资源的一种方法。在异构型的环境统之间互相共享磁盘资源的一种方法。在异构型的环境中,中,NFS才真正可以发挥优势。才真正可以发挥优势。NFS最主要的特点是它的健壮性。它是一个无状态协议,最主要的特点是它的健壮性。它是一个无状态协议,也就是说在客户和服务器之间产生的每个请求本身是完也就是说在客户和服务器之间产生的每个请求本身是完整的,不必知道以前的执行情况。整的,不必知道以前的执行情况。NFS主要

    37、的缺憾是它的设计本身是不安全的。这就要求主要的缺憾是它的设计本身是不安全的。这就要求在任何时候通过在任何时候通过NFS将磁盘共享给其它将磁盘共享给其它其他其他的计算机时,的计算机时,需要给该计算机的用户一定的信任度。需要给该计算机的用户一定的信任度。返回本章首页返回本章首页7.8 Windows NT存储管理的二级页表结构存储管理的二级页表结构 Windows NT的虚拟存储管理程序是的虚拟存储管理程序是Windows NT的基本的基本存储管理系统,是存储管理系统,是Windows NT执行体的重要组成部分之执行体的重要组成部分之一。一。Windows NT的虚拟存储管理系统为每一个进程提供了

    38、一的虚拟存储管理系统为每一个进程提供了一个很大的虚拟地址空间。为了做到这一点,个很大的虚拟地址空间。为了做到这一点,Windows NT放弃了早期个人计算机使用的分段模式,而采用了请求放弃了早期个人计算机使用的分段模式,而采用了请求分页式的虚拟存储管理技术。分页式的虚拟存储管理技术。Windows NT虚拟存储管理的实现包括两个方面:地址变虚拟存储管理的实现包括两个方面:地址变换机构和页面调度策略。在本书中我们将主要介绍换机构和页面调度策略。在本书中我们将主要介绍Windows NT的地址变换机构。的地址变换机构。返回本章首页返回本章首页Windows NT的地址变换机构不同于传统的页面地的地

    39、址变换机构不同于传统的页面地址变换机构,它采用的是一种称为两级页表结构的址变换机构,它采用的是一种称为两级页表结构的技术。具体实现如图技术。具体实现如图7.10所示:所示:返回本返回本节节7.9 Linux系统的内存管理技术系统的内存管理技术 Linux操作系统的内存管理技术采用的是段页式虚操作系统的内存管理技术采用的是段页式虚拟存储技术。内存管理程序首先通过映射机制把拟存储技术。内存管理程序首先通过映射机制把用户程序的逻辑地址映射到物理空间上,即转化用户程序的逻辑地址映射到物理空间上,即转化为物理地址,在用户程序运行时若发现程序中用为物理地址,在用户程序运行时若发现程序中用到的虚拟地址没有对

    40、应的物理内存时,就发出请到的虚拟地址没有对应的物理内存时,就发出请页要求。如果有足够的内存空间可供分配,则请页要求。如果有足够的内存空间可供分配,则请求分配内存。如果没有足够的内存空间可供分配,求分配内存。如果没有足够的内存空间可供分配,则使用交换机制,腾出一部分内存空间。则使用交换机制,腾出一部分内存空间。返回本章首页返回本章首页lLinux系统使用需要时装入技术将可执行代码装入到进程系统使用需要时装入技术将可执行代码装入到进程的虚拟内存中。的虚拟内存中。lLinux系统采用系统采用“最近最少使用最近最少使用”(LRU)技术来决定把)技术来决定把哪一个页面从物理内存中移出。哪一个页面从物理内

    41、存中移出。l操作系统一般使用高速缓存来提高系统性能,以获得最大操作系统一般使用高速缓存来提高系统性能,以获得最大的系统效用。的系统效用。lLinux系统的内存管理程序通过内核中的交换守护进程来系统的内存管理程序通过内核中的交换守护进程来释放物理内存页,以解决物理内存变少的问题。释放物理内存页,以解决物理内存变少的问题。下一页下一页7.10 UNIX内存管理技术内存管理技术 在在UNIX操作系统中,除保留了交换机制外,还支操作系统中,除保留了交换机制外,还支持请求分页存储管理方式,内存空间的分配和回收持请求分页存储管理方式,内存空间的分配和回收都以页为单位进行。页面的大小为都以页为单位进行。页面

    42、的大小为512B4KB。为实现请求分页存储管理,系统配置了为实现请求分页存储管理,系统配置了4种数据结种数据结构,即页表、磁盘块描述表、页框数据表和交换使构,即页表、磁盘块描述表、页框数据表和交换使用表,并专门设置了一个换页进程。用表,并专门设置了一个换页进程。返回本章首页返回本章首页系统内核应具备三个功能:交换空间的管理、进程系统内核应具备三个功能:交换空间的管理、进程换入和进程换出。换入和进程换出。UNIX系统的请求分页存储管理技术配置了系统的请求分页存储管理技术配置了4种数据种数据结构结构:页表:页表,磁盘块描述表,磁盘块描述表,页框数据表,页框数据表,交换,交换使用表使用表。换页进程主

    43、要用来增加内存中所有有效页的年龄以换页进程主要用来增加内存中所有有效页的年龄以及将内存中长期不用的页面换出,以支持及将内存中长期不用的页面换出,以支持UNIX操作操作系统的请求分页存储管理技术。系统的请求分页存储管理技术。7.11 UNIX I/O设备管理设备管理 UNIX操作系统将设备分为两类:块设备和字符设备。操作系统将设备分为两类:块设备和字符设备。UNIX系统的设备管理主要有两个特点:系统的设备管理主要有两个特点:第一个特点是:第一个特点是:UNIX将各类设备当作文件来管理。每个将各类设备当作文件来管理。每个I/O设备都和一个磁盘文件相联系,由文件系统管理,对其设备都和一个磁盘文件相联

    44、系,由文件系统管理,对其的读的读/写操作和对用户数据文件的操作一样。写操作和对用户数据文件的操作一样。第二个特点是:第二个特点是:UNIX设备管理采用了缓冲技术,主要有块设备管理采用了缓冲技术,主要有块设备缓冲设备缓冲 和字符设备缓冲区和字符设备缓冲区。返回本章首页返回本章首页7.12 Linux I/O设备管理设备管理 设备管理的一个基本目标就是对设备的抽象处理。设备管理的一个基本目标就是对设备的抽象处理。系统中的所有硬件设备看起来都和一般的文件一系统中的所有硬件设备看起来都和一般的文件一样,它们可以使用处理文件的标准系统调用来打样,它们可以使用处理文件的标准系统调用来打开、关闭和读写。系统

    45、中的每一个设备都由一个开、关闭和读写。系统中的每一个设备都由一个设备文件来代表。设备文件来代表。Linux系统支持三种类型的硬件设备:字符设备、系统支持三种类型的硬件设备:字符设备、块设备、网络设备。块设备、网络设备。返回本章首页返回本章首页Linux系统支持多种设备,这些设备的驱动程序系统支持多种设备,这些设备的驱动程序之间有一些共同的特点:它们都是内核代码,之间有一些共同的特点:它们都是内核代码,所以一旦驱动程序出现错误,整个系统将被严重所以一旦驱动程序出现错误,整个系统将被严重破坏;它们都必须为系统内核或其子系统提供破坏;它们都必须为系统内核或其子系统提供一个标准的接口;它们都利用一些标

    46、准的内核一个标准的接口;它们都利用一些标准的内核服务;大多数的服务;大多数的Linux设备驱动程序都可以在设备驱动程序都可以在需要时装入内核,在不需要时卸载;需要时装入内核,在不需要时卸载;Linux系系统设备驱动程序将集成为系统内核的哪一部分是统设备驱动程序将集成为系统内核的哪一部分是可以设置的,它将在系统编译时设置;可以设置的,它将在系统编译时设置;Linux的设备驱动程序具有动态性,即当系统启动并且的设备驱动程序具有动态性,即当系统启动并且各个设备驱动程序初始化以后,驱动程序将维护各个设备驱动程序初始化以后,驱动程序将维护其控制的设备。其控制的设备。返回本章首页返回本章首页THANK YOU VERY MUCH!本章到此结束,本章到此结束,谢谢您谢谢您 的光临!的光临!返回本章首页返回本章首页结结 束束

    展开阅读全文
    提示  163文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    关于本文
    本文标题:《操作系统原理与实践》课件第7章常见操作系统典型功能和实现方法的举例 .ppt
    链接地址:https://www.163wenku.com/p-7385177.html

    Copyright@ 2017-2037 Www.163WenKu.Com  网站版权所有  |  资源地图   
    IPC备案号:蜀ICP备2021032737号  | 川公网安备 51099002000191号


    侵权投诉QQ:3464097650  资料上传QQ:3464097650
       


    【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。

    163文库