厦门大学操作系统5-6章习题讲解资料
操作系统讲义-第六章
2011年7月11日
第六章 文件管理
7
6.1 文件和文件系统
2. 文件类型和文件系统模型
根据文件存取控制属性,可分为三类: 根据文件存取控制属性,可分为三类: • 只执行文件:只允许被核准的用户调用执行; • 只读文件:只允许文件主及被核准的用户去读; • 读写文件:允许文件主和被核准的用户去读写的文件。 根据组织形式和处理方式,可分为三类: 根据组织形式和处理方式,可分为三类: • 普通文件:由ASCII码或二进制码组成的字符文件; • 目录文件:由文件目录组成,用来管理和实现文件系统功能 的系统文件; • 特殊文件:特指系统中的各类I/O设备。2011年7月11日源自第六章 文件管理11
6.2 文件的逻辑结构
任何文件都存在下面两种形式的结构: 任何文件都存在下面两种形式的结构: (1)文件的逻辑结构:用户所看到的文件组织形式; (2)文件的物理结构:文件在外存上的存储组织形式。 对文件逻辑结构的要求: 对文件逻辑结构的要求: • 提高检索记录的速度和效率; • 便于在文件中添加、删除和修改一个或多个记录; • 降低文件的存储费用(存储空间)。
索引号 0 1 … i … mi 长度m m0 m1 指针ptr R0 R1 … Ri …
缺点:还须设置索引表,每个记录都要索引项,提高了存储费用。 缺点:还须设置索引表,每个记录都要索引项,提高了存储费用。
2011年7月11日 第六章 文件管理 15
6.2 文件的逻辑结构
4. 索引顺序文件
最常见的一种逻辑文件形式,克服了变长记录文件不便于直接存 取的缺点,所付出的代价也不算大。 索引文件的组织 检索时,首先根据用户(程序)提供的关键字,采用折半查找法检索 索引表,再利用该表项中给出的指向记录的指针,访问所需的记录。
操作系统第六章答案
第六章文件管理1、何谓数据项、记录和文件?P203 P204答:数据项:数据项是最低级的数据组织形式,是数据组中可以命名的最小逻辑数据单位,若干个基本数据项组成的。
记录:记录是一组相关数据项的集合,用于描述一个对象在某方面的属性。
文件:文件是指由创建者所定义的、具有文件名的一组相关元素的集合,可分为有结构文件和无结构文件两种。
在有结构的文件中,文件由若干个相关记录组成;而无结构文件则被看成是一个字符流。
文件在文件系统中是一个最大的数据单位,它描述了一个对象集。
2、文件系统的模型可分为三层,试说明其每一层所包含的基本内容。
P206图答:1、对象及其属性:文件、目录、硬盘(磁带)存储空间;2、对对象操纵和管理的软件集合:文件管理系统的核心部分;3、文件系统的接口:命令接口、程序接口;3、试说明用户可以对文件施加的主要操作有哪些。
P207答:1、最基本的文件操作:创建文件、删除文件、读文件、写文件、截断文件、设置文件的读/写位置;2、文件的“打开”和“关闭”操作;3、其它文件操作;4、何谓逻辑文件?何谓物理文件?P208答:逻辑文件:这是从用户观点出发所观察到的文件组织形式,是用户可以直接处理的数据及其结构,它独立于文件的物理特性,又称为文件组织。
物理结构:又称为文件的存储结构,是指文件在外存上的存储组织形式。
这不仅与存储介质的存储性能有关,而且与所采用的外存分配方式有关。
5、如何提高对变长记录顺序文件的检索速度?P210答:对于变长记录的顺序文件,在顺序读或写时的情况相似,但应分别为它们设置读或写指针,在每次读或写完一个记录后,须将读或写指针加上Li。
Li 是刚读或刚写完的记录的长度。
6、试说明对索引文件和索引顺序文件的检索方法。
P211 P212答:在对索引文件进行检索时,首先是根据用户(程序)提供的关键字,并利用折半查找法去检索索引表,从中找到相应的事项;再利用该表项中给出的指向记录的指针值,去访问所需的记录。
计算机操作系统考研辅导第六章PPT课件
(1)顺序文件 (2)索引文件 (3)索引顺序文件 2)无结构文件 2、顺序文件 1)逻辑记录的排序:串结构(按录入的先后次序)、顺序结构 2)对顺序文件的读/写操作:实现顺序存取 3)顺序文件的优缺点:最佳应用场合是对记录进行批量存 取时,存取效率是所有逻辑文件中最高的。交互应用场合 效率差,增加或删除记录困难。
5
6.1 文件和文件系统
1、文件、记录和数据项 2、文件类型和文件系统模型 1)文件类型
(1)按用途分类:系统文件、用户文件、库文件 (2)按文件中数据的形式分类:源文件、目标文 件、可执行文件 (3)按存取控制属性分类:只执行文件、只读文 件、读写文件 (4)按组织形式和处理方式分类:普通文件、目 录文件、特殊文件
为什么要引入索引分配方式,采用索引分配方式时 应如何对文件进行访问,当文件很大时又应如 何处理。另外,还必须很好地了解和掌握混合 索引分配方式是为了解决什么问题而引入的, 此时,应如何将文件的逻辑地址转换成物理地 址
UNIX系统中的成组链接如何将盘块进行分组并将 各个盘块组链成一个成组链的,它应如何进行 盘块的分配和回收,这种管理方式有什么优点
8
例:什么是文件、文件系统? 解:文件是具有名字的存储在某种物理介质
的一组相关信息的集合。 文件系统是指操作系统中与文件管理有
关的那部分软件以及被它们管理的文件和 文件控制信息的集合。
9
3、文件操作 1)最基本的文件操作:创建文件、删除文件、
读文件、写文件、截断文件、设置文件的 读/写位置。 2)文件的“打开”和“关闭”操作 3)其它文件操作:文件属性的设置、目录的 操作等
当用户要求读文件时,又把物理文件转换成逻辑文件。 (4)文件存储空间的管理。必须记住哪些存储空间已被占用,那些存储空间
(完整版)操作系统各章习题及答案
第一章1.设计现代0S 的主要目标是什么? 方便性,有效性,可扩充性和开放性.2.OS 的作用可表现为哪几个方面?a. OS作为用户与计算机硬件系统之间的接口;b. Os 作为计算机系统资源的管理者;c. Os 作为扩充机器.3,试说明推动多道批处理系统形成和发展的主要动力是什么?不断提高计算机资源利用率和系统吞吐量的需要;4. 何谓脱机工/0 和联机工/0?a. 脱机输入输出方式(off 一Line工/0)是为了解决人机矛盾及CPU和工/0设备之间速度不匹配而提出的.它减少了CPU 的空闲等待时间,提高了1/0 速度.具体内容是将用户程序和数据在一台外围机的控制下,预先从低速输入设备输入到磁带上,当CPU 需要这些程序和数据时,在直接从磁带机高速输入到内存,从而大大加快了程序的输入过程,减少了CPU 等待输入的时间,这就是脱机输入技术;当程序运行完毕或告一段落,CPU需要输出时,无需直接把计算结果送至低速输出设备,而是高速把结果输出到磁带上,然后在外围机的控制下,把磁带上的计算结果由相应的输出设备输出,这就是脱机输出技术.b. 若这种输入输出操作在主机控制下进行则称之为联机输入输出方式5. 试说明推动分时系统形成和发展的主要动力是什么?用户的需要.即对用户来说,更好的满足了人机交互,共享主机以及便于用户上机的需求.6,试说明实时任务的类型和实时系统的类型.a. 实时任务的类型按任务执行时是否呈现周期性来划分,分为周期性实时任务和非周期性实时任务;根据对截止时间的要求来划分,分为硬实时任务和软实时任务;b. 通常把要求进行实时控制的系统统称为实时控制系统,把要求对信息进行实时处理的系统成为实时信息处理系统.7. 实现多道程序应解决哪些问题?a. 处理机管理问题;b. 内存管理问题;c. 1/0 设备管理问题;d. 文件管理问题;e. 作业管理问题.8,试比较单道与多道批处理系统的特点及优缺点,a. 单道批处理系统是最早出现的一种OS,它具有自动性,顺序性和单道性的特点;多道批处理系统则具有调度性,无序性和多道性的特点;b. 单道批处理系统是在解决人机矛盾及CPU和工/0设备之间速度不匹配的矛盾中形成的,旨在提高系统资源利用率和系统吞吐量, 但是仍然不能很好的利用系统资源;多道批处理系统是对单道批处理系统的改进,其主要优点是资源利用率高,系统吞吐量大;缺点是平均周转时间长,无交互能力.9,实现分时系统的关键问题是什么?应如何解决?a. 关键问题:及时接收,及时处理;b. 对于及时接收,只需在系统中设置一多路卡,多路卡作用是使主机能同时接收用户从各个终端上输入的数据;对于及时处理,应使所有的用户作业都直接进入内存,在不长的时间内,能使每个作业都运行一次.1O 为什么要引入实时操作系统?更好地满足实时控制领域和实时信息处理领域的需要.11.0s 具有哪几大特征?它的最基本特征是什么?a.并发(Concurrence),共享(Sharing),虚拟(Virtual),异步性(ASynchronism).b•其中最基本特征是并发和共享.12 内存管理有哪些主要功能?它们的主要任务是什么?a. 主要功能:内存分配,内存保护,地址映射和内存扩充等b. 内存分配的主要任务是为每道程序分配内存空间,提高存储器利用率,以减少不可用的内存空间,允许正在运行的程序申请附加的内存空间,以适应程序和数据动态增长的需要.--- 内存保护的主要任务是确保每道用户程序都在自己的内存空间中运行,互不干扰.地址映射的主要任务是将地址空间中的逻辑地址转换为内存空间中与之对应的物理地址. 内存扩充的主要任务是借助虚拟存储技术,从逻辑上去扩充内存容量.13 处理机管理具有哪些功能?它们的主要任务是什么?a. 进程控制,进程同步,进程通信和调度.b. 进程控制的主要任务是为作业创建进程,撤销已结束的进程,以及控制进程在运行过程中的状态转换. -一进程同步的主要任务是对诸进程的运行进行调节.- 一进程通信的任务是实现在相互合作进程之间的信息交换.-一调度分为作业调度和进程调度.作业调度的基本任务是从后备队列中按照一定的算法,选择出若干个作业,为它们分配必要的资源;而进程调度的任务是从进程的就绪队列中,按照一定的算法选出一新进程,把处理机分配给它,并为它设置运行现场,是进程投入运行.14 设备管理有哪些主要功能?其主要任务是什么?a. 主要功能:缓冲管理,设备分配和设备处理,以及虚拟设备等b. 主要任务:完成用户提出的1/0请求,为用户分配1/0设备;提高CPU和1/0设备的利用率;提高1/0速度;以及方便用户使用1/0设备.15 文件管理有哪些主要功能?其主要任务是什么?a. 主要功能:对文件存储空间的管理,目录管理,文件的读,写管理以及文件的共享和保护.b. 主要任务:对用户文件和系统文件进行管理,以方便用户使用,并保证文件的安全性16 试在交互性,及时性和可靠性方面,将分时系统与实时系统进行比较,a. 分时系统是一种通用系统,主要用于运行终端用户程序,因而它具有较强的交互能力;而实时系统虽然也有交互能力,但其交互能力不及前者.b. 实时信息系统对实用性的要求与分时系统类似,都是以人所能接收的等待时间来确定;而实时控制系统的及时性则是以控制对象所要求的开始截止时间和完成截止时间来确定的.c. 实时系统对系统的可靠性要求要比分时系统对系统的可靠性要求高17 是什么原因使操作系统具有异步性特征?a.程序执行结果是不确定的,即程序是不可再现的第二章3.程序并发执行为什么会产生间断性? 因为程序在并发执行过程中存在相互制约性.4,程序并发执行为何会失去封闭性和可再现性?因为程序并发执行时,多个程序共享系统中的各种资源,资源状态需要多个程序来改变,即存在资源共享性使程序失去封闭性;而失去了封闭性导致程序失去可再现性. 5.在操作系统中为什么要引入进程概念?它会产生什么样的影响?为了使程序在多道程序环境下能并发执行,并能对并发执行的程序加以控制和描述,而引入了进程概念.影响:使程序的并发执行得以实行.6. 试从动态性,并发性和独立性上比较进程和程序?a. 动态性是进程最基本的特性,可表现为由创建而产生,由调度而执行,因得不到资源而暂停执行,以及由撤销而消亡,因而进程由一定的生命期;而程序只是一组有序指令的集合,是静态实体.b. 并发性是进程的重要特征,同时也是OS的重要特征•引入进程的目的正是为了使其程序能和其它进程的程序并发执行,而程序是不能并发执行的.c•独立性是指进程实体是一个能独立运行的基本单位,同时也是系统中独立获得资源和独立调度的基本单位.而对于未建立任何进程的程序,都不能作为一个独立的单位参加运行.7•试说明PCB的作用?为什么说PCB是进程存在的唯一标志?a. PCB是进程实体的一部分,是操作系统中最重要的记录型数据结构.PCB中记录了操作系统所需的用于描述进程情况及控制进程运行所需的全部信息.因而它的作用是使一个在多道程序环境下不能独立运行的程序(含数据),成为一个能独立运行的基本单位,一个能和其它进程并发执行的进程.b. 在进程的整个生命周期中,系统总是通过其PCB对进程进行控制,系统是根据进程的PCB而不是任何别的什么而感知到该进程的存在的,所以说,PCB 是进程存在的唯一标志.8. 试说明进程在三个基本状态之间转换的典型原因.a. 处于就绪状态的进程,当进程调度程序为之分配了处理机后,该进程便由就绪状态变为执行状态.b. 当前进程因发生某事件而无法执行,如访问已被占用的临界资源,就会使进程由执行状态转变为阻塞状态.c. 当前进程因时间片用完而被暂停执行,该进程便由执行状态转变为就绪状态9,为什么要引入挂起状态?该状态具有哪些性质?a. 引入挂起状态处于5中需要:终端用户的需要,父进程的需要,操作系统的需要,对换的需要和负荷调节的需要.b. 处于挂起状态的进程不能接收处理机调度1O 在进行进程切换时,所要保存的处理机状态信息主要有哪些?a. 进程当前暂存信息;b. 下一条指令地址信息;c. 进程状态信息;d. 过程和系统调用参数及调用地址信息.13 在创建一个进程时,需完成的主要工作是什么?a. 操作系统发现请求创建新进程事件后,调用进程创建原语Creat();b. 申请空白PCB;c. 为新进程分配资源;d. 初始化进程控制块;e•将新进程插入就绪队列.14 在撤消一个进程时,需完成的主要工作是什么?a.Os 调用进程终止原语;b•根据被终止进程的标志符,从PCB集合中检索出该进程的PCB,从中读出该进程的状态;c•若被终止进程正处于执行状态,应立即中止该进程的执行,并设置调度标志为真;d•若该进程还有子孙进程,还应将其所有子孙进程予以终止;e.将该进程所拥有的全部资源,或者归还给其父进程,或者归还给系统;f. 将被终止进程(它的PCB)从所在队列(或链表)中移出,等待其它程序来搜集信息•17.为什么进程在进入临界区之前,应先执行” 进入区“代码,在退出临界区后又执行“退出区” 代码?为了实现多个进程对临界资源的互斥访问,必须在临界区前面增加一段用于检查欲访问的临界资源是否正被访问的代码,如果未被访问,该进程便可进入临界区对资源进行访问,并设置正被访问标志,如果正被访问,则本进程不能进入临界区,实现这一功能的代码成为”进入区” 代码;在退出临界区后,必须执行”退出区”代码,用于恢复未被访问标志.18,同步机构应遵循哪些基本准则?为什么?a. 空闲让进•c 有限等待.d. 让权等待.23 在生产者一消费者问题中,如果缺少了signal(full) 或Signal(empty) ,对执行结果会有何影响? 如果缺少了signal(full) 或Signal(empty) ,,生产者可以不断地往缓冲池送消息,如果缓冲池满,就会覆盖原有数据,造成数据混乱.而消费者始终因wait(full) 操作将消费进程直接送入进程阻塞链表进行等待,无法访问缓冲池,造成无限等待.24,在生产者一消费者问题中,如果将两个wait 操作即wait(full) 和wait(mutex) 互换位置;或者是将signal(mutex) 与signal(full) 互换位置结果会如何?a. wait(full) 和wait(mutex) 互换位置后,因为mutex 在这儿是全局变量,执行完wait(mutex) ,则mutex 赋值为0,倘若full 也为0,则该生产者进程就会转入进程链表进行等待,而生产者进程会因全局变量mutex 为0 而进行等待,使full 始终为0,这样就形成了死锁.b. 而signal(mutex) 与signal(full) 互换位置后,从逻辑上来说应该是一样的.25,我们为某临界区设置一把锁W,当W=1时,表示关锁;W=0时,表示锁已打开.试写出开锁原语和关锁原语,并利用它们去实现互斥,开锁原语: unlock(W):W=O;关锁原语:lock(W);if(W==l)do no_op;W=l;利用开关锁原语实现互斥:Var w: semaphore: =0;beginparbeginProcess:beginrepeatlock(W);critical sectionunlock(W);remainder sectionuntil false;endparend26.试修改下面生产者一消费者问题解法中的错误:Producer:beginrepeatproducer an item in nextp;wait(mutex);wait(full);/* 应为wait(empty) ,而且还应该在wait(mutex) 的前面*/ buffer(in):=nextp;/* 缓冲池数组游标应前移:in:=(in+l)mod n;*//*signal(full);*/until false;endConsumer:beginrepeatwait(mutex);wait(empty);/* 应为wait(full) ,而且还应该在wait(mutex) 的前面*/ nextc:=buffer(out); out:=out+l;/* 考虑循环,应改为:out:=(out+l)mod n;*/signal(mutex);/*signal(empty);*/consumer item in nextc;until false;end27 试利用记录型信号量写出一个不会出现死锁的哲学家进餐问题的算法.设初始值为1的信号量c[l]表示工号筷子被拿(工=1 , 2, 3, 4,…,Zn),其中n为自然数send(I):Beginif 1 mod 2==1 then{P(c[l]);P(c[l -1 mod 5]);Eat;V(c[l 一1 mod 5]);V(c[l]);}e1se{P(c[I 一1 mod 5);P(c[I]);Eat;V(c[I]);V(c[I 一1 mod 5]);}End。
操作系统第六章习题及答案
1、 假定盘块的大小为1KB ,硬盘的大小为500MB,采用显式链接分配方式时,其FAT 表需占用多少存储空间?如果文件A 占用硬盘的第11、12、16、14四个盘块,试画出文件A 中各盘块间的链接情况及FAT 的情况。
(假定FAT 表项的长度通常取半个字节的整数倍)。
提示:FAT 表项数目由磁盘的物理盘块数决定,而表项的长度有磁盘系统的最大盘块号决定。
根据题意,该硬盘共有500K 个盘块,故FAT 中共有500K 个表项,若盘块从1开始编号,为了能保存最大的盘块号500K ,该FAT 表项最少需要19位,将它扩展为半个字节的整数倍后,可知每个FAT 表项需要20位,即2.5个字节。
因此,FAT 需占用的存储空间为2.5*500KB=1250KB.文件A 中各盘块间的链接情况及FAT 的情况2、 请分别解释在连续分配方式、隐式链接分配方式、显式链接分配方式和索引分配方式中如何将文件的字节偏移量3500转换为物理块号和块内位移量。
(设盘块大小为1KB,盘块号需4个字节。
)提示:先将字节偏移量转换成逻辑块号和块内位移量。
(1) 连续分配方式:字节偏移量3500转换成逻辑块号和块内位移量为3500/1024=3 (428)可从相应文件的FCB 中得到分配给该文件的起始物理盘块号,假设为a0,字节偏移量3500相应的物理块号为a0+3,块内位移量为428。
(2) 隐式链接分配方式:由于每个盘块中需要留出4个字节来存放分配给文件的下一个盘块的块号,因此字节偏移量3500的逻辑块号为3500/1020=3 (440)从相应文件的FCB 中可获得分配给该文件的首个(即第0个)盘块的块号,如b0,然后可通过读第b0块获得分配给文件的第1个盘块的块号,如b1;在从b1块中得到第2块的块号,如b2;从b2块中得到第3块的块号,如b3。
因此可得到字节偏移量3500对应的物理块号b3,而块内偏移量为440。
(3) 显式链接分配方式:字节偏移量3500转换成逻辑块号和块内位移量为3500/1024=3 (428)可从相应文件的FCB 中得到分配给该文件的首个物理盘块的块号,如c0,然后从FAT 表的第c0项中得到分配给文件的第一个盘块的块号,如c1;再在FAT 表的第c1项中得到分配给文件的第2个盘块的块号c2;在FAT 表的第c2项中得到分配给文件的第3个盘块的块号c3。
操作系统习题(各章节精选)及答案
第一章操作系统概述1.试从操作系统的设计目标、作用、分类、功能、特性、组织结构等方面分析目前的操作系统(如windows、Mac OS X、Andriod、Linux发行版或Unix操作系统)答:windows:Windows采用了图形化模式,比起从前的DOS需要键入指令使用的方式更为人性化。
随着电脑硬件和软件的不断升级,微软的Windows也在不断升级,从架构的16位、32位再到64位,系统版本从最初的Windows 1.0到大家熟知的Windows 95、Windows98、Windows 2000、Windows XP、Windows Vista、Windows 7、Windows 8,Windows8.1和Server服务器企业级操作系统,不断持续的在更新!Mac OS X:OS X 是先进的操作系统。
基于坚如磐石的UNIX 基础,设计简单直观,让处处创新的Mac 安全易用,高度兼容,出类拔萃。
UNIX 之威力,Mac 之简单OS X 既简单易用且功能强大。
所有的一切- 从启动Mac 后所看到的桌面,到你日常使用的应用程序,都设计得简约精致。
无论是浏览网络、查看邮件和外地朋友视频聊天,所有事情都简单高效、趣味盎然。
当然,简化复杂任务要求尖端科技,而OS X 正拥有这些尖端科技。
它不仅使用基础坚实、久经考验的UNIX 系统提供空前的稳定性,还提供超强性能、超炫图形并支持互联网标准。
Andriod:root通常是针对Android系统的手机而言,它使得用户可以获取Android操作系统的超级用户权限。
root通常用于帮助用户越过手机制造商的限制,使得用户可以卸载手机制造商预装在手机中某些应用,以及运行一些需要超级用户权限的应用程序。
Android系统的root与Apple iOS系统的越狱类似。
Linux:Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。
计算机操作系统第五章
25.01.2022
大学课件
13
整个计算机系统的功能很大程度上取决于主存储 器的结构组织和实现方法,就主存的功能而言,首先 是存放系统和用户程序的指令和数据,每一项信息都 存放在主存的特定位置上。
25.01.2022
BACK 返回大本学节课目件录 NEXT
14
信息在主存是按“位”存放的。为了能对信息进 行访问,要对这些位置进行编号,这些编号称为地 址。
25.01.2022
大学课件
6
帕金森Parkinson定律:存储器 有多大,程序就会有多大。程序 的增大正好填满增大的存储器。
25.01.2022
大学课件
7
计算机领域,历史总是在重复自身。当 最简单的存储管理方案不再用于台式机 时,这些方案仍被一些掌上电脑、嵌入 式系统和智能卡系统所采用。
25.01.2022
25.01.2022
大学课件
9
5.1.1 5.1.2
装入方式 一、绝对装入方式 二、可重定位装入方式 三、动态运行时装入方式 程序的链接程序的装入 一、静态链接 二、装入时动态链接 三、运行时动态链接
25.01.2022
返回大学本课章件目录
10
存储器管理
主存储器(又称内部存储器,处理机存储器), 存储器管理,讨论的主要对象就是主存储器。
12
实存储管理技术: 分连续分配和离散分配。 连续分配又分:单一连续、固定分区、可变分区和动 态重定位可变分区。 离散分配分:分页、分段和段页式。 虚拟存储管理技术: 请求分页、请求分段和段页虚拟式。
对每一种管理方式从以下五个方面来理解并掌握:分 配、去配(释放或回收)、地址重定位、保护(防止 地址越界和控制正确存取)和共享。
计算机操作系统课件复习资料第5章
5.1.1 I/O 设备
1. I/O设备的类型 3)按传输速率 低速设备:传输速率为1KB/s以下的设备。 如键盘、鼠标、语音输入/输出设备等。 中速设备:传输速率为1KB/s~1MB/s的设备。 如打印机、扫描仪等。 高速设备:传输速率为1MB/s以上的设备。 如磁盘机、磁带机、光盘机等。
5.1 I/O 系统 • I/O设备 • 设备控制器 • I/O通道 • I/O系统的总线系统 • I/O系统的结构
计算机操作系统课件复习资料第5 章
5.1.1 I/O 设备
1. I/O设备的分类 1)按录属关系 系统设备:在OS生成时就已登记在系统中 的标准设备,如键盘、显示器、打印机等 用户设备:在OS生成时未登记在系统中的 非标准设备,如鼠标、绘图仪、扫描仪等
计算机操作系统课件复习资料第5 章
5.1.1 I/O 设备
2. 设备与控制器之间的接口
至设备 数据信号线 控制器
状态信号线
控制信号线
I/O设备 缓冲 转换器
控制逻辑
信号 数据
P161 图5-1 设备与控制器间的接口
计算机操作系统课件复习资料第5 章
5.1.2 设备控制器
❖ CPU与I/O设备间的接口,接收CPU发来的命令并控 制I /O设备工作, 以实现I/O设备和计算机之间的数 据交换。
计算机操作系统课件复习资料第5 章
5.1.1 I/O 设备
1. I/O设备的类型
5)按操作Байду номын сангаас使用)特性
输入/输出设备:键盘、鼠标、显示器、读 卡机、扫描仪、打印机、绘图仪、数码相 机等
存储设备:磁带机、磁鼓机、磁盘机等, 可用作输入也可用作输出。主要用于长期 保存信息,但需要管理其上的存储空间。 可以在存储设备上建立文件系统以有组织、 有结构地长期存储信息
操作系统教程第5章文件管理(参考答案)
操作系统教程第5章文件管理(参考答案)第5章文件管理1.单项选择题答案:AADAC CCACD2.答:文件是以文件名字标识的在计算机上存储的信息集合。
文件包括两部分:文件体和文件说明。
文件体是文件本身的信息;文件说明是文件存储和管理的信息,如文件名、文件内部标识、文件存储地址、访问权限、访问时间等。
3. 答:按文件性质和用途分:系统文件、库文件、用户文件;按文件的逻辑存储结构分:有结构文件、无结构文件;按文件保护方式分:只读文件、可读可写文件、可执行文件;按使用情况分:临时文件、永久文件、档案文件;按用户观点分:普通文件、目录文件、特殊文件;按存取的物理结构分:顺序文件、链接文件、索引文件。
4. 答:创建文件、打开文件、关闭文件、撤销文件、复制文件、移动文件、文件更名、文件列表等。
5. 答:文件系统是操作系统中统一管理信息资源的一种软件,管理文件的存储、检索、更新,提供对信息安全可靠的共享和保护手段,并且方便用户使用。
从系统角度来看,文件系统是对文件存储器的存储空间进行组织、分配和回收,负责文件的存储、检索、共享和保护。
从用户角度来看,文件系统主要是实现“按名取存”,用户只要知道所需文件的名字,就可存取文件中的信息,而无需知道这些文件究竟存放在什么地方。
6.答:分为无结构的流式文件和有结构的记录式文件。
无结构的流式文件:文件是由用户创建的,对文件内信息不再划分单位,它是以一串字符流构成的文件。
有结构的记录式文件:是用户把文件内的信息按逻辑上独立的含义划分信息单位,每个单位称为一个逻辑记录(简称记录)。
记录式文件是由若干个记录组成,每个记录有一个键,可按键进行查找。
7.答:优点:既能顺序存取,又能随机存取,满足了文件动态增长、插入删除的要求,能够充分利用外存空间。
缺点:较多的寻道次数和寻道时间,索引表本身带来了系统开销。
8.答:逻辑文件:文件结构是用户所观察到的文件组织形式,逻辑文件是用户可直接处理的数据内容,它独立于物理特性,又称为组织文件。
(最新整理)操作系统第五章作业参考答案
(完整)操作系统第五章作业参考答案编辑整理:尊敬的读者朋友们:这里是精品文档编辑中心,本文档内容是由我和我的同事精心编辑整理后发布的,发布之前我们对文中内容进行仔细校对,但是难免会有疏漏的地方,但是任然希望((完整)操作系统第五章作业参考答案)的内容能够给您的工作和学习带来便利。
同时也真诚的希望收到您的建议和反馈,这将是我们进步的源泉,前进的动力。
本文可编辑可修改,如果觉得对您有帮助请收藏以便随时查阅,最后祝您生活愉快业绩进步,以下为(完整)操作系统第五章作业参考答案的全部内容。
第五章作业参考答案1. 旋转型设备上信息的优化分布能减少为若干个I/O服务的总时间.设磁鼓上分为20个区,每区存放一个记录,磁鼓旋转一周需20毫秒,读出每个记录平均需用1毫秒,读出后经2毫秒处理,再继续处理下一个记录。
在不知当前磁鼓位置的情况下:(1)顺序存放记录1、……,记录20时,试计算读出并处理20个记录的总时间;(2)给出优先分布20个记录的一种方案,使得所花的总处理时间减少,且计算出这个方案所花的总时间。
答:定位第1个记录需10ms。
读出第1个记录,处理花2ms,这时已到了第4个记录,再转过18个记录(花18ms)才能找到记录2,所以,读出并处理20个记录的总时间:10+3+(1+2+18)×19=13+21×19=412ms如果给出优先分布20个记录的方案为:1,8,15,2,9,16,3,10,17,4,11,18,5,12,19,6,13,20,7,14.当读出第1个记录,花2ms处理后,恰好就可以处理记录2,省去了寻找下一个记录的时间,读出并处理20个记录的总时间:10+3+3×19=13+247=260ms2。
现有如下请求队列:8,18,27,129,110,186,78,147,41,10,64,12;试用查找时间最短优先算法计算处理所有请求移动的总柱面数。
假设磁头当前位置下在磁道100.答:处理次序为:100—110-129-147—186-78-64-41—27-18-12—10—8.移动的总柱面数:264.4。
计算机操作系统 课后习题 第五章
第五章3. 什么是字节多路通道?什么是数组选择通道和数组多路通道?a.字节多路通道含有许多非分配型子通道分别连接在低、中速I/O设备上,子通道按时间片轮转方式共享主通道,按字节方式进行数据传送。
具体而言,当第一个子通道控制其I/O设备完成一个字节的交换后,便立即腾出字节多路通道(主通道),让给第二个子通道使用;当第二个子通道也交换完一个字节后,又依次把主通道让给第三个子通道使用,以此类推。
转轮一周后,重又返回由第一个子通道去使用主通道。
b.数组选择通道只含有一个分配型子通道,一段时间内只能执行一道通道程序、控制一台设备按数组方式进行数据传送。
通道被某台设备占用后,便一直处于独占状态,直至设备数据传输完毕释放该通道,故而通道利用率较低,主要用于连接多台高速设备。
c.数组多路通道是将数组选择通道传输速率高和字节多路通道能使各子通道分时并行操作的优点相结合而形成的一种新通道。
其含有多个非分配型子通道分别连接在高、中速I/O设备上,子通道按时间片轮转方式共享主通道,按数组方式进行数据传送,因而既具有很高的数据传输速率,又能获得令人满意的通道利用率。
4.如何解决因通道不足而产生的瓶颈问题?解决因通道不足而产生的瓶颈问题的最有效方法是增加设备到主机间的通路而不是增加通道。
换言之,就是把一个设备连接到多个控制器上,而一个控制器又连接到多个通道上。
这种多通路方式不仅可以解决该瓶颈问题,而且能够提高系统的可靠性,也即不会因为个别通道或控制器的故障而使设备与存储器之间无法建立通路进行数据传输。
6.试说明I/O控制发展的主要推动因素是什么?推动I/O控制发展的主要动力在于尽量减少主机对I/O控制的干预,把主机从繁杂的I/O控制事务中解脱出来,以便使主机有更多的时间和精力去完成其数据处理任务。
7.有哪几种I/O控制方式?有四种I/O控制方式,即程序I/O控制方式、中断驱动I/O控制方式、直接存储器访问DMA 控制方式及I/O通道控制方式。
操作系统第五版第6章习题中文解答
可用+占有 完成 70 true 110 125 150 true true true
• b.第四个进程到达,最大需求是60,初始需求是35
进程
1
最大
70
占有
45
需要
25
可用
15
2
3 4
60
60 60
40
15 35
20
45 25
6.13 a.三个进程共享四个资源单元
进程 p1 最大 2 分配 1 需要 1 可用 1
从矩阵可以看出四个进程还需要的资源数目为2165当有一个可用资源时p2可以执行完成并释放占用资源可用资源数目为2允许p1执行完成可用资源数目为3此时p3需要6个资源p4需要5个资源既最小情况还需要2个额外资源p4执行完成释放资源后p3再执行完成
操作系统第六章习题解答
6.1 互斥:在每一时刻,只能有一辆车占用十字路 口的一个象限; 占有且等待:没有车倒退;每辆车一直在等待, 直到它前面的十字路口的象限可以使用; 非抢占:没有车辆能够强迫另一辆车给自己让 路; 循环等待:每辆车一直等待另外的车辆占用的 十字路口的象限。
6.17
• 如果至少有一个左撇子或右撇子,则当所 有哲学家都准备拿起第一根筷子时,必定 会有两个哲学家竞争一根筷子而其中一个 得不到处于等待,这样必定有一个哲学家 可以获得两根筷子,而不至于发生死锁。 • 同样也不会发生饥饿
6.2 1.Q获得B,然后获得A,然后释放B和A;当P恢复执 行的时候,它可以获得全部资源。 2.Q获得B,然后获得A;P执行并阻塞在对A的请求 上;Q释放B和A,当P恢复执行时,它可以获得全 部资源。 3.Q获得B,P获得并释放A,然后Q获得A并释放B和 A,当P恢复执行时,它可以获得B。 4.P获得A,Q获得B,P释放A,Q获得A并释放B,P 获得B并且释放B。 5.P获得并释放A,P获得B;Q执行并阻塞在对B的请 求上;P释放B,当Q恢复执行时,它可以获得全部 资源。 6.P获得A并且释放A,P获得B并且释放B,当Q恢复 执行时,他可以获得全部资源。
操作系统第五节课后习题讲解
❖ 图5.10
图5.11
第五章课后习题讲解
LOGO
❖ 解:这个状态是安全的。 ❖因为C={3,7,2,3 }而Allocation={2,5,
1,2}则Available={1,2,1,1}。 NEED
进程 R0 R1 R2 R3 P0 1 3 1 1 P1 2 3 1 1 P2 3 1 2 3 P3 3 1 0 3 P4 0 2 1 1
第五章课后习题讲解
LOGO
❖5.10 一台计算机有8台打印机,被N个进程 竞争使用,每个进程最多需要3台。请问N 为多少时,系统没有死锁的危险,说明原 因。
❖ 解:无论每次允许申请几个资源,当N<=3时, 没有死锁的危险。
如果每次只能申请一个资源时, 每个进程的 Allocation均为1,Max为3,Need均为2。由 于Available>=Need, 则Available=2,N=6。 即如果每次只能申请一个资源时,N<=6,系统 没有死锁的危险。
资源
Max Allocation Need AvailaLbOleGO
进程 情况 R0R1R2R3 R0R1R2R3 R0R1R2R3 R0R1R2R3
P0 3 4 1 1 2 1 0 0 1 3 1 1 31 42 11 21
P1 2 5 1 2 0 2 0 1 2 3 1 1 3 6 1 3
P2 3 2 2 3 0 1 0 0 3 1 2 3 3 7 2 3
第五章课后习题讲解
LOGO
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
P177复习题5.13
• 与读者-写者问题相关联的条件:
– 任意多的读进程可以同时读一个文件 – 一次只有一个写进程可以往文件中写 – 如果一个写进程正在往文件中写时,则禁止任 何读进程读文件
P179习题5.2
• 一个并发程序,它的两个进程p与q,A、B、 C、D、E是任意的原子语句。设主程序执 行两个进程的parbegin。 void p(){A;B;C;} void q(){D;E;} 给出这两个进程所有可能的交替执行(根 据原子语句给出执行轨迹)
P182习题5.3
b、在a的假设下,允许任意多的进程并发执 行,tally值的范围?
对一般有N个进程的情况,tally值的最终范围 是[2,N*50],因为对其他所有进程来说,从最初开始运 行到在第五步完成.但最后都被进程B破坏掉它们的 最终结果.
P182习题5.13
• 考虑图5.10中定义的无限缓冲 区生产者/消费者问题的解决方 案,设生产者与消费者都以大 致相同的速度运行,运行情况 如下: 生产者: append;semSignal;produce;...; append;semSignal;produce;...; 消费者: consume;...;take;semWait;con sume;...;take;semWait;...; • 生产者通常管理给缓冲区添加 一个新元素,并在消费者消费 了前面的元素后发出信号。生 产者通常添加到一个空缓冲区 中,而消费者通常取走缓冲区 中的惟一元素。消费者从不在 信号量上阻塞,但必须进行大 量的信号量调用,产生相当多 的开销。 构造新程序,使之更有效。 提示:允许n的值为-1,这表示不 仅缓冲区为空,而且消费者也 检测到这个事实并将被阻塞, 直到生产者产生新的数据。这 个方案不要图5.10中的局部变 量m 。
p212习题6.5
• 把6.4节中的死锁检测算法应用于下面的数 据,给出结果。 Available=(2 1 0 0) • Request Allocation 2001 0010 1010 2001 2100 0120
p212习题6.5
• 1. W = (2 1 0 0) • 2. Mark P3; W = (2 1 0 0) + (0 1 2 0) = (2 2 2 0) • 3. Mark P2; W = (2 2 2 0) + (2 0 0 1) = (4 2 2 1) • 4. Mark P1; no deadlock detected • 算法步骤见P195
P182习题5.14
P182习题5.14
• 信号量s控制对临界区的访问,在临界区只 包含append 或take 操作。 • AC会导致死锁。 • BD不变,但效率变低(临界区变长)。
p211复习题 6.2
• 可能发生死锁所必需的三个条件: ① 互斥
– 一次只有一个进程可以使用一个资源
② 占有且等待
P182习题5.13
P182习题5.13
• program producerconsumer; • var n: integer; • s: (*binary*) semaphore (:= 1); • delay: (*binary*) semaphore (:= 0); • procedure producer; • begin • repeat • produce; • semWaitB(s); • append; • n := n + 1; • if n=0 then semSignalB(delay); • semSignalB(s) • forever • end;
b 第4个进程到达,最多要 60个存储单元,最初要35 个单元。
会死锁,剩下存储单元数: 150-(45+40+15+35)=15
a
b
p214习题6.13
a 3个进程共享4个资源单元,一次只能保留或释放一 个单元,每个进程最大需要2个单元。说明不会发生死 锁。
• 由于每个进程最多需要2个资源,最坏情况下,每个进程需要获 得一个,系统还剩1个,这一个资源,无论分给谁都能完成。完 成进程释放资源后,使剩余进程也完成,故系统不会死锁。
不会死锁,剩下存储单元数: 150-(45+40+15+25)=25 满足进程1,2,可任选一个, 执行完后可满足其它
安全顺序是1-2-3-4 • • 银行家算法: 测试进程对资源的最大需求,若系 统当前的剩余资源满足它的最大需 求,则满足进程的当前的申请,否 则,推迟分配。这样能保证至少有 一个进程获得资源的最大需求而运 行,结束后释放资源供其它进程用。
5-6章作业
P177复习题5.8
• 在信号量上可执行的操作:
– 初始化>=0(一般情况) – semWait原语,值减1
• 如果值变为负数,则执行semWait的进程被阻塞
– semSignal原语,值加1
• 如果值小于或等于0,则唤醒一个该信号量的阻塞 进程
P177复习题5.11
• 什么是管程? • 管程(Monitor)是一个程序设计语言结构, 它提供与信号量同样的功能,但更易于操 作 • 管程是一个软件模块
P179习题5.3
• a. 乍一看,tally的范围好像是落在[50,100] 这个区 间里,因为当没有互斥时可以从0直接增加到50.这 一基本论点是当并发的运行这两进程时,我们不可 能得到一个比连续执行单一某进程所得tally值还 低的一个最终tally值.但是考虑下面由这两进程按 交替顺序执行载入,增加,存储的情况下同时变更 这个共享变量的取值:
p213习题6.10
• 考虑一个共有150个存储单元的系统,其单 元分给三个进程 • 进程 最大 占有 • 1 70 45 • 2 60 40 • 3 60 15
使用银行家算法,确定下面的请求是否安。如果安 全,说明能保证的终止序列;如果不安全,给出 结果分配简表
p213习题6.10
a 第4个进程到达,最多要Байду номын сангаас60个存储单元,最初要25个 单元。
P182习题5.3
• 1.进程A载入tally值,并将tally的值加到1,在此时失去处理器(它已经增加寄 存器的值到1,但是还没有存储这个值). • 2.进程B载入tally值(仍然是0),然后运行完成49次增加操作,在它已经将49 这个值存储给共享变量tally后,失去处理器控制权. • 3.进程A重新获得处理器控制权去完成它的第一次存储操作(用1去代替先 前的49这个tally值),此时被迫立即放弃处理器. • 4.进程B重新开始,将1(当前的tally值)载入到它自己的寄存器中,但此时被 迫放弃处理器(注意这是B的最后一次载入). • 5.进程A被重新安排开始,但这次没有被中断,直到运行完成它剩余的49次 载入,增加和存储操作,结果是此时tally值已经是50. • 6.进程B在它终止前完成仅有的最后一次增加和存储操作.它的寄存器值 增至2,同时存储这个值做为这个共享变量的最终结果. 一些人认为会出现低于2这个值的结果,这种情况是不会出现.所以 tally值 的正确范围是[2,100].
ABCDE; ABDCE; ABDEC; ADBCE; ADBEC; ADEBC;DEABC; DAEBC; DABEC; DABCE
P179习题5.3
考虑右边的程序:
a、确定由这个并发程序输 出的共享变量最后值的上限与 下线。设进程可以以任意相对 速度执行,并当一个值由独立 的机器指令载入一个寄存器中 后,它只能增1. b、在a的假设下,允许任意多 的进程并发执行,tally值的范 围?
I 输入缓冲区 P 输出缓冲区 0
p212习题6.6
• 说明可能死锁 当I的速度远大于P的速度,有可能使磁 盘上都是输入数据而此时P进程要处理输入 数据,即要将处理数据放入输出数据区。 于是P进程等待磁盘空间输出,I进程等待磁 盘空间输入,二者死锁。
p213习题6.7
• 给出在习题6.6中预防死锁的附加资源约束,仍 然通话输入和输出缓冲区之间的边界可以根据进 程的要求变化。
const int n=50; int tally; void total(){ int count; for(count=1;count<= n;count++){ tally++; } } void main(){ tally=0; parbegin(total(),total ()); write(tally); }
end; begin (*main program*) n := 0; parbegin producer; consumer parend
P182习题5.14
• 考虑图5.13,若发生下面的交换,程序的意 义是否会改变? • a. semWait(e);semWait(s) • b. semSignal(s);semSignal(n) • c. semWait(n);semWait(s) • d. semSignal(s);semSignal(e)
p214习题6.13
• 方法二:
• • • • 每个进程有Ni个资源未分配,有Ai个资源已分配 则∑Ci= ∑Ai+ ∑Ni < M+N 假设死锁: ∑Ai=M,则∑Ni<N,至少有一个Nk为0,矛盾
p214习题6.14
– 一个进程在等待其它资源分配时,继续占有 已分配的资源
③ 非抢占
– 不能强行抢占已分配给其它进程的资源 – 除非进程主动释放
p211复习题6.3
• 产生死锁的第四个条件: 循环等待
– 资源分配图中存在一条封闭的进程链
p212习题6.3
• 证明图6.3所反映的情况不会发生死锁(图 见P186)
资源可重用的,P、Q同 时申请B,Q获得B,P、 Q同时申请A,P获得A, Q释放B,P得到A,P释 放A,Q得到A,不构成死 锁的第四个条件。