操作系统_2013new_第1页
操作系统_2013new_第2页
操作系统_2013new_第3页
操作系统_2013new_第4页
操作系统_2013new_第5页
已阅读5页,还剩93页未读 继续免费阅读

下载本文档

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

文档简介

1、操作系统操作系统Operating Systems费翔林费翔林 操作系统教程操作系统教程(4)高教社,高教社,2008葛季栋多多道道程程序序设设计计程序的动程序的动态概念态概念内存管理内存管理提高性能和利用率提高性能和利用率提高提高CPU与与I/O,I/O之间的并行度之间的并行度固定固定/动态分区、动态分区、分页分页/分段分段处理器管理处理器管理/进程抽象进程抽象I/O设备管理设备管理设备抽象设备抽象, I/O软件的分层软件的分层虚存抽象虚存抽象处理器调度处理器调度虚拟分页虚拟分页虚拟段页式虚拟段页式文件抽象文件抽象单单/多线程结构进程多线程结构进程中断技术中断技术虚拟分段虚拟分段并发进程并发

2、进程, 同步与互斥同步与互斥(PV, 管程管程, 进程通信进程通信)磁盘管理磁盘管理/调度调度死锁问题死锁问题, 必要条件必要条件, 预预防防, 避免避免, 检测和解除检测和解除文件逻辑结构文件逻辑结构文件物理结构文件物理结构文件目录文件目录, 共享与保护共享与保护虚拟文件系统虚拟文件系统I/O控制方式控制方式, 缓冲技术缓冲技术设备分配设备分配, 虚拟设备虚拟设备Spooling文件管理文件管理文件系统文件系统文件抽象文件抽象Chap3Chap4Chap6Chap2Chap5Roadmap安全与保护安全与保护 Chap 7,网络和分布式,网络和分布式 Chap8主要内容主要内容l第一章、操作

3、系统概述第一章、操作系统概述l第二第二/三章、进程和处理机管理、进程同步、三章、进程和处理机管理、进程同步、互斥、通信与死锁互斥、通信与死锁l第四章、存储管理第四章、存储管理l第五章、设备管理和第五章、设备管理和I/O系统系统l第六章、文件管理第六章、文件管理第一章、操作系统概述第一章、操作系统概述l操作系统的定义操作系统的定义l操作系统的特征操作系统的特征l操作系统的功能操作系统的功能l操作系统的分类操作系统的分类第二第二/三章、进程和处理机管理,进程同步、三章、进程和处理机管理,进程同步、互斥、通信与死锁互斥、通信与死锁l进程进程定义定义特征特征组成组成l进程管理进程管理五状态模型五状态模

4、型l进程协作进程协作互斥、同步互斥、同步死锁死锁l处理机调度(作业管理)处理机调度(作业管理)调度算法调度算法第四章、存储管理第四章、存储管理l内存管理内存管理基本原理基本原理分区调度分区调度l虚存管理虚存管理页面调度页面调度l磁盘管理磁盘管理磁盘调度磁盘调度第五章、设备管理和第五章、设备管理和I/O系统系统lI/O设备数据传送控制方式设备数据传送控制方式l中断技术中断技术l虚拟设备虚拟设备lSpooling技术技术第六章、文件管理第六章、文件管理l文件文件概念概念实现实现l目录目录实现实现lFAT32文件系统文件系统物理设备微程序机器语言O.S.命令解释器编译编辑银行系统,飞机订票硬件系统软

5、件应用程序图图1.2OSXENIXdos. UNIX.应用程序裸机(硬件)第一章、操作系统概述第一章、操作系统概述l操作系统的定义操作系统的定义操作系统是计算机系统的一个系统软件,它是这样的一些程操作系统是计算机系统的一个系统软件,它是这样的一些程序模块的集合:它们能有效的组织和管理计算机系统中的硬序模块的集合:它们能有效的组织和管理计算机系统中的硬件及软件资源,合理的组织计算机工作流程,控制程序的执件及软件资源,合理的组织计算机工作流程,控制程序的执行,并向用户提供各种服务功能,使得用户能够灵活、方便、行,并向用户提供各种服务功能,使得用户能够灵活、方便、有效的使用计算机,使整个计算机系统能

