操作系统第六章课后习题

合集下载

操作系统第二版第六章课后习题答案

操作系统第二版第六章课后习题答案

第六章文件系统作业答案1、5、8、141、解释以下术语:文件、文件系统、目录项、目录文件参考答案:文件——是被命名的相关信息的集合体,通常存放在外存(如磁盘、磁带)上,可以作为一个独立单位存放和实施相应的操作(如打开、关闭、读、写等)。

文件系统——操作系统中负责操纵和管理文件的一整套设施,它实现文件的共享和保护,方便用户“按名存取”。

目录项——为了加快对文件的检索,往往将文件控制块集中在一起进行管理。

这种文件控制块的有序集合称为文件目录。

当然,文件控制块就是其中的目录项。

目录文件——完全由目录项构成的文件称为目录文件5、文件的物理组织形式主要有哪几种?分别说明各自的优缺点。

参考答案:文件的物理组织形式主要有:连续文件、链接文件、索引文件和多重索引文件。

见下表:8、文件系统中的目录结构有哪几种基本形式?各有何优缺点?UNIX系统中采用哪种目录结构?参考答案:文件系统中的目录结构有:单级目录结构、二级目录结构、树形目录结构和非循环图目录结构。

见下表:UNIX系统中采用非循环图目录结构。

14. 在UNIX系统中,假定磁盘块大小是1KB,每个盘块号占4B,文件索引节点中的磁盘地址明细表如图6-25所示,请将下列文件的字节偏移量转换为物理地址(写出计算过程)。

(1)8 000 (2)13 000 (3)350 000参考答案:256个盘块号。

(1)101#块内832字节(2)%1024=712逻辑块数12超出直接地址范围(10),但是小于266(10+256),利用一次间接。

从428#块中得到相应的物理块号为954。

所以,其物理地址是954#块内712字节。

(3)350 000/1024=341,350 000%1024=816逻辑块数341超出一次间接地址范围(266),但是小于65802(10+256+2562),利用二次间接。

341-(10+256)=75,75/256=0,75%256=75从9156#块中找到物理块331,再从331块中找到下标为75的项,进而得到物理块号333。

操作系统第6章(设备管理习题与解答)

操作系统第6章(设备管理习题与解答)

第6章设备管理习题与解答6.1 例题解析例6.2.1 何谓虚拟设备?请说明SPOOLing系统是如何实现虚拟设备的。

解本题的考核要点是虚拟设备的实现方法。

虚拟设备是指利用软件方法,比如SPOOLing系统,把独享设备分割为若干台逻辑上的独占的设备,使用户感受到系统有出若干独占设备在运行。

当然,系统中至少一台拥有物理设备,这是虚拟设备技术的基础。

SPOOLing系统又称“假脱机I/O系统”,其中心思想是,让共享的、高速的、大容量外存储器(比如,磁盘)来模拟若干台独占设备,使系统中的一台或少数几台独占设备变成多台可并行使用的虚拟设备。

SPOOLing系统主要管理外存上的输入井和输出井,以及内存中的输入缓冲区和输出缓冲区。

其管理进程主要有输入和输出进程,负责将输入数据装入到输入井,或者将输出井的数据送出。

它的特点是:提高了 I/O操作的速度;将独占设备改造为共享设备;实现了虚拟设备功能。

例 6.2.2 有关设备管理要领的下列叙述中,( )是不正确的。

A.通道是处理输入、输出的软件B.所有外围设备都由系统统一来管理C.来自通道的I/O中断事件由设备管理负责处理D.编制好的通道程序是存放在主存贮器中的E.由用户给出的设备编号是设备的绝对号解本题的考核要点是设备管理的基本概念。

(1) 通道是计算机上配置的一种专门用于输入输出的设备,是硬件的组成部分。

因此A是错误的。

(2) 目前常见I/O系统其外部设备的驱动和输入输出都由系统统一管理。

因此B是对的。

(3) 设备管理模块中的底层软件中配有专门处理设备中断的处理程序。

通道中断属于设备中断的一种。

因此C是对的。

(4) 通道设备自身只配有一个简单的处理装置(CPU),并不配有存储器,它所运行的通道程序全部来自内存。

因此D是对的。

(5) 系统在初启时为每台物理设备赋予一个绝对号,设备绝对号是相互独立的。

由用户给出的设备号只能是逻辑编号,由系统将逻辑号映射为绝对号。

因此E是错误的。

操作系统第六章练习题

操作系统第六章练习题

操作系统第六章练习题一、选择题1. 在操作系统中,下列关于进程状态的描述,错误的是()。

A. 运行态是指进程正在占用CPUB. 阻塞态是指进程因等待某事件而暂时停止运行C. 就绪态是指进程已经具备运行条件,等待CPU调度D. 空闲态是指进程已经执行完毕,等待被系统回收2. 在操作系统中,下列关于进程调度算法的描述,正确的是()。

A. 先来先服务(FCFS)调度算法可能导致饥饿现象B. 短作业优先(SJF)调度算法是非抢占式的C. 优先级调度算法中,优先级高的进程一定能立即获得CPUD. 时间片轮转调度算法适用于分时系统3. 在操作系统中,下列关于进程同步与互斥的描述,错误的是()。

A. 临界区是指进程中访问共享资源的代码段B. 信号量是一种用于实现进程同步与互斥的机制C. Peterson算法可以保证两个进程互斥进入临界区D. 生产者消费者问题可以通过信号量机制解决二、填空题1. 在操作系统中,进程的五大状态包括:____、____、____、____和____。

2. 在进程同步与互斥中,信号量的值表示了____资源的使用情况。

3. 在操作系统中,死锁产生的四个必要条件是:____、____、____和____。

三、简答题1. 请简述进程与线程的区别。

2. 请说明进程调度的主要目标。

3. 请阐述银行家算法的基本思想及其应用场景。

四、编程题1. 编写一个程序,实现进程的创建、撤销和切换。

2. 编写一个程序,使用信号量机制解决生产者消费者问题。

3. 编写一个程序,模拟进程的优先级调度算法。

五、案例分析题进程最大需求量已分配资源量P1 R1=3, R2=2 R1=1, R2=0P2 R2=2, R3=2 R2=1, R3=1P3 R3=2, R4=2 R3=1, R4=0P4 R1=4, R4=3 R1=2, R4=2(1)系统当前可用资源为:R1=1, R2=1, R3=1, R4=1(2)系统当前可用资源为:R1=0, R2=1, R3=1, R4=12. 假设有一个系统采用时间片轮转调度算法,时间片长度为50ms。

操作系统第6章(设备管理习题与解答)

操作系统第6章(设备管理习题与解答)

第6章设备管理习题与解答6.1 例题解析例6.2.1 何谓虚拟设备?请说明SPOOLing系统是如何实现虚拟设备的。

解本题的考核要点是虚拟设备的实现方法。

虚拟设备是指利用软件方法,比如SPOOLing系统,把独享设备分割为若干台逻辑上的独占的设备,使用户感受到系统有出若干独占设备在运行。

当然,系统中至少一台拥有物理设备,这是虚拟设备技术的基础。

SPOOLing系统又称“假脱机I/O系统”,其中心思想是,让共享的、高速的、大容量外存储器(比如,磁盘)来模拟若干台独占设备,使系统中的一台或少数几台独占设备变成多台可并行使用的虚拟设备。

SPOOLing系统主要管理外存上的输入井和输出井,以及内存中的输入缓冲区和输出缓冲区。

其管理进程主要有输入和输出进程,负责将输入数据装入到输入井,或者将输出井的数据送出。

它的特点是:提高了 I/O操作的速度;将独占设备改造为共享设备;实现了虚拟设备功能。