6、高效地运行。有效的使用计算机,使整个计算机系统能高效地运行。l两方面作用两方面作用管理系统中的各种资源,包括硬件及软件资源管理系统中的各种资源,包括硬件及软件资源为用户提供良好的为用户提供良好的接口接口l普通用户界面普通用户界面l编程接口编程接口API操作系统的特征操作系统的特征l并发性并发性 - 指若干事件在指若干事件在同一时间间隔同一时间间隔内发生内发生 l共享性共享性 l随机性随机性 操作系统的功能操作系统的功能l进程管理进程管理对处理机进行管理对处理机进行管理l作业管理作业管理OS向用户提供使用它自己的手段向用户提供使用它自己的手段l存储管理存储管理管理存储资源管理存储资源操作系统的功

7、能操作系统的功能l文件管理文件管理有效的支持文件的存储、检索和修改等操作,解决有效的支持文件的存储、检索和修改等操作,解决文件的共享、保密和保护问题,以便用户方便安全文件的共享、保密和保护问题,以便用户方便安全地访问文件。地访问文件。l设备管理设备管理对计算机系统中的所有输入对计算机系统中的所有输入/输出设备的管理。输出设备的管理。l其他功能其他功能系统安全、网络通信等系统安全、网络通信等操作系统的分类操作系统的分类l批处理操作系统批处理操作系统l分时操作系统分时操作系统l实时操作系统实时操作系统l嵌入式操作系统嵌入式操作系统l网络操作系统网络操作系统l分布式操作系统分布式操作系统l个人计算机

8、操作系统个人计算机操作系统l智能卡操作系统智能卡操作系统第二、三章第二、三章 进程进程进程定义和描述进程定义和描述l进程是一个具有一定独立功能的程序在一个数进程是一个具有一定独立功能的程序在一个数据集合上的一次动态执行过程。据集合上的一次动态执行过程。l作为描述程序执行过程的概念,进程具有动态作为描述程序执行过程的概念,进程具有动态性、独立性、并发性和结构化等特征。性、独立性、并发性和结构化等特征。进程与程序的区别和联系进程与程序的区别和联系l进程是动态的,程序是静态的。进程是动态的,程序是静态的。l进程是暂时的,程序是永久的。进程是暂时的,程序是永久的。l进程和程序的组成不同。进程包括程序、

9、数据进程和程序的组成不同。进程包括程序、数据和进程控制块。和进程控制块。l进程和程序是密切相关的。通过多次执行,一进程和程序是密切相关的。通过多次执行,一个程序可对应多个进程;通过调用关系,一个个程序可对应多个进程;通过调用关系,一个进程可以包括多个程序。进程可以创建其他进进程可以包括多个程序。进程可以创建其他进程,而程序不能形成新的程序。程,而程序不能形成新的程序。进程控制块进程控制块l进程由进程由 代码、数据和进程控制块代码、数据和进程控制块PCB组成组成lPCB 是由操作系统维护的用来记录进程相关是由操作系统维护的用来记录进程相关信息的数据结构。信息的数据结构。l进程控制块的内容分为进程