例 6.2.2 有关设备管理要领的下列叙述中,( )是不正确的。

A.通道是处理输入、输出的软件B.所有外围设备都由系统统一来管理C.来自通道的I/O中断事件由设备管理负责处理D.编制好的通道程序是存放在主存贮器中的E.由用户给出的设备编号是设备的绝对号解本题的考核要点是设备管理的基本概念。

(1) 通道是计算机上配置的一种专门用于输入输出的设备,是硬件的组成部分。

因此A是错误的。

(2) 目前常见I/O系统其外部设备的驱动和输入输出都由系统统一管理。

因此B是对的。

(3) 设备管理模块中的底层软件中配有专门处理设备中断的处理程序。

通道中断属于设备中断的一种。

因此C是对的。

(4) 通道设备自身只配有一个简单的处理装置(CPU),并不配有存储器,它所运行的通道程序全部来自内存。

因此D是对的。

(5) 系统在初启时为每台物理设备赋予一个绝对号,设备绝对号是相互独立的。

由用户给出的设备号只能是逻辑编号,由系统将逻辑号映射为绝对号。

因此E是错误的。

操作系统习题第六章答案

操作系统习题第六章答案

第六章存储管理一、单项选择题1.A.2.A3.C4.A5.C6.D7.C8.D9.C 10.B 11.B 12.A13.C 14.B 15.C 16.A17.D 18.A19.B 20.D 21.A22.B 23.A24.D 25.D二、多项选择题1.A,B2.C,D,E3.B,C,E4.A,C,E三、填空题1.逻辑地址,绝对地址2.静态重定位,动态重定位3.逻辑地址,绝对地址4.地址转换5.静态6.紧凑7.最先适应,最佳适应,最坏适应8.页号,页内地址9.操作系统10.2的24次方,2的16次方11.2的8次方,2的16次方12.分段,分页13.虚拟14.缺页15. 先进先出(FIFO)、最近最少使用(LRU)、最佳置换算法(OPT)16.(90,88);因段内地址大于第4段段长,发生地址越界错误四、问答题1. 在分页存储管理中,当访问一条指令或数据时需要访问内存至少两次。

一次是访问存放在内存中的页表,实现地址变换; 另一次是访问所需的数据。

在分段存储管理中,当访问一条指令或数据时,也需要访问内存至少两次。

一次是访问存放在内存中的段表,实现地址变换;另一次是访问所需的数据。

在段页式存储管理中,当访问一条指令或数据时,需要访问内存至少三次。

一次是访问存放在内存中的段表,查找段号所对应的页表; 再一次是访问存放在内存中的页表,实现地址变换; 第三次是访问所需的数据。

2.段页式存储管理技术结合分段管理在逻辑上的优点以及分页管理在物理上的优点。

用分段方法来分配和管理虚存,用分页方法来分配和管理实存。

即把作业分段,段内分成虚页,实存分成实页。

在段页式管理系统中,每一段不再占有连续的实存,而是被分为若干个页面,所以段页式存储管理实际上是对页面进行分配和管理。

因此,有关段的靠拢、辅存管理以及段长限制等问题都得到很好的解决。

而分段的优点,如动态扩大段长、动态链接装入、段的共享、段的保护措施等都被保留了下来。

3. (1)主存地址应该用20位来表示。

《操作系统》习题集:第6章死锁

《操作系统》习题集:第6章死锁

《操作系统》习题集:第6章死锁第6章死锁-习题集⼀、选择题1.在操作系统中,死锁出现是指()。

【*,★,联考】A. 计算机系统发⽣重⼤故障B. 资源个数远远⼩于进程数C. 若⼲进程因竞争资源⽽⽆限等待其他进程释放已占有的资源D. 进程同时申请的资源数超过资源总数2.在()的情况下,系统出现死锁。

【*,联考】A. 计算机系统发⽣了重⼤故障B. 有多个封锁的进程同时存在C. 若⼲进程因竞争资源⽽⽆休⽌地相互等待他⽅释放已占有的资源D. 资源数远远⼩于进程数或进程同时申请的资源数远远超过资源总数3.当出现()情况下,系统可能出现死锁。

【*,联考】A. 进程释放资源B. ⼀个进程进⼊死循环C. 多个进程竞争资源出现了循环等待D. 多个进程竞争共享型设备4.为多道程序提供的可共享资源不⾜时,可能出现死锁。

但是,不适当的()也可能产⽣死锁。

【**,联考】A. 进程优先级B. 资源线性分配C. 进程推进顺序D. 分配队列优先权5.采⽤资源剥夺法可以解除死锁,还可以采⽤()⽅法解除死锁。

【*,★,联考】A. 执⾏并⾏操作B. 撤销进程C. 拒绝分配新资源D. 修改信号量6.死锁产⽣的原因之⼀是()。

【*,联考】A. 系统中没有采⽤SPOOLing技术B. 使⽤的P、V操作过多C. 有共享资源存在D. 资源分配不当7.产⽣死锁的4个必要条件是:互斥、()、循环等待和不剥夺。

【*,联考,?】A. 请求与阻塞B. 请求与保持C. 请求与释放D. 释放与阻塞8.⼀个进程在获得资源后,只能在使⽤完资源后由⾃⼰释放,这属于死锁必要条件的()。

【*,联考】A. 互斥条件B. 请求和释放条件C. 不剥夺条件D. 环路等待条件9.死锁的预防是根据()⽽采取措施实现的。

【*,★,联考】A. 配置⾜够的系统资源B. 使进程的推进顺序合理C. 破坏死锁的四个必要条件之⼀D. 防⽌系统进⼊不安全状态10.资源的有序分配策略可以破坏死锁的()条件。

操作系统第六章习题及答案

操作系统第六章习题及答案

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.逻辑文件的组织结构是由()确定的。

A.操作系统B.存储容量C.用户D.文件长度2.逻辑文件存放到存储介质上时,采用的结构形式是与()有关的。

A.文件的逻辑结构B.存储介质的性质C.存储空间管理方式D.逻辑文件长度3.实现按名存取后,允许用户对记录式文件进行存取的最小单位是()。

A.文件B.记录C.数据项D.字符串4.()结构的文件最适合于随机存取的应用场合。

A.流式B.顺序C.链接D.索引5.物理文件的组织形式是与()无关的。

A.文件长度B.文件的存取方法C.存储介质特性D.文件系统采用的管理方式6.在文件管理中可以利用位示图来实现()。

A.磁盘的驱动调度B.磁盘空间的管理C.文件的存取D.文件目录的查找7.文件系统采用多级目录结构可以()。

A.减少系统开销B.节省存储空间C.解决命名冲突D.缩短信息传送时间8.同一文件在不同存储介质上()的组织形式。

A. 可采用用户指定B.应该用相同C.必定采用不同D.可以采用不同9.为了允许不同的用户可以使用相同的文件名,通常在文件系统中采用()。

A.重名转换机制B.存取控制方式C.多级目录结构D.标识符对照表10.采用多级目录结构的系统中,允许多个用户共享某些文件。

因此,各用户()文件名访问共享文件。

A.可以按自定义的B.必须用系统规定的C.应该用相同的D.只能用不同的11.用户要求访问一个存放在存储介质上的文件时,首先要调用操作系统提供的()文件操作。

A.打开B.建立C.读D.关闭12.用户可以调用()文件操作来归还文件的使用权。

A.打开B.建立C.关闭D.删除13.用户可以要求文件系统删除一个不再需要使用的文件,但提出删除要求前应先调用()文件操作。

A.写B.打开C.建立D. 关闭14.为防止系统故障造成文件被破坏,通常可采用()方法来保护。

A.存取控制矩阵B.定时转储文件C.设置口令D.密码转换15.为防止用户使用共享文件时可能造成文件被破坏,通常可采用()方法来保护文件。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1.试说明I/O系统的基本功能。