10、描述信息、进程控进程控制块的内容分为进程描述信息、进程控制信息、资源占用信息和处理机现场保护结构制信息、资源占用信息和处理机现场保护结构4个部分。个部分。五状态进程模型五状态进程模型创建阻塞退出就绪运行创建新进程提交超时释放事件出现 等待事件调度作业调度算法作业调度算法l先来先服务算法(先来先服务算法(First Come First Service)基本思想是按照进程到达的先后顺序进行调度基本思想是按照进程到达的先后顺序进行调度l最短作业优先算法(最短作业优先算法(Shortest Job First)要求作业在开始执行时预计执行时间,给预计执行要求作业在开始执行时预计执行时间,给预计执行时

11、间短的作业优先分派处理机。后来的短作业不抢时间短的作业优先分派处理机。后来的短作业不抢现正在执行的作业。现正在执行的作业。l优先级算法(优先级算法(Priority Scheduling)是多级队列的改进,协调各进程队列中进程的响应是多级队列的改进,协调各进程队列中进程的响应时间要求。分为抢占式和非抢占式。时间要求。分为抢占式和非抢占式。作业调度作业调度l计算各种调度算法下作业队列的计算各种调度算法下作业队列的平均周转时间平均周转时间调度的类型调度的类型l长程调度长程调度: 决定加入到等待执行的进程池中决定加入到等待执行的进程池中l中程调度中程调度:决定加入到部分或全部在主存中的进:决定加入到

12、部分或全部在主存中的进程集合中。程集合中。l短程调度短程调度:决定哪一个可用进程将保持处理器执:决定哪一个可用进程将保持处理器执行。行。lI/O调度调度:决定哪一个进程挂起的:决定哪一个进程挂起的I/O请求将被可请求将被可用的用的I/O设备处理。设备处理。 调度的决策模式调度的决策模式l非抢占非抢占:在这种情况下,一旦进程处于运行态,它就在这种情况下,一旦进程处于运行态,它就不断执行直到终止,或者为等待不断执行直到终止,或者为等待I/O或请求某或请求某些操作系统服务而阻塞自己。些操作系统服务而阻塞自己。 调度的决策模式调度的决策模式l抢占抢占:当前正在运行的进程可能被操作系统中断,并转移到就绪

13、当前正在运行的进程可能被操作系统中断,并转移到就绪态。关于抢占的决策可能是在一个态。关于抢占的决策可能是在一个新进程到达新进程到达时,或者在时,或者在一个一个中断中断发生后把一个被阻塞的进程置为就绪态时,或者发生后把一个被阻塞的进程置为就绪态时,或者基于基于周期性的时间周期性的时间中断。中断。 与非抢占策略相比,抢占策略可能会与非抢占策略相比,抢占策略可能会导致较大的开销导致较大的开销,但,但是可能对所有进程会提供较好的服务,因为它们避免了任是可能对所有进程会提供较好的服务,因为它们避免了任何一个进程独占处理器太长时间。此外,通过使用有效的何一个进程独占处理器太长时间。此外,通过使用有效的进程

14、切换机制进程切换机制(尽可能地获得硬件的帮助尽可能地获得硬件的帮助),以及提供比较,以及提供比较大的主存,使得大部分程序都在主存中,可使抢占的代价大的主存,使得大部分程序都在主存中,可使抢占的代价相对比较低。相对比较低。 习题习题 - 作业调度作业调度先来先服务算法先来先服务算法 (FCFS)l最简单的调度策略是最简单的调度策略是先来先服务先来先服务,也称为先进先出或者严格,也称为先进先出或者严格排队方案。排队方案。l当每个进程就绪后,它加入就绪队列。当当前正在运行的进当每个进程就绪后,它加入就绪队列。当当前正在运行的进程停止执行时,选择在就绪队列中存在时间最长的进程运行。程停止执行时,选择在

15、就绪队列中存在时间最长的进程运行。 非抢占非抢占FCFS最短作业优先算法最短作业优先算法l最短进程优先是一个非抢占的策略,其原则是下一次选择最短进程优先是一个非抢占的策略,其原则是下一次选择所需处理时间最短的进程。所需处理时间最短的进程。l短进程将会越过长作业,跳到队列头。短进程将会越过长作业,跳到队列头。 非抢占非抢占最短作业优先算法最短作业优先算法进程的协作进程的协作l进程的调度进程的调度并发并发l协作关系协作关系同步同步l竞争关系竞争关系互斥互斥互斥算法互斥算法l临界资源是指计算机系统中需要互斥使用的硬件临界资源是指计算机系统中需要互斥使用的硬件或软件资源,如外设、共享代码段、共享数据结

16、或软件资源,如外设、共享代码段、共享数据结构等。构等。(在一段时间内,只允许一个进程访问的资源在一段时间内,只允许一个进程访问的资源)l临界区是指进程中访问临界资源的一段代码。临界区是指进程中访问临界资源的一段代码。信号量信号量l信号量:由操作系统提供的管理公有资源的有效手段。信号信号量:由操作系统提供的管理公有资源的有效手段。信号量代表可用资源实体的数量,量代表可用资源实体的数量,0表示还有可用的资源,新来的进程可以直接执行,表示还有可用的资源,新来的进程可以直接执行,0表示已经没有可用的资源,有进程因此而阻塞,表示已经没有可用的资源,有进程因此而阻塞,0表示已经没有可用的资源,也没有进程在

17、等待该资源。表示已经没有可用的资源,也没有进程在等待该资源。P原语原语lP(s):把信号量:把信号量s 减去减去1,如果计算后的信号量,如果计算后的信号量s小于小于0 ,则阻塞该进程则阻塞该进程V原语原语l V(s):把信号量:把信号量s 加加1,如果计算后的信号量,如果计算后的信号量s小于或小于或等于等于0,则从阻塞队列中激活一个等待的进程,则从阻塞队列中激活一个等待的进程生产者生产者-消费者问题消费者问题l解决若干进程通过有限的共享缓冲区交换数据解决若干进程通过有限的共享缓冲区交换数据时的缓冲区资源使用问题。时的缓冲区资源使用问题。lOne Producer, One Consumer,

18、N BufferslOne Producer,N Consumer, N BufferslN Producer, One Consumer, N BufferslN Producer, N Consumer, N Buffers一个生产者一个生产者, 一个消费者一个消费者, 缓冲区容量为缓冲区容量为Nreadcount:=0semaphore Rmutex,Wmutex; Rmutex=1;Wmutex=1;Cobeginprocess reader_i( ) P(Rmutex); if(readcount=0) P(Wmutex); readcount+; V(Rmutex);读文件; P(

19、Rmutex); readcount-; if(readcount=0) V(Wmutex); V(Rmutex);process writer_j( ) P(Wmutex); 写文件; V(Wmutex); coend信号量解决读者写者问题-读者优先哲学家吃通心粉问题哲学家吃通心粉问题l有五个哲学家围坐在一圆桌旁,桌子中央有一有五个哲学家围坐在一圆桌旁,桌子中央有一盘通心面,每人面前有一只空盘子,每两人之盘通心面,每人面前有一只空盘子,每两人之间放一把叉子。每个哲学家思考、饥饿、然后,间放一把叉子。每个哲学家思考、饥饿、然后,欲吃通心面。为了吃面,每个哲学家必须获得欲吃通心面。为了吃面,每个

20、哲学家必须获得两把叉子,且每人只能直接从自己左边或右边两把叉子,且每人只能直接从自己左边或右边去取叉子。去取叉子。错误的解法错误的解法出现死锁出现死锁 semaphore fork5; for (int i=0;i物理内存映物理内存映射射)页框号页框号不连续,不连续,非连续的非连续的内存空间内存空间分页式存储管理分页式存储管理: 逻辑地址逻辑地址 物理地址物理地址lLogical addresslPhysical addressPage NumoffsetFrame Numoffset例子例子: 分页式管理的逻辑地址分页式管理的逻辑地址-物理地址转换计算物理地址转换计算l页面与帧的大小为页面与

21、帧的大小为10241024字节字节, , 指令指令 MOV 2100, 3100 MOV 2100, 3100 l求求MOVMOV指令中两个操作数的物理地址指令中两个操作数的物理地址l2100 2100 102410242 2 52523468页表地址控制寄存器 2 52 6 52主存6196offsetPage numoffsetframe numl页面与帧的大小为页面与帧的大小为10241024字节字节, , 指令指令 MOV 2100, 3100 MOV 2100, 3100 l求求MOVMOV指令中两个操作数的物理地址指令中两个操作数的物理地址l3100 3100 ? =? =1024

22、10243 3 28283468页表地址控制寄存器主存8220offsetPage numoffsetframe num282838例子例子: 分页式管理的逻辑地址分页式管理的逻辑地址-物理地址转换计算物理地址转换计算?段式存储管理基本原理段式存储管理基本原理l将程序的地址空间划分为若干段将程序的地址空间划分为若干段(segment),这样每个进程都有一个二维),这样每个进程都有一个二维的地址空间。系统为每个段分配一个连续的分的地址空间。系统为每个段分配一个连续的分区,而进程中的各个段可以不连续的存放在内区,而进程中的各个段可以不连续的存放在内存的不同分区中。程序加载时,存的不同分区中。程序加

23、载时,OS为所有段为所有段分配其所需内存,这些段不必连续。段式存储分配其所需内存,这些段不必连续。段式存储管理也需要硬件支持,实现逻辑地址到物理地管理也需要硬件支持,实现逻辑地址到物理地址的映射。址的映射。程序的用户视图程序的用户视图分段管理的逻辑视图分段管理的逻辑视图13241423用户空间的逻辑视图用户空间的逻辑视图物理的内存空间物理的内存空间分段式存储管理的基本原理分段式存储管理的基本原理(2) 段控制寄存器 段表始址 段表长度 段号s 位移d 段长 基址 物理地址越界? 段表分段式存储管理的实现分段式存储管理的实现l分页是机械地将程序划分成大小相等的页,另外也可以将分页是机械地将程序划

24、分成大小相等的页,另外也可以将将程序划分成大小不等的段。将程序划分成大小不等的段。l采用分段技术,程序和相关的数据被划分成一组段采用分段技术,程序和相关的数据被划分成一组段(segment) ,不要求所有程序的所有段的长度相等,有点,不要求所有程序的所有段的长度相等,有点类似于动态分区类似于动态分区l逻辑地址逻辑地址由两部分组成:段号和偏移量由两部分组成:段号和偏移量 l与动态分区不同,通过与动态分区不同,通过段表段表实现不连续存储的重定位实现不连续存储的重定位l段表段表:段的长度、段的起始地址、其他控制位与标志位:段的长度、段的起始地址、其他控制位与标志位比较比较: 分页分页 与与 分段分段

25、l区别区别分页对程序员是分页对程序员是不可见的,有内部碎片,无外部碎片不可见的,有内部碎片,无外部碎片分段对程序员通常是分段对程序员通常是可见的,无内部碎片,有外部碎片可见的,无内部碎片,有外部碎片l分段的特点分段的特点为组织程序和数据的一种方便手段提供给程序员。一般情况下,程序为组织程序和数据的一种方便手段提供给程序员。一般情况下,程序员或编译器把程序和数据指定到不同的段。为了实现模块化程序设计员或编译器把程序和数据指定到不同的段。为了实现模块化程序设计地目的,程序或数据可能进一步分成多个段。地目的,程序或数据可能进一步分成多个段。 例子例子: 分段分段l采用分段法,l某个分段的逻辑地址的段

26、号为2, 段内偏移量为100, 计算它的物理地址。段表长度 段表地址控制寄存器 2 100 8k 100主存8292offsetseg numoffset基址1k8005002006k4k8k92008K+100=8292段表长度段表地址页式和段式系统的区别页式和段式系统的区别 -4.1.8l页是信息的物理单位,段是信息的逻辑单位。页是信息的物理单位,段是信息的逻辑单位。l页的大小固定且由系统决定,段的大小通常取页的大小固定且由系统决定,段的大小通常取决于用户所写的程序。决于用户所写的程序。l页式系统地址空间是一维的,分段的作业地址页式系统地址空间是一维的,分段的作业地址空间是二维的。空间是二

27、维的。段页式存储管理基本原理段页式存储管理基本原理 -4.1.7l用页式方法来分配和管理内存空间,即把内存划分成用页式方法来分配和管理内存空间,即把内存划分成若干大小相等的页面;若干大小相等的页面;l用段式方法对用户程序按照其内在的逻辑关系划分成用段式方法对用户程序按照其内在的逻辑关系划分成若干段;若干段;l再按照划分内存页面的大小,把每一段划分成若干大再按照划分内存页面的大小,把每一段划分成若干大小相等的页面;小相等的页面;l用户程序的逻辑地址由三部分组成,形式如下:用户程序的逻辑地址由三部分组成,形式如下: 段号段号 页号页号 页内地址页内地址 ;l内存是以页为基本单位分配给每个用户程序的

28、,在逻内存是以页为基本单位分配给每个用户程序的,在逻辑上相邻的页面内存不一定相邻。辑上相邻的页面内存不一定相邻。 虚存管理:页面置换算法(虚存管理:页面置换算法(1)l先进先出算法(先进先出算法(FIFO)选择置换装入最早的页面。选择置换装入最早的页面。l最近最久未使用算法(最近最久未使用算法(Least Recently Used, LRU)选择置换内存中最久未使用的页面。但是由于要记选择置换内存中最久未使用的页面。但是由于要记录页面使用时间的先后关系,硬件开销大。录页面使用时间的先后关系,硬件开销大。l计算缺页中断次数和缺页中断率计算缺页中断次数和缺页中断率页面置换算法页面置换算法l最优策

29、略最优策略 (Optimal policy) 又称为又称为Belady算法算法选择替换下次访问距当前时间最长的那些页,可以看出该选择替换下次访问距当前时间最长的那些页,可以看出该算法能导致最少的页错误,算法能导致最少的页错误,但是由于它要求操作系统必须知道将来的事件,显然这是但是由于它要求操作系统必须知道将来的事件,显然这是不可能实现的。不可能实现的。作为一种标准来衡量其他算法的性能作为一种标准来衡量其他算法的性能 。 页面置换算法页面置换算法l最近最少使用最近最少使用 Least Recently Used (LRU)替换主存中上次使用距离当前最远的页替换主存中上次使用距离当前最远的页 根据

30、局部性原理,这也是最近最不可能访问到的页。实根据局部性原理,这也是最近最不可能访问到的页。实际上,际上,LRU策略的性能接近于策略的性能接近于OPT策略。策略。该方法的问题在于比较难于实现。该方法的问题在于比较难于实现。一种实现方法是给每一页添加一个最后一次访问的一种实现方法是给每一页添加一个最后一次访问的时间时间标签标签,并且必须在每次访问存储器时,不论访问的是指,并且必须在每次访问存储器时,不论访问的是指令还是数据,都更新这个标签。即使有支持这种方案的令还是数据,都更新这个标签。即使有支持这种方案的硬件,开销仍然非常大。硬件,开销仍然非常大。另一种可选择的方法是维护一个关于访问的栈,当开销

31、另一种可选择的方法是维护一个关于访问的栈,当开销同样很大同样很大。 页面置换算法页面置换算法l先进先出先进先出 First-in, first-out (FIFO)把分配给进程的页帧看做是一个循环缓冲区,按循环方式把分配给进程的页帧看做是一个循环缓冲区,按循环方式移动页。它所需要的只是一个指针,这个指针在该进程的移动页。它所需要的只是一个指针,这个指针在该进程的页帧中循环。页帧中循环。是是 一种实现起来最简单的页替换策略。一种实现起来最简单的页替换策略。隐含的逻辑隐含的逻辑是替换驻留在主存中时间最长的页;一个在很是替换驻留在主存中时间最长的页;一个在很久以前取入主存的页,到现在可能已经不会在用

32、到了。久以前取入主存的页,到现在可能已经不会在用到了。这个推理常常是错误的,因为经常会出现一部分程序或数这个推理常常是错误的,因为经常会出现一部分程序或数据据在整个程序的生命周期中使用频率都很高在整个程序的生命周期中使用频率都很高的情况,如果的情况,如果使用使用FIFO算法,则这些页会反复地需要被换入换出。算法,则这些页会反复地需要被换入换出。 预知未来预知未来回顾过去回顾过去理论上理论上FFFFFF磁盘管理:磁盘访问时间磁盘管理:磁盘访问时间 -4.3.3l寻道时间寻道时间 Ts把磁臂从当前位置移动到指定的磁道上所经历的时把磁臂从当前位置移动到指定的磁道上所经历的时间。间。l旋转延迟时间旋转

33、延迟时间Tr扇区移动到磁头下面所经历的时间。扇区移动到磁头下面所经历的时间。l传输时间传输时间Tt把数据从磁盘读出,或者写入数据所经历的时间。把数据从磁盘读出,或者写入数据所经历的时间。磁盘调度算法磁盘调度算法- 4.3.4(1)l先来先服务算法(先来先服务算法(FCFS)根据进程请求访问磁盘的先后次序进行调度。根据进程请求访问磁盘的先后次序进行调度。l最短寻道时间优先算法(最短寻道时间优先算法(SSTF)选择访问磁道与当前磁头所在位置距离最近的进程。选择访问磁道与当前磁头所在位置距离最近的进程。l扫描算法(扫描算法(SCAN)不仅考虑距离,同时考虑当前磁头的移动方向(电梯不仅考虑距离,同时考

34、虑当前磁头的移动方向(电梯调度)。调度)。l计算磁道移动距离计算磁道移动距离l磁道磁道 0 199l55, 58, 39, 18, 90, 160, 150, 38, 184 l当前位置当前位置 100FCFS先来先服务算法先来先服务算法(FCFS)最短寻道时间优先算法最短寻道时间优先算法(SSTF)扫描算法扫描算法(SCAN)文件系统文件系统 5l定义定义文件是具有一定名称的一组相关数据的集合。文件是具有一定名称的一组相关数据的集合。空间分配策略空间分配策略(1) -5.1.2 l连续空间分配连续空间分配每个文件都占据了一个完整且连续的磁盘区域。实现每个文件都占据了一个完整且连续的磁盘区域。

35、实现简单,存取速度快。但是,文件长度不易动态增加。简单,存取速度快。但是,文件长度不易动态增加。l链接空间分配链接空间分配每个文件都有一张相应的磁盘块的链接表。这些磁盘每个文件都有一张相应的磁盘块的链接表。这些磁盘块可以分散在磁盘的任何地方,除了最后一个磁盘块块可以分散在磁盘的任何地方,除了最后一个磁盘块外,每个磁盘块都有一个指针指向下一个磁盘块。没外,每个磁盘块都有一个指针指向下一个磁盘块。没有外部碎片,文件可以任意的增长而没有其他限制。有外部碎片,文件可以任意的增长而没有其他限制。但是,只有在顺序访问时,链接空间分配策略才是高但是,只有在顺序访问时,链接空间分配策略才是高效的。(要访问效的

36、。(要访问i:1-i;然后要访问;然后要访问i-1:1-i-1)。)。此外,必须给指针分配空间。此外,必须给指针分配空间。空间分配策略空间分配策略(2) -5.1.2l索引空间分配索引空间分配每一个文件有一个索引块,这个索引块就是一个表,每一个文件有一个索引块,这个索引块就是一个表,每个表项存放文件所占有的单个磁盘块的地址。避每个表项存放文件所占有的单个磁盘块的地址。避免了外部碎片问题和文件长度受限制的问题,而且免了外部碎片问题和文件长度受限制的问题,而且还支持对任何一个文件块的直接访问。但是,索引还支持对任何一个文件块的直接访问。但是,索引块的分配增加了系统存储空间的开销。同时,存取块的分配

37、增加了系统存储空间的开销。同时,存取文件需要两次访问外存(先读取索引,再访问具体文件需要两次访问外存(先读取索引,再访问具体磁盘),降低了文件的存取速度。磁盘),降低了文件的存取速度。l组合空间分配组合空间分配多种策略的组合。多种策略的组合。目录的实现目录的实现l线性表算法线性表算法顺序遍历顺序遍历l哈希表算法哈希表算法直接访问直接访问l其他其他B+树树FAT32文件系统原理(文件系统原理(1) 5.4.3l卷的组织结构:卷的组织结构:P273图图5-18l文件分配表文件分配表以以FAT文件系统格式化的卷以簇为单位进行分配,默认的簇文件系统格式化的卷以簇为单位进行分配,默认的簇的大小由卷的大小

38、决定。的大小由卷的大小决定。类型类型0 x0000表示未使用,表示未使用,0 xFFF7表示损坏,表示损坏,0 xFFF8-F表示表示最后一个最后一个文件分配表的利用:图文件分配表的利用:图5-20,p275l目录项目录项大小为大小为32字节,内容包括文件名、扩展名、属性字节、最后字节,内容包括文件名、扩展名、属性字节、最后一次修改时间和日期、第一个簇的编号、文件长度。一次修改时间和日期、第一个簇的编号、文件长度。I/O设备数据传送控制方式设备数据传送控制方式l程序直接控制程序直接控制l中断中断lDMA中断技术中断技术 6.2.1l基本概念基本概念中断是指计算机在执行期间,系统内发生任何不寻常

39、的或非中断是指计算机在执行期间,系统内发生任何不寻常的或非预期的急需处理的事件,使得预期的急需处理的事件,使得CPU暂时中断当前正在执行的暂时中断当前正在执行的程序而转去执行相应的事件处理程序,待处理完毕后又返回程序而转去执行相应的事件处理程序,待处理完毕后又返回原来被中断处继续执行或调度新的进程执行的过程。原来被中断处继续执行或调度新的进程执行的过程。引起中断发生的事件称为中断源。引起中断发生的事件称为中断源。中断源向中断源向CPU发出的请求中断处理信号称为中断请求发出的请求中断处理信号称为中断请求CPU收到中断请求后转到相应的事件处理程序的过程称为中收到中断请求后转到相应的事件处理程序的过程称为中断响应断响应软中断软中断/硬中断硬中断l硬中断(强迫性中断

温馨提示

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

评论

0/150

提交评论