答:I/O系统第一、二方面的功能是为了方便用户使用I/O设备;第三、四方面的功能是用于提高CPU和I/O设备的利用率;第五、六方面的功能是为用户在共享设备时提供方便,以保证系统能有条不紊的运行,当系统发生错误时能及时发现错误,甚至于能自动修正错误。

2.简要说明I/O软件的四个层次的基本功能。

答:用户层I/O软件,实现与用户交互的接口,用户可直接调用该层所提供的、与I/O 操作有关的库函数对设备进行操作;设备独立性软件,用于实现用户程序与设备驱动器的统一接口、设备命名、设备的保护以及设备的分配与释放等,同时为设备管理和数据传送提供必要的存储空间;设备驱动程序,与硬件直接相关,用于具体实现系统对设备发出的操作指令,驱动I/O设备工作的驱动程序;中断处理程序,用于保存被中断进程的CPU环境,转入相关的中断处理程序进行处理,处理完毕再恢复被中断进程的现场后,返回到被中断的进程。

3.I/O系统接口与软件/硬件(RW/HW)接口分别是什么接口?答:I/O系统接口是I/O系统与上层系统之间的接口,向上层提供对设备进行操作的抽象I/O命令,以方便高层对设备的使用;软件/硬件(RW/HW)接口,它的上面是中断处理程序和用于不同设备的设备驱动程序,它的下面是各种设备的控制器。

4.与设备无关性的基本含义是什么?为什么要设置该层?答:用户不仅可以使用抽象的I/O命令,还可使用抽象的逻辑设备名来使用设备,另一方面,也可以有效地提高OS的可移植性和易适应性,对于OS本身而言,应允许在不需要将整个操作系统进行重新编译的情况下,增加新的设备驱动程序,以方便新的I/O 设备的安装。

5.试说明设备控制器的组成。

答:设备控制器与处理机的接口、设备控制器与设备的接口、I/O逻辑。

6.为了实现CPU与设备控制器间的通信,设备控制器应具备哪些功能?答:接受和识别命令、数据交换、标识和报告设备的状态、地址识别、数据缓冲区、差错控制。

7.什么是内存映像I/O?它是如何实现的?答:驱动程序将抽象I/O命令转换出的一系列具体的命令、参数等数据装入设备控制器的相应寄存器,由控制器来执行这些命令,具体实施对I/O设备的控制。

内存映像I/O 在编址上不再区分内存单元地址和设备控制器中的寄存器地址,都采用k。

当k值处于0~n-1时,被认为是内存地址,若k大于等于n时,被认为是某个控制器的寄存器地址。

内存映像I/O方式统一了对内存和对控制器的访问方法,简化了I/O的编程。

8.为什么说中断是OS赖以生存的基础?答:中断是多道程序得以实现的基础,没有中断,就不可能实现多道程序,因为进程之间的切换是通过中断来完成的。

另一方面,中断也是设备管理的基础,为了提高处理机的利用率和实现CPU与I/O设备并行执行,也必需有中断的支持。

中断处理程序是I/O 系统中最低的一层,它是整个I/O系统的基础。

9.对多中断源的两种处理方式分别用于何种场合?答:屏蔽(禁止)中断:当处理机正在处理一个中断时,将屏蔽掉所有的中断,即处理机对任何新到的中断请求,都暂时不予理睬,而让它们等待。

直到处理机已完成本次中断的处理后,处理机再去检查是否有中断发生。

若有,再去处理新到的中断,若无,则返回被中断的程序。

该方法中,所有中断都将按顺序依次处理。

嵌套中断:在设置了中断优先级的系统中,按这样的规则来进行优先级控制:当同时有多个不同优先级的中断请求时,CPU优先响应最高优先级的中断请求;高优先级的中断请求可以抢占正在运行的低优先级中断的处理机,该方式类似于基于优先级的抢占式进程调度。

10.设备中断处理程序通常需要完成哪些工作?答:进行进程上下文的切换,对处理中断信号源进行测试,读取设备状态和修改进程状态。

11.简要说明中断处理程序对中断进行处理的几个步骤。

答:测定是否有未响应的中断信号、保护被中断进程的CPU环境、转入相应的设备处理程序、中断处理、恢复CPU的现场并退出中断。

12.试说明设备驱动程序具有哪些特点。

答:驱动程序是实现在与设备无关的软件和设备控制器之间通信和转换的程序,具体说,它将抽象的I/O请求转换成具体的I/O操作后传送给控制器。

又把控制器中所记录的设备状态和I/O操作完成情况,及时地反映给请求I/O的进程;驱动程序与设备控制器以及I/O设备的硬件特性紧密相关,对于不同类型的设备,应配置不同的驱动程序。

但可以为相同的多个终端设置一个中断驱动程序;驱动程序与I/O设备所采用的I/O控制方式紧密相关,常用的I/O控制方式是中断驱动和DMA方式;由于驱动程序与硬件紧密相关,因而其中的一部分必须用汇编语言书写;驱动程序应允许可重入。

一个正在运行的驱动程序常会在一次调用完成前被再次调用。

13.设备驱动程序通常要完成哪些工作?答:当设备完成了I/O之后设备控制器向CPU发送一个中断请求CPU响应后即可转向中断处理程序。

中断处理程序的工作可分为以下几步:唤醒等待该I/O的进程、保护被中断进程的CPU运行环境、分析中断原因转入相应的中断处理程序、进行中断处理、恢复被中断进程的现场。

14.简要说明设备驱动程序的处理过程可分为哪几步。

答:将抽象要求转换为具体要求、对服务请求进行校验、检查设备的状态、传送必要的参数、启动I/O设备。

15.试说明推动I/O控制发展的主要因素是什么。

答:随着DMA控制器的出现,从以字节为单位,改为以数据块为单位进行传输,大大地改善了块设备的I/O性能。

I/O通道的出现,又使对I/O操作的组织和数据的传送都能独立进行,而无需CPU的干预。

16.有哪几种I/O控制方式?各适用于何种场合?答:有使用轮询的可编程I/O方式、使用中断的可编程I/O方式、直接存储器访问方式。

使用轮询的可编程I/O方式:在处理机向控制器发出一条I/O指令,启动输入设备输入数据时,要同时把状态寄存器中的忙/闲标志busy置为1,然后便不断地循环测试busy(称为轮询)。

busy=1,表示输入机尚未输完一个字(符),处理机应继续对该标志进行测试,直至busy=0,表明输入机已将输入数据送入控制器的数据寄存器中。

于是处理机将数据寄存器中的数据取出,送入内存指定单元中,这样便完成了一个字(符)的I/O。

使用中断的可编程I/O方式:当某进程要启动某个I/O设备工作时,便由CPU向相应的设备控制器发出一条I/O命令,然后立即返回继续执行原来的任务。

设备控制器于是按照该命令的要求去控制指定I/O设备。

此时,CPU与I/O设备并行操作。

直接存储器访问方式:数据传输的基本单位是数据块,即在CPU与I/O设备之间,每次传送至少一个数据块、所传送的数据是从设备直接送入内存的,或者相反、仅在传送一个或多个数据块的开始和结束时,才需CPU干预,整块数据的传送是在控制器的控制下完成的。

可见,DMA方式较之中断驱动方式又进一步提高了CPU与I/O设备的并行操作程度。

17.试说明DMA的工作流程。

答:CPU要从磁盘读入一数据块时,便向磁盘控制器发送一条读命令。

该命令被送入命令寄存器CR中。

同时,需要将本次要读入数据在内存的起始目标地址送入内存地址寄存器MAR中。

将要读数据的字(节)数送入数据计数器DC中。

还须将磁盘中的源地址直接送至DMA控制器的I/O控制逻辑上。

然后,启动DMA控制器进行数据传送。

以后,CPU便可去处理其它任务,整个数据传送过程由DMA控制器进行控制。

当DMA 控制器已从磁盘中读入一个字(节)的数据,并送入数据寄存器DR后,在挪用一个存储器周期,将该字(符)传送到MAR所指示的内存单元中。

然后便对MAR内容加1,将DC内容减1,若减1后DC内容不为0,表示传送未完,便继续传送下一个字(节);否则,由DMA控制器发出中断请求。

18.为何要引入与设备的无关性?如何实现设备的独立性?答:为了方便用户和提高OS的可适应性与可扩展性,在现代OS的I/O系统中,都无一例外地增加了与设备无关的I/O设备,以实现设备独立性。

实现设备的独立性以物理设备名使用设备、引入了逻辑设备名、逻辑设备名称到物理设备名称的转换。

19.与设备的无关的软件中,包括了哪些公有操作的软件?答:设备驱动程序的统一接口、缓冲管理、差错控制、对独立设备的分配与回收、独立于设备的逻辑数据块。

20.在考虑到设备的独立性时,应如何分配独占设备?答:系统为实现对独占设备的分配,必须在系统中配置相应的数据结构。

设备分配中的数据结构,记录了对设备或控制器进行控制所需的信息。

在进行设备分配时需要如下的数据结构:设备控制表DCT:包括用于指示设备类型的字段type和设备标识字段deviceid,设备队列队首指针、忙/闲标志、重复执行次数;控制器控制表;通道控制表;系统设备表。

21.何谓设备虚拟?实现设备虚拟时所依赖的关键技术是什么?答:设备虚拟是指把独占设备经过某种技术处理改造成虚拟设备。

可虚拟设备是指一台物理设备再采用虚拟技术后,可变成多台逻辑上的的虚拟设备,则可虚拟设备是可共享的设备1,将它同时分配给多个进程使用,并对这些访问该物理设备的先后次序进行控制。

22.在实现后台打印时,SPOOLing系统应为请求I/O的进程提供哪些服务?答:由输出进程再输出井中为之申请一空闲盘块区,并将要打印的数据送入其中;输出进程为用户进程申请一张空白的用户打印表,并将用户的打印要求填入其中,再将该表挂到请求打印队列上;一旦打印机空闲,输出进程便从请求打印队列的队首取出一张请求打印表,根据表中的要求将要打印的数据从输出井传送到内存缓冲区,再由打印机进行打印。

23.假脱机系统向用户提供共享打印机的基本思想是什么?答:SPOOLing技术是低速输入输出设备与主机交换的一种技术,通常也称为“假脱机真联机”,他的核心思想是以联机的方式得到脱机的效果。

24.引入缓冲的主要原因是什么?答:缓和CPU和I/O设备间速度不匹配的矛盾、减少对CPU的中断频率,放宽对CPU中断响应时间的限制、解决数据粒度不匹配的问题、提高CPU和I/O设备之间的并行性。

25.在单缓冲情况下,为什么系统对一块数据的处理时间为max(C,T)+M?答:在块设备输入时,假定从磁盘把一块数据输入到缓冲区的时间为T,OS将该缓冲区中的数据传送到用户区的时间为M,而CPU对这一块数据处理(计算)的时间为C。

由于T和C是可以并行的,当T>C时,系统对每一块数据的处理时间为M+T;反之则为M+C,故可把系统对每一块数据的处理时间表示为Max(C,T)+M。

26.为什么在双缓冲情况下,系统对一块数据的处理时间为max(T,C)?答:写入者花费时间将数据写满一个缓冲区后再写另一个缓冲区;读出者花费时间M将一个缓冲区数据送到用户区后再传送另一个缓冲区数据,计算者读出用户区数据进行处理。

相关文档
最新文档