一、单项选择题(共 24 道试题,共 72 分。) 1. 特别文件是与( )有关的文件。 A. 文本 B. 图像 C. 硬件设备 D. 二进制数据
满分:3 分
2. 在UNIX/Linux系统中,用户程序经过编译之后得到的可执行文件属于(A. ASCII文件 B. 普通文件 C. 目录文件 D. 特别文件
满分:3 分
3. 下列描述不属于文件系统功能的是( )。 A. 建立文件目录 B. 提供一组文件操作 C. 实现对磁盘的驱动调度 D. 管理文件存储空间
满分:3 分
4. 文件管理实际上是管理( )。 A. 主存空间 B. 辅助存储空间 C. 逻辑地址空间 D. 物理地址空间
满分:3 分
1 / 91
)。 5. 文件系统为每个文件另建立一张指示逻辑记录和物理记录之间的对应关系表,由此
表和文件本身构成的文件是( )。 A. 连续文件 B. 链接文件 C. 索引文件 D. 逻辑文件
满分:3 分
6. 数据库文件的逻辑结构形式是( )。 A. 流式文件 B. 记录式文件 C. 档案文件 D. 只读文件
满分:3 分
7. 文件的逻辑组织是( )的文件组织形式。 A. 在外部设备上 B. 从用户观点看 C. 虚拟存储 D. 目录
满分:3 分
8. 在二级目录结构中,同一个用户不同文件的文件名( )。 A. 可以相同 B. 可以不同 C. 一定不同 D. 应该相同
满分:3 分
9. 如果文件系统中有两个文件重名,不应采用( )结构。 A. 单级目录
2 / 91
B. 树形目录 C. 二级目录 D. 非循环图目录
满分:3 分
10. 当前目录是/usr/meng,其下属文件prog/file.c的绝对路径名是( )。 A. /usr/meng/file.c B. /usr/file.c C. /prog/file.c
D. /usr/meng/prog/file.c
满分:3 分
11. 为防止用户共享文件时破坏文件,往往采用( )方式。 A. 设置口令 B. 加密 C. 规定存取权限 D. 定期备份
满分:3 分
12. 在UNIX系统中,某文件的使用权限设置为754,则表示(A. 文件主可读、写、执行 B. 同组用户仅能读 C. 其他用户可读、写、执行 D. 同组用户仅能写
满分:3 分 13. 通道是一种( )。 A. I/O端口 B. 数据通道 C. I/O专用处理机
3 / 91
)。D. 软件工具
满分:3 分
14. 通过硬件和软件的功能扩充,把原来独占的设备改造成为能为若干用户共享的设
备,这种设备称为( )设备。 A. 存储 B. 共享 C. 虚拟 D. 块
满分:3 分
15. 下列描述中,不是设备管理的功能的是( )。 A. 实现缓冲区管理 B. 进行设备分配 C. 实现中断处理 D. 完成I/O操作
满分:3 分
16. 下列关于Linux系统设备管理的描述中,不正确的是(A. 把设备作为特殊文件处理 B. 将存储设备称为字符设备 C. 设备名由主、次设备号构成 D. 设备驱动程序可动态装卸
满分:3 分
17. SPOOLing技术可以实现设备的( )分配。 A. 独占 B. 共享 C. 虚拟 D. 物理
满分:3 分
4 / 91
)。18. 操作系统中采用的以空间换取时间技术的是( )。 A. SPOOLing技术 B. 虚拟存储技术 C. 覆盖与交换技术 D. 通道技术
满分:3 分
19. 下列关于设备驱动程序的描述,错误的是( )。 A. 设备驱动程序应可以动态装卸
B. 设备驱动程序往往由生产设备的厂家提供 C. 设备驱动程序可使用系统调用
D. 设备驱动程序可实现请求I/O进程与设备控制器之间的通信 满分:3 分
20. 设备的打开、关闭、读、写等操作是由( )完成的。 A. 用户程序 B. 编译程序 C. 设备分配程序 D. 设备驱动程序
满分:3 分
21. 为了使多个进程能有效地同时处理阵发性的输入和输出,最好使用(缓冲技术。 A. 多缓冲 B. SPOOLing C. 单缓冲区 D. 双缓冲区
满分:3 分
22. 引入缓冲技术的主要目的是( )。 A. 改善用户编程环境
5 / 91
)结构的
B. 提高CPU的处理速度
C. 提高CPU与设备之间的并行程度 D. 降低计算机的硬件成本
满分:3 分
23. 设磁盘的转速为3000转/分,盘面划分为10个扇区,则读取一个扇区的时间是
( )。提示:1(m)分等于60秒(s),1秒等于1000毫秒(ms)。 A. 20ms B. 2ms C. 3ms D. 1ms
满分:3 分
24. 一个含有6个盘片的双面硬盘,盘片每面有100条磁道,则该硬盘的柱面数为
( )。 A. 12 B. 250 C. 100 D. 1200
满分:3 分
二、判断题(共 14 道试题,共 28 分。)
1. UNIX/Linux系统中的文件名不区分大小写。( ) A. 错误 B. 正确
满分:2 分
2. 文件系统要负责文件存储空间的管理,但不能完成文件名到物理地址的转换。
( ) A. 错误 B. 正确
满分:2 分
6 / 91
3. 可顺序存取的文件不一定能随机存取;但可随机存取的文件都可以顺序存取。
( ) A. 错误 B. 正确
满分:2 分
4. 文件系统中文件的内容只能是源代码。( ) A. 错误 B. 正确
满分:2 分
5. 在文件系统的支持下,用户需要知道文件存放的物理地址。( ) A. 错误 B. 正确
满分:2 分
6. 在采用树形目录结构的文件系统中,检索文件必须从根目录开始。( ) A. 错误 B. 正确
满分:2 分
7. 文件系统中,允许当某个用户打开一个共享文件后,其他用户也可以访问之。
( ) A. 错误 B. 正确
满分:2 分
8. 当进程请求在主存和外设之间传送信息时,设备分配程序分配设备的过程通常是先
分配通道,再分配控制器,最后分配设备。( ) A. 错误 B. 正确
满分:2 分
9. 计算机系统为每一台设备确定的一个用以标识它的编号,被称为设备的绝对号。
( ) A. 错误 B. 正确
7 / 91
满分:2 分
10. 通道是处理输入、输出的软件。( ) A. 错误 B. 正确
满分:2 分
11. 用户程序应与实际使用的物理设备无关,这种特性称作设备独立性。( ) A. 错误 B. 正确
满分:2 分
12. SPOOLing系统实现设备管理的虚拟技术,即:将共享设备改造为独占设备。它由
专门负责I/O的常驻内存的进程以及输入、输出井组成。( ) A. 错误 B. 正确
满分:2 分
13. 一个设备驱动程序可以控制同一类型的多个物理设备。( ) A. 错误 B. 正确
满分:2 分
14. 缓冲区仅限于CPU和I/O设备之间,提高了它们的并行程度。( ) A. 错误 B. 正确
满分:2 分
第6章教材习题解答
1. 基本概念和术语
存储设备、输入/输出设备、虚拟设备、设备独立性
存储设备——它们主要是计算机用来存储信息的设备,如磁盘(硬盘和软盘)、磁带等。
8 / 91
输入设备是计算机用来接受来自外部世界信息的设备,例如终端键盘输入、卡片输入机、纸带输入机等。输出设备是将计算机加工处理好的信息送向外部世界的设备,例如终端屏幕显示或打印输出部分、行式打印机、卡片输出机等。
虚拟设备是利用某种技术把独占设备改造成可由多个进程共用的设备,这种设备并非物理上变成了共享设备,而是用户使用它们时“感觉”它是共享设备。
设备独立性就是用户程序应与实际使用的物理设备无关,由操作系统考虑因实际设备不同而需要使用不同的设备驱动程序等问题。 2. 基本原理和技术
(1) UNIX/Linux系统中主次设备号各表示什么含义?
UNIX/Linux系统中主设备号表示设备类型,次设备号表示同类设备中的相对序号。 (2) 为什么要引入缓冲技术?设置缓冲区的原则是什么?
引入缓冲技术的主要目的是:① 缓和CPU与I/O设备间速度不匹配的矛盾;② 提高它们之间的并行性;③ 减少对CPU的中断次数,放宽CPU对中断响应时间的要求。 设置缓冲区的原则是:如果数据到达率与离去率相差很大,则可采用单缓冲方式;如果信息的输入和输出速率相同(或相差不大)时,则可用双缓冲区;对于阵发性的输入、输出,可以设立多个缓冲区。
(3) 一般I/O软件系统的层次是怎样的?
I/O软件系统分为如下4个层次:① 中断处理程序;② 设备驱动程序;③ 与设备无关的操作系统I/O软件;④ 用户级I/O软件。 (4) 操作系统中设备管理的功能是什么?
操作系统中设备管理的功能是:监视设备状态;进行设备分配;完成I/O操作;缓冲管理与地址转换。
(5) 设备分配技术主要有哪些?常用的设备分配算法是什么? 设备分配技术主要有:独占分配、共享分配和虚拟分配。
常用的设备分配算法是:先来先服务算法和优先级高的优先服务算法。 (6) SPOOLing系统的主要功能是什么?
SPOOLing系统的主要功能是:将独占设备改造为共享设备,实现了虚拟设备功能。 (7) 处理I/O请求的主要步骤是什么?
处理I/O请求的主要步骤是:用户进程发出I/O请求;系统接受这个I/O请求,转去执行操作系统的核心程序;设备驱动程序具体完成I/O操作;I/O完成后,系统进行I/O中断处理,然后用户进程重新开始执行。
(8) 设备驱动程序的主要功能是什么?它在系统中处于什么位置?
设备驱动程序的功能主要有:接受用户的I/O请求;取出请求队列中队首请求,将相应设备分配给它;启动该设备工作,完成指定的I/O操作;处理来自设备的中断。
设备驱动程序在系统中处于核心空间,位于设备控制器的上层,目的是对核心I/O子系统隐藏各个设备控制器的差别。
(9) Linux系统中对设备怎样管理?
Linux系统中对设备管理具有下列共性:① 每个设备都对应文件系统中的一个索引节点,都有一个文件名;② 应用程序通常可以通过系统调用open( )打开设备文件,建立起与目标设备的连接;③ 对设备的使用类似于对文件的存取;④ 设备驱动程序是系统内核的一部分,它们必须为系统内核或者它们的子系统提供标准的接口;⑤ 设备驱动程序利用一些标准的内核服务,如内存分配等。
(10) 简述Linux系统中配置网卡的大致步骤。 Linux系统中配置网卡的大致步骤如下:
9 / 91
① 打开机器电源,将Linux系统启动。
② 配置网络参数。在“控制面板”窗口上双击“网络”图标。在弹出的窗口中配置网络参数,单击“确定”。
③ 网卡自动检测。在出现“网卡配置”对话框中,对配置的网卡进行自动检测;按照所连网络的网络管理机构统一的规定,将参数填入相应的数据框中,如“网关”、“域名服务器”等。上述参数配置好后,单击“确定”按钮,使得网络参数设置生效。
④ 重新启动,双击主窗口上的“浏览器”,可以利用网络提供的各种服务功能。 3. 思考题
假设一个磁盘有200个磁道,编号从0~199。当前磁头正在143道上服务,并且刚刚完成了125道的请求。如果寻道请求队列的顺序是:
86, 147, 91, 177, 94, 150, 102, 175, 130
问:为完成上述请求,下列算法各自磁头移动的总量是多少? ① FCFS ② SSTF ③ 电梯法 解:
(1)采用先来先服务磁盘调度算法FCFS,进行调度的情况为:从143道开始
下一磁道 移动磁道数 86 147 91 177 94 150 102 175 130
57 61 56 86 83 56 48 73 45
磁头移动总量为565。
(2)采用最短寻道时间优先磁盘调度算法SSTF,进行调度的情况为:从143道开始
下一磁道 移动磁道数 147 150 130 102 94 91 86 175 177
4 3 20 28 8 3 5 89 2
磁头移动总量为162。
(3)采用电梯磁盘调度算法,进行调度的情况为:从143道开始
下一磁道 移动磁道数 147 150 175 177 130 102 94
4 3 25 2 47 28 8
10 / 91
91 86
3 5 磁头移动总量为125。
第5章教材习题解答
1. 基本概念和术语
(1) 解释下列概念:文件、文件系统、文件的逻辑组织、文件的物理组织、目录项、目录文件、路径、当前目录。
文件是被命名的相关信息的集合体。通常存放在外存上,可以作为一个独立单位存放和实施相应的操作。
文件系统是操作系统中负责操纵和管理文件的一整套机制,它实现文件的共享和保护,方便用户“按名存取”。
文件的逻辑组织——用户对文件的观察和使用是从自身处理文件中数据时采用的组织方式来看待文件组织形式。这种从用户观点出发所见到的文件组织形式称为文件的逻辑组织。
文件的物理组织——文件在存储设备上的存储组织形式称为文件的物理组织。
目录项——为了加快对文件的检索,往往把文件控制块集中在一起进行管理。这种文件控制块的有序集合就称为文件目录。当然,文件控制块也就是其中的目录项。 目录文件——全由目录项构成的文件就称为目录文件。
路径——在树形目录结构中,从根出发、经由所需子目录、到达指定文件的通路。 当前目录——为节省文件检索的时间,每个用户可以指定一个目录作为当前的工作目录,以后访问文件时,就从这个目录开始向下顺次检索。这个目录就称作当前目录。 2. 基本原理和技术
(1) UNIX/Linux系统中文件分为哪些类型?
UNIX/Linux系统中文件分为以下类型:普通文件,目录文件,特殊文件。 (2) 文件的逻辑组织有几种形式?
文件的逻辑组织有以下形式:无结构文件和有结构文件。无结构文件是指文件内部不再划分记录,它是由一组相关信息组成的有序字符流,即流式文件。有结构文件又称为记录式文件,它在逻辑上可被看成一组连续顺序的记录的集合,又可分为定长记录文件和变长记录文件两种。
(3) 文件的物理组织形式主要有哪几种?各有什么优缺点?
文件的物理组织形式主要有:连续文件、链接文件、索引文件、多重索引文件。各自的优缺点见下表: 连续文件 优 点 顺序存取速度较快。 缺 点 建文件时就确定它的长度很难实现;它不便于文件的动态扩充;可能出现外部碎片,从而造成浪费。 一般仅适于顺序访问,而不利于对文件的随机存取;每个物理块上增加一个连接字,为信息管理添加了一些麻烦;可靠性差。 链接文件 克服了连续文件的缺点。 11 / 91
索引文件 除了具备链接文件的优点之外,还克服了它的缺点。 除具有一般索引文件的优点外,还可满足对灵活性和节省内存的要求。 需要增加索引表带来的空间开销。往往以内存空间为代价来换取存取速度的改善。 间接索引需要多次访盘而影响速度。 多重索引文件 (4) 一般说来,文件系统应具备哪些功能?
一般说来,文件系统应具备以下功能:文件管理;目录管理;文件存储空间的管理;文件的共享和保护;提供方便的接口。 (5) 文件控制块与文件有何关系?
文件控制块——用于控制和管理文件的数据结构,其中包括文件名、文件类型、位置、大小等信息。
文件控制块与文件一一对应,即在文件系统内部,给每个文件唯一地设置一个文件控制块,核心利用这种结构对文件实施各种管理。
(6) 文件系统中的目录结构有哪几种基本形式?各有何优缺点?UNIX/Linux系统中采用哪种目录结构?
文件系统中的目录结构有:单级目录结构,二级目录结构,树形目录结构,非循环图目录结构。各自的优缺点如下表: 目录结构 单级目录 二级目录 优 点 简单,能实现按名存取。 允许重名;提高了检索目录的速度。 文件的层次和隶属关系很清晰,便于实现不同级别的存取保护和文件系统的动态装卸。 具有树形结构的优点,而且实现对文件的永久共享。 缺 点 查找速度慢;不允许重名; 不便于共享。 仍不利于文件共享。 树形目录 只能在用户级对文件进行临时共享。 非循环图目录 管理较复杂。 UNIX系统中采用非循环图目录结构,即带链接的树形目录结构。
(7) 常用的磁盘空闲区管理技术有哪几种?试简要说明各自的实现思想。
常用的磁盘空闲区管理技术有:空闲盘块表法、空闲块链接法、位示图法、空闲块成组链接法。
空闲盘块表法——所有连续的空闲盘块在表中占据一项,其中标出第一个空闲块号和该项中所包含的空闲块个数,以及相应的物理块号。利用该表进行盘块的分配和文件删除时盘块的回收。
空闲块链接法——所有的空闲盘块链在一个队列中,用一个指针(空闲区头)指向第一个空闲块,而各个空闲块中都含有下一个空闲区的块号,最后一块的指针项记为NULL,表示链尾。分配和释放盘块都在链头进行。
位示图法——利用一串二进位的值来反映磁盘空间的分配情况,每个盘块都对应一位。如果盘块是空闲的,对应位是0;如盘块已分出去,则对应位是1。
空闲块成组链接——把所有空闲盘块按固定数量分组,组与组之间形成链接关系,最后一组的块号(可能不满一组)通常放在内存的一个专用栈结构中。这样,平常对盘块的分配和释放是在栈中进行(或构成新的一组)。
12 / 91
(8) 什么是文件的共享?文件链接如何实现文件共享?
文件的共享是指系统允许多个用户(进程)共同使用某个或某些文件。
文件链接是给文件起别名,即将该文件的目录项登记在链接目录中。这样,访问该文件的路径就不只一条。不同的用户(或进程)就可以利用各自的路径来共享同一文件。 (9) 什么是文件保护?常用的保护机制有哪些?
文件保护——是指文件免遭文件主或其他用户由于错误的操作而使文件受到破坏。 常用的文件保护机制有:
① 命名——自己的文件名,不让他人知道; ② 口令——对上口令,才能存取;
③ 存取控制——有权才可存取,不同权限干不同的事; ④ 密码——信息加密,解密复原。
(10) 什么是文件的备份?数据备份的方法有哪几种?按时机分,备份分哪几种? 文件备份就是把硬盘上的文件在其它外部的存储介质(如磁带或软盘)上做一个副本。
数据备份的方法有完全备份、增量备份和更新备份三种。 按时机分,后备分为“定期备份”和“不定期备份”。
(11) 硬盘分区有哪三种类型?Linux可以安装在哪些分区上?
硬盘分区有三种类型:主分区、扩展分区和逻辑分区。Linux既可以安装在主分区上,也可以安装在逻辑分区上。
(12) 在Linux系统中,ext2文件系统的构造形式是什么?超级块的作用是什么? 在Linux系统中,ext2文件系统的构造形式为引导块和一系列的块组。其中块组又包括超级块、块组描述结构、块位示图、索引节点位示图、索引节点表和数据块。
超级块中包含有文件系统本身的大小和形式的基本信息。文件系统管理员可以利用这些信息来使用和维护文件系统。 3. 思考题
(1) 在UNIX/Linux系统中,如何表示一个文件的存取权限?
在UNIX/Linux系统中,一个文件的存取权限用9个二进制位表示:前三位分别表示文件主的读、写和执行权限,中间三位分别表示同组用户的读、写和执行权限,最后三位分别表示其他用户的读、写和执行权限。
(2) 在Linux系统中,为什么要提供VFS?
Linux系统可以支持多种文件系统,为此,必须使用一种统一的接口,这就是虚拟文件系统(VFS)。通过VFS将不同文件系统的实现细节隐藏起来,因而从外部看上去,所有的文件系统都是一样的。
(3) 简述管道文件的实现机制。执行命令 cat myfile | wc –l 的输出应是什么? 管道文件的实现机制如下如所示:
13 / 91
在执行管道命令行时要创建一个管道文件和两个进程:“|”对应管道文件;由系统自动处理两个进程按先入先出的方式同步、调度和缓冲。管道文件是利用系统调用pipe( )创建的、在同族进程间进行大量信息传送的打开文件。
执行命令 cat myfile | wc –l 的输出是文件myfile的行数。
03任务_0002
一、单项选择题(共 24 道试题,共 72 分。) 1. 特别文件是与( )有关的文件。 A. 文本B. 图像C. 硬件设备D. 二进制数据 满分:3 得分:3
2. 在UNIX/Linux系统中,用户程序经过编译之后得到的可执行文件属于( )。 A. ASCII文件B. 普通文件C. 目录文件D. 特别文件 满分:3 得分:3
3. 下列描述不属于文件系统功能的是( )。 A. 建立文件目录B. 提供一组文件操作C. 实现对磁盘的驱动调度D. 管理文件存储空间 满分:3 得分:3
4. 文件管理实际上是管理( )。 A. 主存空间B. 辅助存储空间C. 逻辑地址空间D. 物理地址空间 满分:3 得分:3
5. 文件系统为每个文件另建立一张指示逻辑记录和物理记录之间的对应关系表,由此表和文件本身构成的文件是A. 连续文件B. 链接文件C. 索引文件
14 / 91
D. 逻辑文件
满分:3 得分:3
6. 数据库文件的逻辑结构形式是( )。 A. 流式文件 B. 记录式文件
C. 档案文件 D. 只读文件 满分:3 得分:3
7. 文件的逻辑组织是( )的文件组织形式。 A. 在外部设备上 B. 从用户观点看 C. 虚拟存储
D. 目录
满分:3 得分:3
8. 在二级目录结构中,同一个用户不同文件的文件名( )。 A. 可以相同 B. 可以不同 C. 一定不同 D. 应该相同
满分:3 得分:3
9. 如果文件系统中有两个文件重名,不应采用( )结构。 A. 单级目录 B. 树形目录 C. 二级目录
D. 非循环图目录 满分:3 得分:3
10. 当前目录是/usr/meng,其下属文件prog/file.c的绝对路径名是(A. /usr/meng/file.c B. /usr/file.c C. /prog/file.c
D. /usr/meng/prog/file.c 满分:3 得分:3
11. 为防止用户共享文件时破坏文件,往往采用( )方式。 A. 设置口令
B. 加密
C. 规定存取权限
15 / 91
)。 D. 定期备份
满分:3 得分:3
12. 在UNIX系统中,某文件的使用权限设置为754,则表示( )。 A. 文件主可读、写、执行
B. 同组用户仅能读
C. 其他用户可读、写、执行 D. 同组用户仅能写
满分:3 得分:3 13. 通道是一种( )。 A. I/O端口 B. 数据通道
C. I/O专用处理机 D. 软件工具
满分:3 得分:3
14. 通过硬件和软件的功能扩充,把原来独占的设备改造成为能为若干用户共享的设备,这种设备称为(A. 存储 B. 共享 C. 虚拟
D. 块
满分:3 得分:3
15. 下列描述中,不是设备管理的功能的是( )。 A. 实现缓冲区管理 B. 进行设备分配 C. 实现中断处理 D. 完成I/O操作
满分:3 得分:3
16. 下列关于Linux系统设备管理的描述中,不正确的是( )。 A. 把设备作为特殊文件处理 B. 将存储设备称为字符设备 C. 设备名由主、次设备号构成
D. 设备驱动程序可动态装卸 满分:3 得分:3
17. SPOOLing技术可以实现设备的( )分配。 A. 独占 B. 共享 C. 虚拟
16 / 91
)设D. 物理
满分:3 得分:3
18. 操作系统中采用的以空间换取时间技术的是( )。 A. SPOOLing技术B. 虚拟存储技术C. 覆盖与交换技术D. 通道技术 满分:3 得分:3
19. 下列关于设备驱动程序的描述,错误的是( )。 A. 设备驱动程序应可以动态装卸
B. 设备驱动程序往往由生产设备的厂家提供C. 设备驱动程序可使用系统调用
D. 设备驱动程序可实现请求I/O进程与设备控制器之间的通信 满分:3 得分:3
20. 设备的打开、关闭、读、写等操作是由( )完成的。 A. 用户程序B. 编译程序C. 设备分配程序D. 设备驱动程序 满分:3 得分:3
21. 为了使多个进程能有效地同时处理阵发性的输入和输出,最好使用( )结构的缓冲技术。 A. 多缓冲B. SPOOLingC. 单缓冲区D. 双缓冲区 满分:3 得分:3
22. 引入缓冲技术的主要目的是( )。 A. 改善用户编程环境B. 提高CPU的处理速度
C. 提高CPU与设备之间的并行程度D. 降低计算机的硬件成本
满分:3 得分:3
23. 设磁盘的转速为3000转/分,盘面划分为10个扇区,则读取一个扇区的时间是( )。提示:1(m)分等1000毫秒(ms)。
A. 20msB. 2msC. 3ms
17 / 91
D. 1ms
满分:3 得分:3
24. 一个含有6个盘片的双面硬盘,盘片每面有100条磁道,则该硬盘的柱面数为( )。 A. 12B. 250C. 100D. 1200
满分:3 得分:3
二、判断题(共 14 道试题,共 28 分。)
1. UNIX/Linux系统中的文件名不区分大小写。( ) A. 错误B. 正确
满分:2 得分:2
2. 文件系统要负责文件存储空间的管理,但不能完成文件名到物理地址的转换。( ) A. 错误B. 正确
满分:2 得分:2
3. 可顺序存取的文件不一定能随机存取;但可随机存取的文件都可以顺序存取。( ) A. 错误B. 正确
满分:2 得分:2
4. 文件系统中文件的内容只能是源代码。( ) A. 错误B. 正确
满分:2 得分:2
5. 在文件系统的支持下,用户需要知道文件存放的物理地址。( ) A. 错误B. 正确
满分:2 得分:2
6. 在采用树形目录结构的文件系统中,检索文件必须从根目录开始。( ) A. 错误B. 正确
满分:2 得分:2
7. 文件系统中,允许当某个用户打开一个共享文件后,其他用户也可以访问之。( ) A. 错误B. 正确
满分:2 得分:2
8. 当进程请求在主存和外设之间传送信息时,设备分配程序分配设备的过程通常是先分配通道,再分配控制器,
18 / 91
A. 错误B. 正确
满分:2 得分:2
9. 计算机系统为每一台设备确定的一个用以标识它的编号,被称为设备的绝对号。( ) A. 错误B. 正确
满分:2 得分:2
10. 通道是处理输入、输出的软件。( ) A. 错误B. 正确
满分:2 得分:2
11. 用户程序应与实际使用的物理设备无关,这种特性称作设备独立性。( ) A. 错误B. 正确
满分:2 得分:2
12. SPOOLing系统实现设备管理的虚拟技术,即:将共享设备改造为独占设备。它由专门负责I/O的常驻内存的成。( )
A. 错误B. 正确
满分:2 得分:2
13. 一个设备驱动程序可以控制同一类型的多个物理设备。( ) A. 错误B. 正确
满分:2 得分:2
14. 缓冲区仅限于CPU和I/O设备之间,提高了它们的并行程度。( ) A. 错误B. 正确
满分:2 得分:2
《计算机操作系统》第05章在线测试 《计算机操作系统》第05章在线测试 剩余时间:5 4:17 答题须知:1、本卷满分20分。 2、答完题后,请一定要单击下面的“交卷”按钮交卷,否则无法记录本试卷的成绩。 3、在交卷之前,不要刷新本网页,否则你的答题结果将会被清空。 第一题、单项选择题(每题1分,5道题共5分) 1、中央处理器启动通道后,设备的控制工作是由( )。 19 / 91
A、中央处理器执行程序来控制的
C、通道执行预先编好的通道程序来控制的
2、当通道启动成功后,使用设备的进程将进入到( )状态。
A、等待传送
C、运行
3、( )是直接存储设备。
A、磁盘
C、打印机
4、下列算法中用于磁盘移臂调度的是( )。
A、时间片轮转法
C、最短寻找时间优先算法
5、以下说法正确的是( )。
A、使用逻辑名只能访问设备
C、逻辑名既可以用来代表设备,也可以用来
代表内存
B、中央处理器执行通道程序来控制的 D、通道执行用户程序来控制的
B、就绪 D、等待访问设备
B、磁带 D、键盘显示终端
B、LRU算法
D、优先级高者优先算法
B、使用逻辑名只能访问内存
D、逻辑名与物理设备之间是一一对应的关系
第二题、多项选择题(每题2分,5道题共10分) 1、I/O操作指的是( )。
A、CPU与外部设备之间的信息交换 B、内存与外部设备之间的信息交换 C、设备之间的信息交换
D、输入设备与输出设备之间的信息交换
2、CPU和设备控制器之间的交互正确的是( )。
A、CPU先向控制器写要传输的数据,然后写入命令字 B、CPU先向控制器写入命令字,然后写要传输的数据 C、控制器完成数据传输后向CPU发送中断信号
D、CPU和控制器可以并发操作
3、设备控制器包括( )。
A、命令寄存器 B、状态寄存器 C、数据寄存器
D、地址译码器
4、I/O型设备主要有( )。
A、键盘 B、鼠标 C、显示器
D、磁盘
5、移臂调度算法主要有( )。
A、“电梯调度”算法
20 / 91
B、“最短查找时间优先”算法 C、“扫描”算法 D、“循环扫描”算法 第三题、判断题(每题1分,5道题共5分) 1、扫描算法的执行跟I/O请求次序以及I/O请求最小或最大磁道号无关。 正确 2、Linux电梯调度算法与传统的电梯调度算法是完全一样的。 正确 3、虚拟设备扩充的是设备的容量。 正确 4、安全性是I/O软件总体设计的主要目标。 正确 5、设备无关性指的是进程不访问与自己无关的设备。 正确 错误 错误 错误 错误 错误 交卷 D1AB8B1015134013000206014082 231406118895 CPU和设备控制器之间的交互正确的是( )。选ACD 操作系统的共享性是指( )。选ABD
一、单项选择题(共 24 道试题,共 72 分。) 1. 按文件用途来分,编译程序是( )。 A. 用户文件 B. 档案文件 C. 系统文件 D. 库文件
满分:3 分
2. 在UNIX/Linux系统中,用户程序经过编译之后得到的可执行文件属于( )。 A. ASCII文件 B. 普通文件 C. 目录文件
21 / 91
D. 特别文件
满分:3 分
3. 文件管理实际上是管理( )。
A. 主存空间 B. 辅助存储空间 C. 逻辑地址空间 D. 物理地址空间
满分:3 分
4. 操作系统实现“按名存取”的关键在于解决( )。
A. 文件逻辑地址到文件具体的物理地址的转换 B. 文件名称与文件具体的物理地址的转换 C. 文件逻辑地址到文件名称的转换 D. 文件名称到文件逻辑地址的转换 满分:3 分
5. 数据库文件的逻辑结构形式是( )。
A. 流式文件 B. 记录式文件 C. 档案文件 D. 只读文件
满分:3 分
6. 由一串字符序列组成,文件内的信息不再划分可独立的单位,这是指(A. 流式文件 B. 记录式文件 C. 顺序文件 D. 链接文件
满分:3 分
7. 链接文件解决了连续文件存在的问题,它( )。
22 / 91
)。A. 使用指针存入主存,速度快 B. 适合于随机存取方式 C. 不适用于顺序存取 D. 提高了存储空间的利用率 满分:3 分
8. 树形目录结构的主文件目录称为( )。 A. 父目录 B. 根目录 C. 子目录 D. 用户文件目录
满分:3 分
9. 在二级目录结构中,同一个用户不同文件的文件名( )。 A. 可以相同 B. 可以不同 C. 一定不同 D. 应该相同
满分:3 分
10. 如果文件系统中有两个文件重名,不应采用( )结构。 A. 单级目录 B. 树形目录 C. 二级目录 D. 非循环图目录
满分:3 分
11. 用ls命令以长格式列目录信息时,若某一文件的特征在文件列表中按如下顺序显示在屏幕上: A. 读和执行 B. 读、写、执行
23 / 91
C. 写和执行 D. 读和写
满分:3 分
12. 下列属于文件保密技术的是( )。
A. 建立副本 B. 定期备份 C. 设置口令 D. 规定存取权限
满分:3 分
13. 大多数低速设备都属于( )设备。 A. 独占 B. 共享 C. 虚拟 D. SPOOLing
满分:3 分
14. 通道是一种( )。
A. I/O端口 B. 数据通道 C. I/O专用处理机 D. 软件工具
满分:3 分
15. 用户编制的程序与实际使用的物理设备无关是由(A. 设备分配 B. 设备驱动 C. 虚拟设备 D. 设备独立性
24 / 91
)功能实现的。 满分:3 分
16. 下列描述中,不是设备管理的功能的是( )。 A. 实现缓冲区管理 B. 进行设备分配 C. 实现中断处理 D. 完成I/O操作
满分:3 分
17. SPOOLing技术可以实现设备的( )分配。 A. 独占 B. 共享 C. 虚拟 D. 物理
满分:3 分
18. 采用SPOOLing技术的目的是( )。 A. 提高独占设备的利用率 B. 提高主机效率 C. 减轻用户编程负担 D. 提高程序的运行速度 满分:3 分
19. 下列关于设备驱动程序的描述,错误的是( )。 A. 设备驱动程序应可以动态装卸
B. 设备驱动程序往往由生产设备的厂家提供 C. 设备驱动程序可使用系统调用
D. 设备驱动程序可实现请求I/O进程与设备控制器之间的通信 满分:3 分
20. 设备的打开、关闭、读、写等操作是由( )完成的。 A. 用户程序
25 / 91
B. 编译程序 C. 设备分配程序 D. 设备驱动程序
满分:3 分
21. 为了使多个进程能有效地同时处理阵发性的输入和输出,最好使用( )结构的缓冲技术。 A. 多缓冲 B. SPOOLing C. 单缓冲区 D. 双缓冲区
满分:3 分
22. 引入缓冲技术的主要目的是( )。 A. 改善用户编程环境 B. 提高CPU的处理速度
C. 提高CPU与设备之间的并行程度 D. 降低计算机的硬件成本 满分:3 分
23. 下列关于磁盘的描述中,正确的是( )。 A. 减少磁盘的寻道时间可以显著改善系统性能 B. 当关掉电源后,磁盘存储的内容丢失 C. 磁盘属于字符设备
D. 磁盘的动作不局限于机械运动,可以无限快 满分:3 分
24. 设磁盘的转速为3000转/分,盘面划分为10个扇区,则读取一个扇区的时间是( )。提示:1(m)分等于60秒(s),1秒等于1000毫秒(ms)。 A. 20ms B. 2ms
26 / 91
C. 3ms D. 1ms
满分:3 分
二、判断题(共 14 道试题,共 28 分。) 1. UNIX/Linux系统中的文件名不区分大小写。( ) A. 错误 B. 正确
满分:2 分
2. 在文件系统的支持下,用户需要知道文件存放的物理地址。( ) A. 错误 B. 正确
满分:2 分
3. 顺序结构是一种逻辑记录顺序和物理块的顺序相一致的文件结构。( ) A. 错误 B. 正确
满分:2 分
4. 索引结构中,建立索引表会占用额外的存储空间和访问时间。( ) A. 错误 B. 正确
满分:2 分
5. 可顺序存取的文件不一定能随机存取;但可随机存取的文件都可以顺序存取。( ) A. 错误 B. 正确
满分:2 分
6. 采用了二级目录结构后,可以允许不同用户在为各自的文件命名时,不必考虑重名问题,即使取了相同的名字也不会出错。( ) A. 错误 B. 正确
满分:2 分
27 / 91
7. 文件系统中,允许当某个用户打开一个共享文件后,其他用户也可以访问之。( ) A. 错误 B. 正确
满分:2 分
8. 当进程请求在主存和外设之间传送信息时,设备分配程序分配设备的过程通常是先分配通道,再分配控制器,最后分配设备。( ) A. 错误 B. 正确
满分:2 分
9. 计算机系统为每一台设备确定的一个用以标识它的编号,被称为设备的绝对号。( ) A. 错误 B. 正确
满分:2 分
10. 通道是处理输入、输出的软件。( ) A. 错误 B. 正确
满分:2 分
11. 用户程序应与实际使用的物理设备无关,这种特性称作设备独立性。( ) A. 错误 B. 正确
满分:2 分
12. SPOOLing系统实现设备管理的虚拟技术,即:将共享设备改造为独占设备。它由专门负责I/O的常驻内存的进程以及输入、输出井组成。( ) A. 错误 B. 正确
满分:2 分
13. 一个设备驱动程序只能控制一个物理设备。( ) A. 错误 B. 正确
28 / 91
满分:2 分
14. 在设备I/O中引入缓冲技术的目的是为了节省内存。( ) A. 错误 B. 正确
满分:2 分
1. 在UNIX/Linux系统中,用户程序经过编译之后得到的可执行文件属于( )。 A. ASCII文件 B. 普通文件 C. 目录文件 D. 特别文件
2. 按文件用途来分,编译程序是( )。 A. 用户文件 B. 档案文件 C. 系统文件 D. 库文件
3. 文件管理实际上是管理( )。 A. 主存空间 B. 辅助存储空间 C. 逻辑地址空间 D. 物理地址空间
4. 文件系统的主要目的是( ) A. 实现对文件的按名存取 B. 实现虚拟存储 C. 提供外存的读写速度
29 / 91
D. 用于存储系统文件
5. 数据库文件的逻辑结构形式是( )。 A. 流式文件 B. 记录式文件 C. 档案文件 D. 只读文件
6. 与文件物理组织形式有关的是( )。 A. 文件长度 B. 记录的个数 C. 文件目录结构
D. 用户对文件的存取方法
7. 在以下的文件物理存储组织形式中,常用于存放大型系统文件的是( )。 A. 连续文件 B. 链接文件 C. 索引文件 D. 多重索引文件
8. 在二级目录结构中,同一个用户不同文件的文件名( )。 A. 可以相同 B. 可以不同 C. 一定不同 D. 应该相同
9. 在下述文件系统目录结构中,能够用多条路径访问同一文件(或目录)的目录结构是
( )。 A. 单级目录 B. 二级目录
30 / 91
C. 纯树形目录 D. 非循环图目录
10. 当前目录是/usr/meng,其下属文件prog/file.c的绝对路径名是( )。 A. /usr/meng/file.c B. /usr/file.c C. /prog/file.c
D. /usr/meng/prog/file.c
11. 下列属于文件保密技术的是( )。 A. 建立副本 B. 定期备份 C. 设置口令 D. 规定存取权限
12. 用ls命令以长格式列目录信息时,若某一文件的特征在文件列表中按如下顺序显示在屏幕
上: A. 读和执行 B. 读、写、执行 C. 写和执行 D. 读和写
13. 通道是一种( )。 A. I/O端口 B. 数据通道 C. I/O专用处理机 D. 软件工具
14. 计算机系统启动外围设备是按( )启动的。 A. 设备的绝对号
31 / 91
B. 设备的相对号 C. 通道号 D. 设备名
15. 设备独立性是指( )。 A. 设备具有独立执行I/O功能的一种特性
B. 设备驱动程序独立于具体使用的物理设备的一种特性 C. 能独立实现设备共享的一种特性
D. 用户程序使用的设备与实际使用哪台设备无关的一种特性 16. 下列描述中,不是设备管理的功能的是( )。 A. 实现缓冲区管理 B. 进行设备分配 C. 实现中断处理 D. 完成I/O操作
17. 操作系统中采用的以空间换取时间技术的是( )。 A. SPOOLing技术 B. 虚拟存储技术 C. 覆盖与交换技术 D. 通道技术
18. 采用SPOOLing技术的目的是( )。 A. 提高独占设备的利用率 B. 提高主机效率 C. 减轻用户编程负担 D. 提高程序的运行速度
19. 设备的打开、关闭、读、写等操作是由( )完成的。 A. 用户程序
32 / 91
B. 编译程序 C. 设备分配程序 D. 设备驱动程序
20. 下列关于设备驱动程序的描述,错误的是( )。 A. 设备驱动程序应可以动态装卸
B. 设备驱动程序往往由生产设备的厂家提供 C. 设备驱动程序可使用系统调用
D. 设备驱动程序可实现请求I/O进程与设备控制器之间的通信
21. 为了使多个进程能有效地同时处理阵发性的输入和输出,最好使用( )结构的缓冲技
术。 A. 多缓冲 B. SPOOLing C. 单缓冲区 D. 双缓冲区
22. 下列通用缓冲技术中,对于一个具有信息的输入和输出速率相差不大的I/O系统比较有效的
是( )。 A. 双缓冲技术 B. 环形缓冲技术 C. 多缓冲技术 D. 单缓冲技术
23. 一个含有6个盘片的双面硬盘,盘片每面有100条磁道,则该硬盘的柱面数为( )。 A. 12 B. 250 C. 100 D. 1200
33 / 91
24. 设磁盘的转速为3000转/分,盘面划分为10个扇区,则读取一个扇区的时间是( )。提
示:1(m)分等于60秒(s),1秒等于1000毫秒(ms)。 A. 20ms B. 2ms C. 3ms D. 1ms
操作系统 形考 3
一、单选题(每题3分,共计16题)
题目1 答案已保存 满分3.00
标记题目
题干
17. 文件的存储空间管理实质上是组织和管理( )。 选择一项:
A. 辅存已占用区域 B. 辅存空闲块 C. 文件目录 D. 进程控制块
题目2 答案已保存 满分3.00
34 / 91
标记题目
题干
11. 文件系统为每个文件另建立一张指示逻辑记录和物理记录之间的对应关系表,由此表和文件本身构成的文件是( )。 选择一项:
A. 链接文件 B. 索引文件 C. 逻辑文件 D. 连续文件
题目3 答案已保存 满分3.00
标记题目
题干
3. 特殊文件是与( )有关的文件。 选择一项:
A. 二进制数据 B. 文本 C. 图像 D. 硬件设备
题目4 答案已保存 满分3.00
35 / 91
标记题目
题干
20. 在UNIX系统中,某文件的使用权限设置为754,则表示( )。 选择一项:
A. 同组用户仅能读 B. 其他用户可读、写、执行 C. 文件主可读、写、执行 D. 同组用户仅能写
题目5 答案已保存 满分3.00
标记题目
题干
12. 文件名与( )的转化是通过文件目录来实现的。 选择一项:
A. 逻辑地址 B. 物理地址 C. 文件记录 D. 文件内部名
题目6 答案已保存 满分3.00
36 / 91
标记题目
题干
21. 下列属于文件保密机制的是( )。 选择一项:
A. 定期备份 B. 设置口令 C. 建立副本 D. 文件的链接
题目7 答案已保存 满分3.00
标记题目
题干
15. 当前目录是/usr/meng,其下属文件prog/file.c的绝对路径名是( )。 选择一项:
A. /prog/file.c B. /usr/meng/file.c C. /usr/file.c
D. /usr/meng/prog/file.c
题目8 答案已保存 满分3.00
37 / 91
标记题目
题干
19. 下列关于磁盘的描述中,正确的是()。 选择一项:
A. 磁盘属于字符设备
B. 减少磁盘的寻道时间可以显著改善系统性能 C. 磁盘的动作不局限于机械运动,可以无限快 D. 当关掉电源后,磁盘存储的内容丢失
题目9 答案已保存 满分3.00
标记题目
题干
16. 为了使多个进程能有效地同时处理阵发性的输入和输出,最好使用()结构的缓冲技术。 选择一项:
A. SPOOLing B. 单缓冲区 C. 双缓冲区 D. 多缓冲
题目10 答案已保存 满分3.00
38 / 91
标记题目
题干
1. 下列设备中,不属于独占设备的是( )。 选择一项:
A. 磁带 B. 终端 C. 打印机 D. 磁盘
题目11 答案已保存 满分3.00
标记题目
题干
18. 设磁盘的转速为3000转/分,盘面划分为10个扇区,则读取一个扇区的时间是()。 选择一项:
A. 20ms B. 1ms C. 3ms D. 2ms
题目12 答案已保存 满分3.00
39 / 91
标记题目
题干
10. SPOOLing技术可以实现设备的( )分配。 选择一项:
A. 独占 B. 物理 C. 虚拟 D. 共享
题目13 答案已保存 满分3.00
标记题目
题干
8. 下列不属于设备分配技术的是( )。 选择一项:
A. 通道分配技术 B. 虚拟分配技术 C. 独占分配技术 D. 共享分配技术
题目14 答案已保存 满分3.00
40 / 91
标记题目
题干
15. 下列缓冲技术中,对于一个具有信息的输入和输出速率相差不大的I/O系统比较有效的是()。 选择一项:
A. 环形缓冲技术 B. 多缓冲技术 C. 双缓冲技术 D. 单缓冲技术
题目15 答案已保存 满分3.00
标记题目
题干
6. 控制和管理资源建立在单一系统策略基础上,将计算功能分散化,充分发挥网络互联的各自治处理机性能的多机系统是()。 选择一项:
A. 多计算机系统 B. 分布式系统 C. 网络系统 D. 多处理器系统
题目16 答案已保存 满分3.00
41 / 91
标记题目
题干
1. 下面关于嵌入式系统的描述,错误的是()。 选择一项:
A. 因面向应用,嵌入式系统外观独特,各不相同 B. 嵌入式系统一般自动运行,运行方式不可修改 C. 嵌入式系统的程序一般不可以二次开发 D. 软件与硬件相对独立安装和卸载 二、判断题(每题3分,共计6题)
题目17 还未回答 满分3.00
标记题目
题干
3. 操作系统在组织物理文件时根据存储介质的特性和用户选择的存取方法来决定存储结构。( ) 选择一项:
对 错
题目18 还未回答 满分3.00
42 / 91
标记题目
题干
6. Linux的I节点是文件内容的一部分。( ) 选择一项:
对 错
题目19 还未回答 满分3.00
标记题目
题干
7. 在Linux系统中,常采用单空闲块链接法来实施存储空间的分配与回收。( ) 选择一项:
对 错
题目20 还未回答 满分3.00
标记题目
题干
9. 一个设备驱动程序可以控制同一类型的多个物理设备。 选择一项:
43 / 91
对 错 题目21 还未回答 满分3.00 标记题目 题干 3. 用户程序应与实际使用的物理设备无关,这种特性称作设备独立性。 选择一项: 对 错 题目22 还未回答 满分3.00 标记题目 题干 8. 采用SPOOLing技术情况下,可用1台计算机代替脱机技术需要的3台计算机。 选择一项: 对 错 上一页 7. 常用的磁盘空闲区管理技术有哪几种?试简要说明各自的实现思想。 落 段 路径: p 44 / 91
题目24 还未回答 满分4.00 标记题目 题干 12. 在Linux系统中,为什么要提供VFS? 落 段 路径: p 题目25 还未回答 满分4.00 标记题目 题干 5. 文件控制块与文件有何关系? 落 段 路径: p 题目26 还未回答 满分4.00 标记题目 题干 9. Linux系统中对设备怎样管理? 落 段45 / 91
路径: p 题目27 还未回答 满分4.00 标记题目 题干 8. 处理I/O请求的主要步骤是什么? 落 段 路径: p 题目28 还未回答 满分4.00 标记题目 题干 2. 嵌入式系统与通用计算机系统有何异同? 落 段 文字字 体 大小
1.解:(共10分)
(1)(4分)
就绪一运行:CPU空闲,就绪态进程被调度程序选中。
46 / 91
运行一就绪:正在运行的进程用完了本次分配给它的CPU时间片。
运行一阻塞:运行态进程因某种条件未满足而放弃对CPU的占用,如等待读文件。
阻塞一就绪:阻塞态进程所等待的事件发生了,例如读数据的操作完成。
(2)下逑进程状态变迁:(6分)
(A)2—1:可以。运行进程用完了本次分配给它的时间片,让出CPU,然后操作系统按照某种算法从就绪队列中选出一个进程投入运行。
(B) 3--2:不可以。任何时候一个进程只能处于一种状态,它既然由运行态变为阻塞态,就不能再变为就绪态。
(C)4一l:可以。某一阻塞态进程等待的事件出现了,而且此时就绪队列为空,该进程进入就绪队列
第4章 存储管理 “练习与思考”解答
1. 基本概念和术语
逻辑地址、物理地址、逻辑地址空间、内存空间、重定位、静态重定位、动态重定位、碎片、碎片紧缩、虚拟存储器、快表、页面抖动
用户程序经编译之后的每个目标模块都以0为基地址顺序编址,这种地址称为相对地址或逻辑地址。
内存中各物理存储单元的地址是从统一的基地址开始顺序编址的,这种地址称为绝对地址或物理地址。
由程序中逻辑地址组成的地址范围叫做逻辑地址空间,或简称为地址空间。
由内存中一系列存储单元所限定的地址范围称作内存空间,也称物理空间或绝对空间。
程序和数据装入内存时,需对目标程序中的地址进行修改。这种把逻辑地址转变为内存物理地址的过程称作重定位。
47 / 91
静态重定位是在目标程序装入内存时,由装入程序对目标程序中的指令和数据的地址进行修改,即把程序的逻辑地址都改成实际的内存地址。
动态重定位是在程序执行期间,每次访问内存之前进行重定位。这种变换是靠硬件地址转换机构实现的。
内存中这种容量太小、无法被利用的小分区称作“碎片”或“零头”。
为解决碎片问题,移动某些已分配区的内容,使所有进程的分区紧挨在一起,而把空闲区留在另一端。这种技术称为紧缩(或叫拼凑)。
虚拟存储器是用户能作为可编址内存对待的虚拟存储空间,它使用户逻辑存储器与物理存储器分离,是操作系统给用户提供的一个比真实内存空间大得多的地址空间。
为了解决在内存中放置页表带来存取速度下降的矛盾,可以使用专用的、高速小容量的联想存储器,也称作快表。
若采用的置换算法不合适,可能出现这样的现象:刚被换出的页,很快又被访问,为把它调入而换出另一页,之后又访问刚被换出的页,……如此频繁地更换页面,以致系统的大部分时间花费在页面的调度和传输上。此时,系统好像很忙,但实际效率却很低。这种现象称为“抖动”。
2. 基本原理和技术
(1) 存储器一般分为哪些层次?各有何特性?
存储器一般分为寄存器、高速缓存、内存、磁盘和磁带。
CPU内部寄存器,其速度与CPU一样快,但它的成本高,容量小。
高速缓存(Cache),它们大多由硬件控制。Cache的速度很快,它们放在CPU内部或非常靠近CPU的地方。但Cache的成本很高,容量较小。
内存(或称主存),它是存储器系统的主力,也称作RAM(随机存取存储器)。CPU可以直接存取内存及寄存器和Cache中的信息。然而,内存中存放的信息是易变的,当机器电源被关闭后,内存中的信息就全部丢失了。
磁盘(即硬盘),称作辅助存储器(简称辅存或外存),它是对内存的扩展,但是CPU不能直接存取磁盘上的数据。磁盘上可以永久保留数据,而且容量特别大。磁盘上数据的存取速度低于内存存取速度。
磁带保存的数据更持久,容量更大,但它的存取速度很慢,而且不适宜进行随机存取。所以,磁带设备一般不能用做辅存。它的主要用途是作为文件系统的后备,存放不常用的信息或用做系统间传送信息的介质。
(2)
装入程序的功能是什么?常用的装入方式有哪几种?
装入程序的功能是根据内存的使用情况和分配策略,将装入模块放入分配到的内存区中。
程序装入内存的方式有三种,分别是绝对装入方式、可重定位装入方式和动态运行时
48 / 91
装入方式。
(3) 对程序进行重定位的方式分为哪两种?简述各自的实现方式。
对程序进行重定位的方式分为静态重定位和动态重定位。
静态重定位是在目标程序装入内存时,由装入程序对目标程序中的指令和数据的地址进行修改,即把程序的逻辑地址都改成实际的内存地址。对每个程序来说,这种地址变换只是在装入时一次完成,在程序运行期间不再进行重定位。
动态重定位是在程序执行期间,每次访问内存之前进行重定位。这种变换是靠硬件地址转换机构实现的。通常,采用一个重定位寄存器,其中放有当前正在执行的程序在内存空间中的起始地址,而地址空间中的代码在装入过程中不发生变化。
(4)
对换技术如何解决内存不足的问题?
在多道程序环境中可以采用对换技术。此时,内存中保留多个进程。当内存空间不足以容纳要求进入内存的进程时,系统就把内存中暂时不能运行的进程(包括程序和数据)换出到外存上,腾出内存空间,把具备运行条件的进程从外存换到内存中。
(5)
解释固定分区法和动态分区法的基本原理。
固定分区法——内存中分区的个数固定不变,各个分区的大小也固定不变,但不同分区的大小可以不同。每个分区只可装入一道作业。
动态分区法——各个分区是在相应作业要进入内存时才建立的,使其大小恰好适应作业的大小。
(6) 动态重定位分区管理方式中如何实现虚-实地址映射?
进程装入内存时,是将该其程序和数据原封不动地装入到内存中。当调度该进程在CPU上执行时,操作系统就自动将该进程在内存的起始地址装入基址寄存器,将进程的大小装入限长寄存器。当执行指令时,如果地址合法,则将相对地址与基址寄存器中的地址相加,所得结果就是真正访问内存的地址;如果地址越界,则发出相应中断,进行处理。
(7) 分页存储管理的基本方法是什么?
分页存储管理的基本方法是:逻辑空间分页,内存空间分块,块与页的大小相等。页连续而块离散,用页号查页表,由硬件作转换。
(8) 在分页系统中页面大小由谁决定?页表的作用是什么?如何将逻辑
地址转换成物理地址?
在分页系统中页面大小由硬件决定。
页表的作用是实现从页号到物理块号的地址映射。
逻辑地址转换成物理地址的过程是:用页号p去检索页表,从页表中得到该页的物理块号f,把它装入物理地址寄存器中。同时,将页内地址d直接送入物理地址寄存器的块内地
49 / 91
址字段中。这样,物理地址寄存器中的内容就是由二者拼接成的实际访问内存的地址,从而完成了从逻辑地址到物理地址的转换。
(9) 虚拟存储器有哪些基本特征?
虚拟存储器的基本特征是:
虚拟扩充——不是物理上,而是逻辑上扩充了内存容量;
部分装入——每个进程不是全部一次性地装入内存,而是只装入一部分; 离散分配——不必占用连续的内存空间,而是“见缝插针”; 多次对换——所需的全部程序和数据要分成多次调入内存。
(10)
页面抖动与什么有关?
好的页面置换算法能够适当降低页面更换频率,减少缺页率,尽量避免系统“抖动”。此外,一般来说,随着可用内存块数的增加,缺页数也将减少。
3. 思考题
(1) 为了提高内存的利用率,在可重定位分区分配方式中可通过什么技术来减少内存
碎片?
在可重定位分区分配方式中采用紧缩技术来减少内存碎片。
(11) 请求分页技术与简单分页技术之间的根本区别是什么?
请求分页技术与简单分页技术之间的根本区别是:请求分页提供虚拟存储器,而简单分页系统并未提供虚拟存储器。
(2) 某虚拟存储器的用户编程空间共32个页面,每页为1KB,内存为16KB。假定某
时刻一用户页表中已调入内存的页面的页号和物理块号的对照表如下: 页号 物理块号 0 5 1 10 2 4 3 7 计算逻辑地址0A5C(H)所对应的物理地址。 解:
页式存储管理的逻辑地址分为两部分:页号和页内地址。由已知条件“用户编程空间共32个页面”,可知页号部分占5位;由“每页为1KB”,1K=210,可知内页地址占10位。由“内存为16KB”,可知有16块,块号为4位。
逻辑地址0A5C(H)所对应的二进制表示形式是:000 1010 0101 1100 ,根据上面的分析,下划线部分为页内地址,编码“000 10”为页号,表示该逻辑地址对应的页号为2。查页表,得到物理块号是4(十进制),即物理块地址为:01 00 ,拼接块内地址10 0101 1100,得01 0010 0101 1100,即125C(H)。
50 / 91
(12) 考虑下述页面走向:
1,2,3,4,2,1,5,6,2,1,2,3,7,6,3,2,1,2,3,6
当内存块数量分别为3,5时,试问LRU、FIFO、OPT这三种置换算法的缺页次数各是多少?(注意,所有内存块最初都是空的,所以,凡第一次用到的页面都产生一次缺页。)
内存块数 3 5
LRU 15 8 淘 汰 算 法 FIFO 16 10 OPT 11 7 (13) 考虑下面存储访问序列,该程序大小为460字:
10,11,104,170,73,309,185,245,246,434,458,364
设页面大小是100字,请给出该访问序列的页面走向。又设该程序基本可用内存是200字,采用FIFO置换算法,求出其缺页率。如果采用LRU置换算法,缺页率是多少?如果采用最优淘汰算法,其缺页率又是多少?(注:缺页率=缺页次数/访问页面总数) 解:
根据已知条件页面大小是100字,将页面访问序列简化为: 0,0,1,1,0,3,1,2,2,4,4,3
又因为该程序基本可用内存是200字,可知内存块数为2。
采用先进先出置换算法(FIFO),总共有6次缺页,缺页率为6/12=50%,具体算法如下:
页面走向 0 0 1 1 0 3 1 2 2 4 4 3 块1 0 0 3 3 4 4 块2 1 1 2 2 3 缺页 缺 缺 缺 缺 缺 缺 采用最近最少使用置换算法(LRU),总共有6次缺页,缺页率为6/12=50%,具体算法如下:
页面走向 0 0 1 1 0 3 1 2 2 4 4 3 块1 0 0 0 1 1 4 4 块2 1 3 3 2 2 3 缺页 缺 缺 缺 缺 缺 缺 缺 采用最佳置换算法(OPT),总共有5次缺页,缺页率为5/12=41.6%,具体算法如下:
页面走向 0 0 1 1 0 3 1 2 2 4 4 3 块1 0 0 3 3 3 块2 1 1 2 4 缺页 缺 缺 缺 缺 缺
51 / 91
西北民族大学数学与计算机科学学院期末考试
操作系统原理试卷(C卷)
专业: 课程代码: 学号: 姓 名:
总 分 得 分 核分人评卷人 复查人 题号 题分 一 15 二 15 三 20 四 20 五 14 六 16 一、
得分 单 项选择题(在每小题的四个备选答案中,选出一个正确的答案,并将其代码填入题干后的括号内。每小题3 分,共15 分)
1. _技术出现后,解决了主机与外设并行和程序保护的问题。 A.通道和中断 B.寄存器和堆栈
C.块表和地址变换机构 D.大容量辅助存储器和高速缓冲存储器 [能力层次:记忆];[难易度:较易] 2.任何两个并发进程之间 。
A.一定存在互斥关系 B.一定存在同步关系C.一定彼此独立无关D.可能存在同步或互斥关系
[能力层次:记忆];[难易度:较易]
3.资源的按序分配法是用破坏产生死琐的四个必要条件中的___来预防死锁的发生。 A.互斥控制 B.部分分配 C.不剥夺控制 D.环路条件 [能力层次:理解];[难易度:普通] 4.对象之间的通信采用___
A.远程过程调用(RPC)或共用存储器方式 B.消息变量和消息缓冲区方式 C.控制信息的传送和大批量数据传送方式 D.消息与邮箱机制 [能力层次:理解];[难易度:普通]
5.一个文件系统采用二级目录结构,它的两张目录分别是___ A.系统目录和子目录 B.根目录和子目录 C.主目录和用户目录 D.用户目录和子目录 [能力层次:简单运用];[难易度:普通]
得 分 评卷人 二、判断题(认为对的,在题后的括号内打“√”,认为错的打“×”并
说明原因。每小题3分,共15分)
1.磁盘是独占设备,磁带是共享设备。( ) [能力层次:理解];[难易度:较易]
2.分时系统中,时间片越小越好。( )
52 / 91
[能力层次:理解];[难易度:较易]
3.UNIX的最大特点是分时多用户、多任务和倒树型文件结构。( ) [能力层次:简单运用];[难易度:普通]
4.多用户操作系统在单一硬件终端硬件支持下仍然可以工作。( ) [能力层次:简单运用];[难易度:普通]
5.高优先级用户可在目态下使用特权指令。( ) [能力层次:简单运用];[难易度:普通]
得 分 评卷人 三、填空题(每空 2 分,共20 分)
1. 在批处理兼分时的系统中,往往由分时系统控制的作业称为 作业,而由批处理系统
控制的作业称为 作业。
[能力层次:理解 ];[难易度:较易 ]
2. 在操作系统中不可中断执行的一段程序是__________ 。 [能力层次:理解 ];[难易度: 较易 ]
3. Unix系统是按设备与内存之间信息交换的物理单位来对设备进行分类,Unix把设备分
成两类:__ __和______。
[能力层次:简单运用 ];[难易度:普通 ]
4. 设备管理中引入缓冲机制的主要原因是____________________________ 和
____________________________ 。 [能力层次:简单运用 ];[难易度:较易]
5. UNIX的shell有两层含义,一是 ;二是指该命令的解释程序。。 [能力层次:简单运用];[难易度:普通]
6. 操作系统为用户提供两种类型的使用接口,它们是________接口和________ 接口。 [能力层次:简单运用 ];[难易度: 普通 ]
评卷人
四、解释概念题(每小题4 分,共20 分)
得 分 1. 地址映射
[能力层次:记忆];[难易度:极易] 2.作业控制语言(JCL)
[能力层次:记忆];[难易度:较易] 3.通道
[能力层次:理解];[难易度:普通] 4.多道程序设计系统
[能力层次:理解];[难易度:普通] 5.死锁
[能力层次:简单运用];[难易度:较难]
53 / 91
五.计算题(第1小题6分,第2小题8分,共14分)
1.假定一磁盘有200个柱面,编号为0~199,当前存取臂的位置在15号柱面上,若刚刚完成了15号柱面的服务请求,如果存在以下的请求系列:15,20,9,16,24,13,29。则为完成上述算法使用最短寻道时间优先算法(SSTF算法)时存取臂移动的总量是多少?并写出存取臂移动的顺序。
[能力层次:简单运用];[难易度:较难]
2.有5个批处理作业(A,B,C,D,E),几乎同时到达一个计算中心,估计运行时间分别为3,4,6,2,5分钟,在使用最短作业优先调度算法时计算作业的平均周转时间。 [能力层次:综合运用和创见];[难易度:较难]
得 分 评卷人 六.综合题(每小题8分,共16分)
1.某分时系统的进程出现如下图所示的状态变化。
③ ⑤ 运行等磁盘读文件 ⑥ ① ② 等待打 印机输 出结果 就绪进程队列 ④ 得 分 评卷人 试问:(1)你认为该系统采用的是何种进程调度算法?(共4分) (2)把图中所示的六个状态变化的原因写出来。(共4分) [能力层次:综合运用和创见];[难易度: 较难]
2.有4个并发执行的进程A,B,C,D。在执行时它们都要读共享文件F,但限制进程A和进程B不能同时读文件F,进程C和进程D也不能同时读文件F。请问用PV操作管理时:
(1)应怎样定义信号量?写出信号量的初值和含义。(4分) (2)写出能使它们正确执行的程序。(4分) [能力层次:综合运用和创见];[难易度:极难]
54 / 91
第4章 教材习题解答
1. 基本概念和术语
逻辑地址、物理地址、逻辑地址空间、内存空间、重定位、静态重定位、动态重定位、碎片、碎片紧缩、虚拟存储器、快表、页面抖动
用户程序经编译之后的每个目标模块都以0为基地址顺序编址,这种地址称为相对地址或逻辑地址。
内存中各物理存储单元的地址是从统一的基地址开始顺序编址的,这种地址称为绝对地址或物理地址。
由程序中逻辑地址组成的地址范围叫做逻辑地址空间,或简称为地址空间。
由内存中一系列存储单元所限定的地址范围称作内存空间,也称物理空间或绝对空间。
程序和数据装入内存时,需对目标程序中的地址进行修改。这种把逻辑地址转变为内存物理地址的过程称作重定位。
静态重定位是在目标程序装入内存时,由装入程序对目标程序中的指令和数据的地址进行修改,即把程序的逻辑地址都改成实际的内存地址。
动态重定位是在程序执行期间,每次访问内存之前进行重定位。这种变换是靠硬件地址转换机构实现的。
内存中这种容量太小、无法被利用的小分区称作“碎片”或“零头”。
为解决碎片问题,移动某些已分配区的内容,使所有进程的分区紧挨在一起,而把空闲区留在另一端。这种技术称为紧缩(或叫拼凑)。
虚拟存储器是用户能作为可编址内存对待的虚拟存储空间,它使用户逻辑存储器与物理存储器分离,是操作系统给用户提供的一个比真实内存空间大得多的地址空间。
为了解决在内存中放置页表带来存取速度下降的矛盾,可以使用专用的、高速小容量的联想存储器,也称作快表。
若采用的置换算法不合适,可能出现这样的现象:刚被换出的页,很快又被访问,为把它调入而换出另一页,之后又访问刚被换出的页,……如此频繁地更换页面,以致系统的大部分时间花费在页面的调度和传输上。此时,系统好像很忙,但实际效率却很低。这种现象称为“抖动”。 2. 基本原理和技术
(1) 存储器一般分为哪些层次?各有何特性?
存储器一般分为寄存器、高速缓存、内存、磁盘和磁带。
CPU内部寄存器,其速度与CPU一样快,但它的成本高,容量小。
高速缓存(Cache),它们大多由硬件控制。Cache的速度很快,它们放在CPU内部或非常靠近CPU的地方。但Cache的成本很高,容量较小。
内存(或称主存),它是存储器系统的主力,也称作RAM(随机存取存储器)。CPU可以直接存取内存及寄存器和Cache中的信息。然而,内存中存放的信息是易变的,当机器电源被关闭后,内存中的信息就全部丢失了。
磁盘(即硬盘),称做辅助存储器(简称辅存或外存),它是对内存的扩展,但是CPU不能直接存取磁盘上的数据。磁盘上可以永久保留数据,而且容量特别大。磁盘上数据的存取速度低于内存存取速度。
55 / 91
磁带保存的数据更持久,容量更大,但它的存取速度很慢,而且不适宜进行随机存取。所以,磁带设备一般不能用做辅存。它的主要用途是作为文件系统的后备,存放不常用的信息或用做系统间传送信息的介质。
(2) 装入程序的功能是什么?常用的装入方式有哪几种?
装入程序的功能是根据内存的使用情况和分配策略,将装入模块放入分配到的内存区中。
程序装入内存的方式有三种,分别是绝对装入方式、可重定位装入方式和动态运行时装入方式。
(3) 对程序进行重定位的方式分为哪两种?简述各自的实现方式。 对程序进行重定位的方式分为静态重定位和动态重定位。
静态重定位是在目标程序装入内存时,由装入程序对目标程序中的指令和数据的地址进行修改,即把程序的逻辑地址都改成实际的内存地址。对每个程序来说,这种地址变换只是在装入时一次完成,在程序运行期间不再进行重定位。
动态重定位是在程序执行期间,每次访问内存之前进行重定位。这种变换是靠硬件地址转换机构实现的。通常,采用一个重定位寄存器,其中放有当前正在执行的程序在内存空间中的起始地址,而地址空间中的代码在装入过程中不发生变化。 (4) 对换技术如何解决内存不足的问题?
在多道程序环境中可以采用对换技术。此时,内存中保留多个进程。当内存空间不足以容纳要求进入内存的进程时,系统就把内存中暂时不能运行的进程(包括程序和数据)换出到外存上,腾出内存空间,把具备运行条件的进程从外存换到内存中。 (5) 解释固定分区法和动态分区法的基本原理。
固定分区法——内存中分区的个数固定不变,各个分区的大小也固定不变,但不同分区的大小可以不同。每个分区只可装入一道作业。
动态分区法——各个分区是在相应作业要进入内存时才建立的,使其大小恰好适应作业的大小。
(6) 动态重定位分区管理方式中如何实现虚-实地址映射?
进程装入内存时,是将该其程序和数据原封不动地装入到内存中。当调度该进程在CPU上执行时,操作系统就自动将该进程在内存的起始地址装入基址寄存器,将进程的大小装入限长寄存器。当执行指令时,如果地址合法,则将相对地址与基址寄存器中的地址相加,所得结果就是真正访问内存的地址;如果地址越界,则发出相应中断,进行处理。 (7) 分页存储管理的基本方法是什么?
分页存储管理的基本方法是:逻辑空间分页,内存空间分块,块与页的大小相等。页连续而块离散,用页号查页表,由硬件作转换。
(8) 在分页系统中页面大小由谁决定?页表的作用是什么?如何将逻辑地址转换成物理地址?
在分页系统中页面大小由硬件决定。
页表的作用是实现从页号到物理块号的地址映射。
逻辑地址转换成物理地址的过程是:用页号p去检索页表,从页表中得到该页的物理块号f,把它装入物理地址寄存器中。同时,将页内地址d直接送入物理地址寄存器的块内地址字段中。这样,物理地址寄存器中的内容就是由二者拼接成的实际访问内存的地址,从而完成了从逻辑地址到物理地址的转换。 (9) 虚拟存储器有哪些基本特征? 虚拟存储器的基本特征是:
虚拟扩充——不是物理上,而是逻辑上扩充了内存容量;
56 / 91
部分装入——每个进程不是全部一次性地装入内存,而是只装入一部分; 离散分配——不必占用连续的内存空间,而是“见缝插针”; 多次对换——所需的全部程序和数据要分成多次调入内存。 (10) 页面抖动与什么有关?
好的页面置换算法能够适当降低页面更换频率,减少缺页率,尽量避免系统“抖动”。此外,一般来说,随着可用内存块数的增加,缺页数也将减少。 3. 思考题
(1) 为了提高内存的利用率,在可重定位分区分配方式中可通过什么技术来减少内存碎片?
在可重定位分区分配方式中采用紧缩技术来减少内存碎片。 (2) 请求分页技术与简单分页技术之间的根本区别是什么?
请求分页技术与简单分页技术之间的根本区别是:请求分页提供虚拟存储器,而简单分页系统并未提供虚拟存储器。
(3) 某虚拟存储器的用户编程空间共32个页面,每页为1KB,内存为16KB。假定某时刻一用户页表中已调入内存的页面的页号和物理块号的对照表如下:
页号 0 1 2 3 物理块号 5 10 4 7 计算逻辑地址0A5C(H)所对应的物理地址。 解:
页式存储管理的逻辑地址分为两部分:页号和页内地址。由已知条件“用户编程空间共32个页面”,可知页号部分占5位;由“每页为1KB”,1K=210,可知内页地址占10位。由“内存为16KB”,可知有16块,块号为4位。
逻辑地址0A5C(H)所对应的二进制表示形式是:000 1010 0101 1100 ,根据上面的分析,下划线部分为页内地址,编码“000 10”为页号,表示该逻辑地址对应的页号为2。查页表,得到物理块号是4(十进制),即物理块地址为:01 00 ,拼接块内地址10 0101 1100,得01 0010 0101 1100,即125C(H)。 (4) 考虑下述页面走向:
1,2,3,4,2,1,5,6,2,1,2,3,7,6,3,2,1,2,3,6
当内存块数量分别为3,5时,试问LRU、FIFO、OPT这三种置换算法的缺页次数各是多少?(注意,所有内存块最初都是空的,所以,凡第一次用到的页面都产生一次缺页。)
内存块数 LRU 3 5 15 8 淘 汰 算 法 FIFO 16 10 OPT 11 7 (5) 考虑下面存储访问序列,该程序大小为460字:
10,11,104,170,73,309,185,245,246,434,458,364
57 / 91
设页面大小是100字,请给出该访问序列的页面走向。又设该程序基本可用内存是200字,采用FIFO置换算法,求出其缺页率。如果采用LRU置换算法,缺页率是多少?如果采用最优淘汰算法,其缺页率又是多少?(注:缺页率=缺页次数/访问页面总数) 解:
根据已知条件页面大小是100字,将页面访问序列简化为: 0,0,1,1,0,3,1,2,2,4,4,3
又因为该程序基本可用内存是200字,可知内存块数为2。
采用先进先出置换算法(FIFO),总共有6次缺页,缺页率为6/12=50%,具体算法如下: 页面走向 块1 块2 缺页 缺 0 0 0 1 0 1 缺 1 0 3 3 1 缺 1 2 3 2 2 4 4 2 缺 4 3 4 3 缺 缺 采用最近最少使用置换算法(LRU),总共有6次缺页,缺页率为6/12=50%,具体算法如下: 页面走向 块1 块2 缺页 0 0 缺 0 1 0 1 缺 1 0 3 0 3 缺 1 1 3 缺 2 1 2 缺 2 4 4 2 缺 4 3 4 3 缺 采用最佳置换算法(OPT),总共有5次缺页,缺页率为5/12=41.6%,具体算法如下:
页面走向 块1 块2 缺页
缺 0 0 0 1 0 1 缺 1 0 3 3 1 缺 1 2 3 2 2 4 3 4 缺 4 3 缺
第3章 处理机调度 “练习与思考”解答
4. 基本概念和术语
调度、作业调度、进程调度、吞吐量、周转时间、带权周转时间、中断
调度就是选出待分派的作业或进程。
58 / 91
作业调度就是根据一定的算法,从输入的一批作业中选出若干个作业,分配必要的资源,如内存、外设等,为它建立相应的用户作业进程和为其服务的系统进程(如输入、输出进程),最后把它们的程序和数据调入内存,等待进程调度程序对其执行调度,并在作业完成后作善后处理工作。
进程调度就是根据一定的算法将CPU分派给就绪队列中的一个进程。
吞吐量:单位时间内CPU完成作业的数量。
周转时间:从作业提交到作业完成的时间间隔。
带权周转时间:定义为作业的周转时间除以其实际运行时间。
中断是指CPU对系统发生的某个事件做出的一种反应,它使CPU暂停正在执行的程序,保留现场后自动执行相应的处理程序,处理该事件后,如被中断进程的优先级最高,则返回断点继续执行被“打断”的程序。
5. 基本原理和技术
(1) 处理机调度的主要目的是什么?
处理机调度的主要目的就是为了分配处理机。
(2) 高级调度与低级调度的主要功能是什么?为什么要引入中级调度?
高级调度的主要功能是根据一定的算法,从输入的一批作业中选出若干个作业,分配必要的资源,如内存、外设等,为它建立相应的用户作业进程和为其服务的系统进程(如输入、输出进程),最后把它们的程序和数据调入内存,等待进程调度程序对其执行调度,并在作业完成后作善后处理工作。
低级调度的主要功能是根据一定的算法将CPU分派给就绪队列中的一个进程。
为了使内存中同时存放的进程数目不至于太多,有时就需要把某些进程从内存中移到外存上,以减少多道程序的数目,为此设立了中级调度。
(3) 作业在其存在过程中分为哪四种状态?
作业在其存在过程中分为提交、后备、执行和完成四种状态。
(4) 在操作系统中,引起进程调度的主要因素有哪些?
在操作系统中,引起进程调度的主要因素有:正在运行的进程完成任务,或等待资源,或运行到时;核心处理完中断或陷入事件后,发现系统中“重新调度”标志被置上。
(5) 作业调度与进程调度二者间如何协调工作?
作业调度和进程调度是CPU主要的两级调度。作业调度是宏观调度,它所选择的作业只是具有获得处理机的资格,但尚未占有处理机,不能立即在其上实际运行。而进程调度是微观调度,它根据一定的算法,动态地把处理机实际地分配给所选择的进程,使之真正活动起来。
(6) 在确定调度方式和调度算法时,常用的评价准则有哪些?
59 / 91
在确定调度方式和调度算法时,常用的评价准则有:CPU利用率,吞吐量,周转时间,就绪等待时间和响应时间。
(7) 简述先来先服务法、时间片轮转法和优先级调度算法的实现思想。
先来先服务调度算法(FCFS)的实现思想:按作业(或进程)到来的先后次序进行调度,即先来的先得到执行。
时间片轮转法(RR)的实现思想:系统把所有就绪进程按先入先出的原则排成一个队列。新来的进程加到就绪队列末尾。每当执行进程调度时,进程调度程序总是选出就绪队列的队首进程,让它在CPU上运行一个时间片的时间。当进程用完分给它的时间片后,调度程序便停止该进程的运行,并把它放入就绪队列的末尾;然后,把CPU分给就绪队列的队首进程。
优先级调度算法的实现思想:是从就绪队列中选出优先级最高的进程,把CPU分给它使用。又分为非抢占式优先级法和抢占式优先级法。前者是:当前占用CPU的进程一直运行下去,直到完成任务或者因等待某事件而主动让出CPU时,系统才让另一个优先级高的进程占用CPU。后者是:当前进程在运行过程中,一旦有另一个优先级更高的进程出现在就绪队列中,进程调度程序就停止当前进程的运行,强行将CPU分给那个进程。
(8) 中断响应主要做哪些工作?由谁来做? 中断响应主要做的工作是: ①中止当前程序的执行;
②保存原程序的断点信息(主要是程序计数器PC和程序状态寄存器PS的内容); ③转到相应的处理程序。 中断响应由硬件实施。
(9) 一般中断处理的主要步骤是什么?
一般中断处理的主要步骤是:保存被中断程序的现场,分析中断原因,转入相应处理程序进行处理,恢复被中断程序现场(即中断返回)。
(10) 简述一条shell命令在Linux系统中的实现过程。
一条shell命令在Linux系统中的执行过程基本上按照如下步骤: ① 读取用户由键盘输入的命令行。
② 分析命令,以命令名作为文件名,其他参数改造为系统调用execve( )内部处理所要求的形式。
③ 终端进程调用fork( )建立一个子进程。
④ 终端进程本身用系统调用wait4( )来等待子进程完成(如果是后台命令,则不等待)。当子进程运行时调用execve( ),子进程根据文件名(即命令名)到目录中查找有关文件(这是命令解释程序构成的文件),调入内存,执行这个程序(即执行这条命令)。
⑤ 如果命令末尾有&号(后台命令符号),则终端进程不用执行系统调用wait4( ),而是立即发提示符,让用户输入下一个命令,转步骤(1)。如果命令末尾没有&号,则终端进程要一直等待,当子进程(即运行命令的进程)完成工作后要终止,向父进程(终端进程)报告,此时终端进程醒来,在做必要的判别等工作后,终端进程发提示符,让用户输入新的命令,重复上述处理过程。
(11) Linux系统中,进程调度的方式和策略是什么?对用户进程和核心进程如何调
60 / 91
度?
Linux系统的调度方式基本上采用“抢占式优先级”方式。
Linux系统针对不同类别的进程提供了三种不同的调度策略,即适合于短实时进程的FIFO,适合于每次运行需要较长时间实时进程的时间片轮转法,适合于交互式的分时进程传统的UNIX调度策略。
Linux系统核心为每个进程计算出一个优先级,高优先级的进程优先得到运行。在运行过程中,当前进程的优先级随时间递减,这样就实现了“负反馈”作用,即经过一段时间之后,原来级别较低的进程就相对“提升”了级别,从而有机会得到运行。
Linux系统的调度方式基本上采用“抢占式优先级”方式,当进程在用户模式下运行时,不管它是否自愿,核心在一定条件下(如该进程的时间片用完或等待I/O)可以暂时中止其运行,而调度其他进程运行。一旦进程切换到内核模式下运行时,就不受以上限制,而一直运行下去,仅在重新回到用户模式之前才会发生进程调度。
6. 思考题
(1) 处理机调度一般可分为哪三级?其中哪一级调度必不可少?为什么?
处理机调度一般可分为高级调度(作业调度)、中级调度和低级调度(进程调度)。其中进程调度必不可少。
进程只有在得到CPU之后才能真正活动起来,所有就绪进程经由进程调度才能获得CPU的控制权;实际上,进程调度完成一台物理的CPU转变成多台虚拟(或逻辑)的CPU的工作;进程调度的实现策略往往决定了操作系统的类型,其算法优劣直接影响整个系统的性能。
(2) 作业提交后是否马上放在内存中?为什么?
在批处理系统中,作业提交后并不是马上放在内存中。其原因是:内存容量有限,而提交的作业数量可能很多,无法把它们都放入内存;即使都放入内存,当内存中可以同时运行的作业太多时,会影响系统的性能,如使周转时间太长;另外,大量作业被收容在输入井(磁盘)中,可以选择对资源需求不同的作业进行合理搭配,再放在内存中,从而使得系统中各部分资源都得到均衡利用。
(3) 假定在单CPU条件下有下列要执行的作业:
作业 运行时间 优先级 1 10 3 2 1 1 3 2 3 4 1 4 5 5 2 作业到来的时间是按作业编号顺序进行的(即后面作业依次比前一个作业迟到一个时间单位)。
① 用一个执行时间图描述在下列算法时各自执行这些作业的情况:先来先服务法FCFS、时间片轮转法RR(时间片=1)和非抢占式优先级。
② 对于上述每种算法,各个作业的周转时间是多少?平均周转时间是多少?
③ 对于上述每种算法,各个作业的带权周转时间是多少?平均带权周转时间是多少?
① 先来先服务法(FCFS)
61 / 91
作业1 作业2 作业3 作业4 作业5 0 10 11 13 14 19 t
时间片轮转法(RR)
作业 1 2 1 3 4 1 5 3 1 5 1 5 1 5 1 5 1 1 1
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 t
非抢占式优先级:
作业1 作业4 作业3 作业5 作业2
0 10 11 13 18 19 t
②和 ③
先来先服务法(FCFS) 作业 到达时间 运行时间 完成时间 周转时间 带权周转时间 1 0 10 10 10 1.0 2 1 1 11 10 10.0 3 2 2 13 11 5.5 4 3 1 14 11 11.0 5 4 5 19 15 3.0 平均周转时间 平均带权周转时间
时间片轮转法(RR) 作业 到达时间 1 2 3 4 5 0 1 2 3 4 11.4 6.1 运行时间 完成时间 周转时间 带权周转时间 10 1 2 1 5 19 2 8 5 16 8.0 2.06 19 1 6 2 12 1.9 1.0 3.0 2.0 2.4 平均周转时间 平均带权周转时间
非抢占式优先级
作业 到达时间 1 2 3 4 5 0 1 2 3 4 运行时间 完成时间 周转时间 带权周转时间 10 1 2 1 5 10 19 13 11 18 12.2 7.06 10 18 11 8 14 1.0 18.0 5.5 8.0 2.8 平均周转时间 平均带权周转时间
62 / 91
注意:本教材按照Linux系统的约定,优先数小的优先级高。本试题给出的条件中直接给出的是优先级,数大的则优先级高。如果试题给出的是优先数,则数小的优先级高。
如果将本试题改为:
作业 运行时间 优先数 1 10 2 2 1 4 3 2 2 4 1 1 5 5 3 则作业2-5优先级从高到低次序为:作业4、作业3、作业5、作业2。上面的解答仍然正确。
1. 作业生存期共经历四个状态,它们是提交、后备、( )和完成。 A. 等待 B. 就绪 C. 开始 D. 执行
满分:3 分
2. 放在输入井中的作业处于( )状态。 A. 执行 B. 提交 C. 完成 D. 后备
满分:3 分
3. 在操作系统中,JCB是指( )。 A. 文件控制块 B. 进程控制块 C. 作业控制块 D. 程序控制块
满分:3 分
63 / 91
4. 作业调度是( )。 A. 从输入井中选取作业进入主存 B. 从读卡机选取作业进入输入井 C. 从主存中选取作业进程占有CPU
D. 从等待设备的队列中选取一个作业进程 满分:3 分
5. 作业一旦进入内存即为执行状态,与之相关的进程在作业进入内存时予以创建,该进程的初始状态为( )。 A. 运行态 B. 就绪态 C. 阻塞态 D. 提交态
满分:3 分
6. 进程调度根据一定的调度算法,从( )队列中挑选出合适的进程。 A. 阻塞 B. 就绪 C. 运行 D. 等待
满分:3 分
7. 为了保证系统的吞吐量,系统总是力争缩短用户作业的( )。 A. 执行时间 B. 提交时间 C. 输入时间 D. 周转时间
满分:3 分
8. 现有3个作业同时到达,每个作业的计算时间都是1小时,它们在一台CPU上按单道方式运行,则平均周转时间为( )小时。 A. 1
64 / 91
B. 2 C. 3 D. 6
满分:3 分
9. 为了对紧急进程或重要进程进行调度,调度算法应采用( )。 A. 先来先服务法 B. 短作业优先法 C. 时间片轮转法 D. 优先级法
满分:3 分
10. 按照作业到达的先后次序调度作业,排队等待时间最长的作业被优先调度,这是指( )调度算法。 A. 先来先服务法 B. 短作业优先法 C. 时间片轮转法 D. 优先级法
满分:3 分
11. 当硬件中断装置发现有事件发生,就会中断正在占用CPU的程序执行,让操作系统的( )占用CPU。 A. 系统调用程序 B. 中断处理程序 C. 作业管理程序 D. 文件管理程序
满分:3 分
12. 下列中断类型中,属于自愿性中断事件的是( )。 A. 硬件故障中断 B. 程序中断
65 / 91
C. 访管中断 D. 外部中断
满分:3 分
13. 在分时系统中,可将进程不需要或暂时不需要的部分移到外存,让出内存空间以调入其他所需数据,称为( )。
A. 覆盖技术 B. 对换技术 C. 虚拟技术 D. 物理扩充
满分:3 分
14. 把逻辑地址转变为内存物理地址的过程称作( )。
A. 编译 B. 连接 C. 运行 D. 重定位
满分:3 分
15. 动态重定位是在程序( )期间,每次访问内存之前教学重定位。A. 执行 B. 编译 C. 装入 D. 修改
满分:3 分
16. 可重定位分区存储管理采用的地址转换公式是( )。
A. 绝对地址=界限寄存器值+逻辑地址 B. 绝对地址=下限寄存器值+逻辑地址 C. 绝对地址=基址寄存器值+逻辑地址 D. 绝对地址=块号×块长+页内地址
66 / 91
满分:3 分
17. 分区管理要求对每一个作业都分配( )的内存单元。
A. 地址连续 B. 若干地址不连续 C. 若干连续的页面 D. 若干不连续的页面 满分:3 分
18. 最先适应分配算法把空闲区( )
A. 按地址顺序从小到大登记在空闲区表中 B. 按地址顺序从大到小登记在空闲区表中 C. 按长度以递增顺序登记在空闲区表中 D. 按长度以递减顺序登记在空闲区表中 满分:3 分
19. 在页式存储管理系统中,整个系统的页表个数是( )个。
A. 1 B. 2
C. 与页面数相同
D. 和装入主存的进程个数相同 满分:3 分
20. 在分页存储管理系统中,从页号到物理块号的地址映射是通过( A. 分区表 B. 页表 C. PCB D. JCB
满分:3 分
21. 与虚拟存储技术不能配合使用的是( )。
A. 分区管理
67 / 91
)实现的。 B. 页式存储管理 C. 段式存储管理 D. 段页式存储管理 满分:3 分
22. 虚拟存储技术是( )。 A. 扩充内存空间的技术 B. 扩充相对地址空间的技术 C. 扩充外存空间的技术 D. 扩充输入输出缓冲区的技术 满分:3 分
23. 存储管理中,页面抖动是指( )。 A. 使用机器时,屏幕闪烁的现象
B. 被调出的页面又立刻被调入所形成的频繁调入调出现象 C. 系统盘有问题,致使系统不稳定的现象 D. 由于主存分配不当,偶然造成主存不够的现象 满分:3 分
24. 在请求分页存储管理中,若采用FIFO页面淘汰算法,则当分配的页面数增加时,缺页中断的次数( )。 A. 减少 B. 增加 C. 无影响
D. 可能增加也可能减少
二、判断题(共 14 道试题,共 28 分。) 得分:28 1. 处于后备状态的作业已经调入内存中。( ) A. 错误 B. 正确
满分:2 分
68 / 91
2. 作业调度选中一个作业后,与该作业相关的进程即占有CPU运行。( ) A. 错误 B. 正确
满分:2 分
3. 在操作系统中,作业处于执行状态时,已处于进程的管理之下。( ) A. 错误 B. 正确
满分:2 分
4. 确定作业调度算法时应主要系统资源的均衡使用,使I/O繁忙作业和CPU繁忙作业搭配运行。( ) A. 错误 B. 正确
满分:2 分
5. 通常,为了提高效率,赋予需要大量计算的作业较高优先级,赋予需要大量输入/输出的作业较低的优先级。( ) A. 错误 B. 正确
满分:2 分
6. 通常,为了提高效率,赋予需要大量计算的作业较高优先级,赋予需要大量输入/输出的作业较低的优先级。( ) A. 错误 B. 正确
满分:2 分
7. 一个进程在执行过程中可以被中断事件打断,当相应的中断处理完成后,就一定恢复该进程被中断时的现场,使它继续执行。( ) A. 错误 B. 正确
满分:2 分
8. 采用动态重定位技术的系统,目标程序可以不经任何改动,而装入物理内存。( ) A. 错误
69 / 91
B. 正确
满分:2 分
9. 把内存物理地址转变为逻辑地址的过程称作重定位。( ) A. 错误 B. 正确
满分:2 分
10. 为了提高内存的利用率,在可重定位分区分配方式中采用紧缩技术来减少内存碎片。( ) A. 错误 B. 正确
满分:2 分
11. 可重定位分区存储管理可以对作业分配不连续的内存单元。( ) A. 错误 B. 正确
满分:2 分
12. 页式存储管理系统不利于页面的共享和保护。( ) A. 错误 B. 正确
满分:2 分
13. 虚拟存储方式下,程序员编制程序时不必考虑主存的容量,但系统的吞吐量在很大程度上依赖于主存储器的容量。( ) A. 错误 B. 正确
满分:2 分
14. 虚拟存储器实际上是一种设计技巧,使主存物理容量得到扩大。( ) A. 错误 B. 正确
一、单项选择题(共 24 道试题,共 72 分。) 得分:66
70 / 91
1. 放在输入井中的作业处于( )状态。 A. 执行 B. 提交 C. 完成 D. 后备
满分:3 分
2. 作业调度程序从处于( )状态的队列中选取适当的作业调入主存运行。 A. 执行 B. 提交 C. 完成 D. 后备
满分:3 分
3. 作业调度的关键在于( )。 A. 选择恰当的进程管理程序 B. 选择恰当的作业调度算法 C. 用户作业准备充分 D. 有一个较好的操作环境 满分:3 分
4. 在操作系统中,JCB是指( )。 A. 文件控制块 B. 进程控制块 C. 作业控制块 D. 程序控制块
满分:3 分
5. 作业一旦进入内存即为执行状态,与之相关的进程在作业进入内存时予以创建,该进程的初始状态为( )。 A. 运行态
71 / 91
B. 就绪态 C. 阻塞态 D. 提交态
满分:3 分
6. 在操作系统中,作业处于( )状态时,已处于进程的管理之下。 A. 执行 B. 提交 C. 完成 D. 后备
满分:3 分
7. 从系统的角度出发,希望批处理控制方式下进入输入井的作业( )尽可能小。 A. 等待装入主存时间 B. 周转时间 C. 执行时间 D. 平均周转时间
满分:3 分
8. 为了保证系统的吞吐量,系统总是力争缩短用户作业的( )。 A. 执行时间 B. 提交时间 C. 输入时间 D. 周转时间
满分:3 分
9. 按照作业到达的先后次序调度作业,排队等待时间最长的作业被优先调度,这是指( )调度算法。 A. 先来先服务法 B. 短作业优先法 C. 时间片轮转法
72 / 91
D. 优先级法
满分:3 分
10. 在作业调度中,若采用优先级调度算法,为了尽可能使CPU和外部设备并行工作,有如下三个作业:J1以计算为主,J2以输入输出为主,J3计算和输入输出兼顾,则它们的优先级从高到低的排列顺序是( )。 A. J1,J2,J3 B. J2,J3,J1 C. J3,J2,J1 D. J2,J1,J3
满分:3 分
11. 为了使计算机在运行过程中能及时处理内部和外部发生的各种突发性事件,现代操作系统采用了( )机制。 A. 查询 B. 中断 C. 调度 D. 进程
满分:3 分
12. 下列中断中,可能要人工介入的中断是( )。 A. 程序中断 B. 时钟中断 C. 输入输出中断 D. 硬件故障中断
满分:3 分
13. 经过( ),目标程序可以不经过任何改动而装入物理内存单元。 A. 静态重定位 B. 动态重定位 C. 编译或汇编 D. 存储扩充
73 / 91
满分:3 分
14. 把逻辑地址转变为内存物理地址的过程称作( )。
A. 编译 B. 连接 C. 运行 D. 重定位
满分:3 分
15. 动态重定位是在程序( )期间,每次访问内存之前教学重定位。A. 执行 B. 编译 C. 装入 D. 修改
满分:3 分
16. 最先适应分配算法把空闲区( )
A. 按地址顺序从小到大登记在空闲区表中 B. 按地址顺序从大到小登记在空闲区表中 C. 按长度以递增顺序登记在空闲区表中 D. 按长度以递减顺序登记在空闲区表中 满分:3 分
17. 分区管理要求对每一个作业都分配( )的内存单元。
A. 地址连续 B. 若干地址不连续 C. 若干连续的页面 D. 若干不连续的页面 满分:3 分
18. 最容易形成很多小碎片的可变分区算法是( )。
A. 最先适应算法
74 / 91
B. 最佳适应算法 C. 位示图法 D. 以上都不是
满分:3 分
19. 在分页存储管理系统中,从页号到物理块号的地址映射是通过( )实现的。 A. 分区表 B. 页表 C. PCB D. JCB
满分:3 分
20. 在分页系统环境下,程序员编制的程序,其地址空间是连续的,分页是由( )完成的。 A. 程序员 B. 编译地址 C. 用户 D. 系统
满分:3 分
21. 虚拟存储技术是( )。 A. 扩充内存空间的技术 B. 扩充相对地址空间的技术 C. 扩充外存空间的技术 D. 扩充输入输出缓冲区的技术 满分:3 分
22. 虚拟存储器的容量是由计算机的地址结构决定的,若CPU有32位地址,则它的虚拟地址空间为( )。 A. 100K B. 640K
75 / 91
C. 2G D. 4G
满分:3 分
23. 系统“抖动”现象的发生是由( )引起的。 A. 置换算法选择不当 B. 交换的信息量过大 C. 内存容量不足 D. 请求页式管理方案 满分:3 分
24. 存储管理中,页面抖动是指( )。 A. 使用机器时,屏幕闪烁的现象
B. 被调出的页面又立刻被调入所形成的频繁调入调出现象 C. 系统盘有问题,致使系统不稳定的现象 D. 由于主存分配不当,偶然造成主存不够的现象 满分:3 分
二、判断题(共 14 道试题,共 28 分。) 得分:24 1. 在单CPU系统中,任何时刻真正在运行的作业至多只能有一个。( ) A. 错误 B. 正确
满分:2 分
2. 作业调度选中一个作业后,与该作业相关的进程即占有CPU运行。( ) A. 错误 B. 正确
满分:2 分
3. 在操作系统中,作业处于执行状态时,已处于进程的管理之下。( ) A. 错误 B. 正确
满分:2 分
76 / 91
4. 吞吐量是指单位时间内CPU完成作业的数量。( ) A. 错误 B. 正确
满分:2 分
5. 平均周转时间和周转时间与选用的调度算法有关。( ) A. 错误 B. 正确
满分:2 分
6. 动态优先级算法允许进程的优先级在运行期间不断改变。( ) A. 错误 B. 正确
满分:2 分
7. 一个进程在执行过程中可以被中断事件打断,当相应的中断处理完成后,就一定恢复该进程被中断时的现场,使它继续执行。( ) A. 错误 B. 正确
满分:2 分
8. 把内存物理地址转变为逻辑地址的过程称作重定位。( ) A. 错误 B. 正确
满分:2 分
9. 动态存储分配时,不需要要靠硬件地址变换机构实现重定位。( ) A. 错误 B. 正确
满分:2 分
10. 固定分区存储管理的各分区的大小不可变化,这种管理方式不适合多道程序设计系统。( ) A. 错误 B. 正确
满分:2 分
77 / 91
11. 可重定位分区存储管理可以对作业分配不连续的内存单元。( ) A. 错误 B. 正确
满分:2 分
12. 在页式存储管理方案中,为了提高内存的利用效率,允许同时使用不同大小的页面。( ) A. 错误 B. 正确
满分:2 分
13. 虚拟存储器实际上是一种设计技巧,使主存物理容量得到扩大。( ) A. 错误 B. 正确
满分:2 分
14. 虚拟存储方式下,程序员编制程序时不必考虑主存的容量,但系统的吞吐量在很大程度上依赖于主存储器的容量。( ) A. 错误 B. 正确
1. 设有一台计算机,有两条I/O通道,分别接一台卡片输入机和一台打印机。卡片机把一叠卡片逐一输入到缓冲区B1中,加工处理后在搬到缓冲区B2中,并在打印机上印出,问:
①系统要设几个进程来完成这个任务?各自的工作是什么? ②这些进程间有什么样的相互制约关系? ③用P、V操作写出这些进程的同步算法。
解:
①系统可设三个进程来完成这个任务:R进程负责从卡片输入机上读入卡片信息,输入到缓冲区B1中;C进程负责从缓冲区B1中取出信息,进行加工处理,之后将结果送到缓冲区B2中;P进程负责从缓冲区B2中取出信息,并在打印机上印出。
②R进程受C进程影响,B1放满信息后R进程要等待——等C进程将其中信息全部取走,才能继续读入信息;C进程受R进程和P进程的约束:B1中信息放满后C进程才可从中取出它们,且B2被取空后C进程才可将加工结果送入其中;P进程受C进程的约束:B2中信息放满后P进程才可从中取出它们,进行打印。 ③信号量含义及初值:
78 / 91
B1full—— 缓冲区B1满,初值为0;(B1full=1表示B1满) B1empty——缓冲区B1空,初值为1;(B1empty=1表示B1空) B2full—— 缓冲区B2满,初值为0;(B2full=1表示B21满) B2empty——缓冲区B2空,初值为1;(B2empty=1表示B2空) R进程 C进程 P进程 P( B1empty) 输入信息写入B1 V(B1full)
P(B1full) P(B2empty) 取B1送入B2 V(B1empty) V(B2full)
P(B2full) 从B2中取出信息进行打印 V(B2empty) 2、现有一个作业,在段式存储管理的系统中已为其主存分配,建立的段表内容如下: 段号 0 1 2 3 主存起始地址(段基址) 120 760 480 370 段长度 40 30 20 20 计算逻辑地址(2,15),(0,60),(3,18)的绝对地址是多少? 注:括号中第一个元素为段号,第二个元素为段内地址。
解:
段式存储管理的地址转换过程为:(1)根据逻辑地址中的段号查段表的相应栏目;(2)根据段内地址<段长度,检查地址是否越界;(3)若不越界,则绝对地址=该段的主存起始地址+段内地址。
逻辑地址(2,15)查段表得段长度为20,段内地址15<20,地址不越界,段号2查表得段首地址为480,于是绝对地址为480+15=495。
逻辑地址(0,60)查段表得段长度为40,段内地址60>40,地址越界,系统发出“地址越界”中断。
逻辑地址(3,18)查段表得段长度为20,段内地址18<20,地址不越界,段号3查表得段首地址为370,于是绝对地址=370+18=388。
3.若干个等待访问磁盘者依次要访问的柱面为20,44,40,4,80,12,76,假设每移动一个柱面需要3毫秒时间,移动臂当前位于40号柱面,请按下列算法分别计算为完成上述各次访问总共花费的寻找时间。 (1)先来先服务算法; (2)最短寻找时间优先算法。
解(1)3毫秒×292=876毫秒 (2)3毫秒×120=360毫秒 (注:各算法使移动臂的移动次序和移动的柱面数如下: (1)40 → 20 → 44 → 40 → 4 → 80 → 12 → 76 (20) (24)(4) (36) (76)(68) (64) 共移动292柱面
79 / 91
(2)40 → 44 → 20 → 12 → 4 → 76 → 80 (4) (24)(8) (8) (72)(4) 共移动120柱面
4.某系统中有10台打印机,有三个进程P1,P2,P3分别需要8台,7台和4台。若P1,P2,P3已申请到4台,2台和2台。试问:按银行家算法能安全分配吗?请说明分配过程。
解:系统能为进程P3分配二台打印机。因为尽管此时10台打印机已分配给进程P1 4台,P22台和P34台,全部分配完,但P3已分配到所需要的全部4台打印机,它不会对打印机再提出申请,所以它能顺利运行下去,能释放占用的4台打印机,使进程P1,P2均可能获得乘余的要求4台和5台,按银行家算法是安全的。
5.用PV操作解决读者写者问题的正确程序如下: begin S, Sr: Semaphore; rc: integer; S:=1; Sr:=1; rc:=0;
cobegin PROCESS Reader i ( i=1,2…) begin P(Sr) rc:=rc+1;
if rc=1 then P(S); V(Sr); read file; P(Sr); rc:=rc-1
if rc=0 thenV(S); V(Sr); end ;
PROCESS Writer j (j=1,2…) begin P(S);
Write file; V(S)
end; coend ; end;
请回答:(1)信号量 Sr的作用;(2)程序中什么语句用于读写互斥,写写互斥;(3)若规定仅允许5个进程同时读怎样修改程序?
解(1)Sr用于读者计数rc的互斥信号量;
(2)if rc=1 then P(S)中的P(S)用于读写互斥,写者进程中的P(S)用于写写互斥,读写互斥。
(3)程序中增加一个信号量S5,初值为5,P(S5)语句加在读者进程P(Sr)之前,V(S5)语句加在读者进程第2个V(Sr)之后。
6. 判断下面的同步问题的算法是否正确?若有错,请指出错误原因并予以改正。
设A、B两进程共用一个缓冲区Q,A向Q写入信息,B则从Q读出信息,算法框图如图
所示。
进程A 进程B
向Q写入信息 P(S) 80 / 91
V(S) 从Q读出信息
注:信号量S的初值为0
解:这个算法不对。
因为A、B两进程共用一个缓冲区Q,如果A先运行,且信息数量足够多,那么缓冲区Q中的信息就会发生后面的冲掉前面的,造成信息丢失,B就不能从Q中读出完整的信息。
进行改正:
A、 B两进程要同步使用缓冲区Q。为此,设立两个信号量: empty表示缓冲区Q为空,初值为1; full表示缓冲区Q为满,初值为0。 算法框图如图所示。
A进程 B进程
P(empty) P(full) 向Q写入信息 从Q中读出信息 V(full) V(empty)
7.有三个用户进程A、B和C,在运行过程中都要使用系统中的一台打印机输出计算结果。 (1) 试说明A、B、C进程之间存在什么样的制约关系?
(2) 为保证这三个进程能正确地打印出各自的结果,请用信号量和P、V操作写出各自的有关申请、使用打印机的代码。要求给出信号量的含义和初值。 解:
(1) A、B、C三个进程之间存在互斥的制约关系。因为打印机属于临界资源,必须一
个进程使用完之后另一个进程才能使用。 (2)mutex:用于互斥的信号量,初值为1。 各进程的代码如下 :
进程A 进程B 进程C ... … ... ... … ... P(mutex) P(mutex) P(mutex) 申请打印机 申请打印机 申请打印机 使用打印机 使用打印机 使用打印机 V(mutex) V(mutex) V(mutex) … … …
8. 假定在某移动臂磁盘上,刚刚处理了访问75号柱面的请求,目前正在80号柱面读信息,并且有下述请求序列等待访问磁盘: 请求序列: 1 2 3 4 5 6 7 8 欲访问柱面号: 160 40 190 188 90 58 32 102
试用:(1)电梯调度算法
(2)最短寻找时间优先算法 分别列出实际处理上述请求的次序。
解(1)电梯调度算法:由”刚刚处理了访问75号柱面的请求,目前正在80号柱面读信息”可知:初始磁头前进的方向是:”从小到大”
81 / 91
所以:处理次序为:
5 8 1 4 3 6 2 7 90 102 160 188 190 58 (2)最短寻找时间优先算法:
40 32
处理次序为:
5 8 6 2 7 1 4 3
90 102 58 40 32 160 188 190
9. 有三个进程P1,P2和P3并发工作。进程P1需用资源S3和S1;进程P2需用资源S1和S2;进程P3需用资源S2和S3。回答:
(1)若对资源分配不加限制,会发生什么情况?为什么?
(2)为保证进程正确工作,应采用怎样的资源分配策略?为什么? 解:
(1)可能会发生死锁
例如:进程P1,P2和P3分别获得资源S3,S1和S2后再继续申请资源时都要等待,这是循环等待。
(或进程在等待新源时均不释放已占资源) (2)可有几种答案: A.采用静态分配
由于执行前已获得所需的全部资源,故不会出现占有资源又等待别的资源的现象(或不会出现循环等待资源现象)。
或B.采用按序分配 不会出现循环等待资源现象。
或C.采用银行家算法 因为在分配时,保证了系统处于安全状态。
10. 某车站售票厅,任何时刻最多可容纳20名购票者进入,当售票厅中少于20名购票者时,则厅外的购票者可立即进入,否则需在外面等待。若把一个购票者看作一个进程,请回答下列问题:
82 / 91
(1)用PV操作管理这些并发进程时,应怎样定义信号量,写出信号量的初值以及信号量各种取值的含义。
(2)根据所定义的信号量,把应执行的PV操作填入下述方框中,以保证进程能够正确地并发执行。
COBEGIN PROCESS PI(I=1,2,……) begin ; 进入售票厅;
购票; 退出;
end;
COEND
(3)若欲购票者最多为n个人,写出信号量可能的变化范围(最大值和最小值)。
解(1)定义一信号量S,初始值为20。 意义:
S>0 S的值表示可继续进入售票厅的人数 S=0 表示售票厅中已有20名顾客(购票者) S<0 |S|的值为等待进入售票厅的人数 (2)上框为P(S) 下框为V(S)
(3)S的最大值为20 S的最小值为20-n
注:信号量的符号可不同(如写成t),但使用时应一致(即上述的s全应改成t)。
11. 有两个进程P1和P2,它们执行的过程如下:
P1: 10秒CPU操作、20秒I/O操作(设备1)、5秒CPU操作、10秒I/O操作(设备2)、5秒CPU操作、结束
P1: 15秒I/O操作(设备1)、10秒CPU操作、15秒I/O操作(设备2)、10秒CPU操作、结束
(1) 如果进程P1和P2顺序执行,请画出进程P1和P2执行情况图; (2) 如果进程P1和P2并发执行,请画出进程P1和P2执行情况图;
(3) 分别计算在(1)和(2)情况下,CPU的利用率、设备1和设备2的利用率。 解:
(1) P1和P2顺序执行 P1: ` CPU I/O(DEV1) CPU I/O(DEV2) CPU 0 10 30 35 45 50 P2: I/O(DEV1) CPU I/O(DEV2) CPU 50 65 75 90 100
(2) P1和P2并发执行 CPU(P1) CPU(P2) CPU(P1)CPU(P2) CPU(P1) 83 / 91
I/O(DEV1)(P2) I/O(DEV1)(P1) I/O(DEV2)(P2) I/O(DEV2) 0 10 15 25 35 40 50 55 (3) 在情况(1)下,CPU的利用率=40/100=40% 设备1的利用率=35/100=35%
设备2的利用率=25/100=25%
在情况(2)下,CPU的利用率=40/55=73% 设备1的利用率=35/55=64%
设备2的利用率=25/55=45%
12.一个程序P的用户空间为16K,存储管理采用请求式分页系统,每个页面大小为2K,存在以下的页表:
页框号 12 3 0 0 2 15 0 有效位 1 1 1 0 1 1 0
答:用户地址空间共用14bit表示.范围为:0x0000~0x3FFF.超过这个范围即为”越界”
0x060C:1548+12*2048=0x660C 0x1502:0x6502 0x1d71:缺页
0x2c27:0x1427 0x4000:越界
13.有一个文件系统,根目录常驻内存,目录文件采用链接式,每个磁盘块存放10个下级文件的描述,最多存放40个下级文件(最多涉及到4个盘块),若下级文件为目录文件,则上级目录指向该目录文件的第一块,否则指向普通文件的文件控制块。普通文件采用二级索引形式,文件控制块中给出12个磁盘块地址,前10个磁盘块地址指出前10页的物理地址,第11个磁盘块地址指向一级索引表,一级索引表给出256个磁盘块地址,即指出该文件第10页至第256页的地址,第12个磁盘块地址指向二级索引表,二级索引表中指出256个一级索引表的地址。(1) 该文件系统中的普通文件最大可有多少页?
(2) 若要读文件/A/D/K/Q中的某一页, 最少要启动磁盘几次? 最多要启动磁盘几次?
答:(1)一个文件的所有块可以通过下面三种途径找到:直接通过FCB找到前10块,通过一级索引找到256块,通过二级索引找到256*256块,所以一个文件最大可以有
8 1 其中,有效位=1表示页面在内存;0表示页面不在内存。
请将虚地址0x060C,0x1502,0x1d71,0x2c27,0x4000转换为物理地址。
84 / 91
10+256+2562块
最坏情况是:每次读取目录描述信息的时候都在最后一个块找到下级的目录或文件
,所
以要找到Q文件的FCB至少要读取A的第一块,D、G、二个目录项的所有四个块,再读取Q的FCB,总共要1+4*2+1=10次启动硬盘。找到FCB后再读取该文件页所在的块,如果这一块在前10块之列,那么在启动一次硬盘就可以找到这一块,如果这一块在最后一块,则可能需要通过二级索引找到这一块,这总共需要读取二级索引和最后一块共2+1次读取硬盘。
14.一个系统中存在某类资源m个,被n个进程共享。资源的分配和释放必须一个一个进行,请证明在以下两个条件下不会发生死锁: 每个进程需要资源的最大数在1~m之间; 所有进程需要的资源总数小于m+n;
证明:
假设进程Pi(0假设进程已经分配到的资源为Ai(0假设当前发生了死锁,则 A1+A2+….+An=m Ai A1+A2+….+An+n<=R1+R2+….+Rn 即 m+n<=R1+R2+….+Rn 和(1)矛盾,死锁不成立。 85 / 91 15.一个请求式分页存储系统,页表存放在内存: 访问一次内存需要100ns 如果仅调入一个页面,需要花费8ms(内存有空页面,或需要进行页面置换,单被置换 的页面没有修改过); 如果调入一个页面同时需要进行被置换页面的写出,则需要20ms; 假设页面被修改的比例是60%; 请问,缺页率必须控制在多少以下,才能使得EAT<200ns? 解: 假设缺页率为f_rate, 则, EAT=(1-f_rate)*100+f_rate*(40%*8000+60%*20000) 如EAT<200, 则, (1- f_rate)*100+f_rate*(40%*8000+60%*20000)<200 100-100*f_rate+15200*f_rate<200 151*f_rate<1 f_rate<1/151 即缺页率小于0.66%。 16.一个文件有100个磁盘块,假设文件控制块在内存(如果文件采用索引分配(indexed allocation),索引表也在内存)。在下列情况下,请计算在contiguous, linked, indexed(single-level)三种分配方式下,分别需要多少次磁盘I/O操作?(每读出或写入一个磁盘块都需要一次磁盘I/O操作)(10%) 假设在contiguous分配方式下,文件头部无空闲的磁盘块,但文件尾部有空闲的磁盘块。假设要增加的块信息存放在内存中。 在文件开始处添加一个磁盘块; 在文件结尾处添加一个磁盘块; 在文件中间删除第50块磁盘块;(假设磁盘块编号从0—99) 在文件第50块前添加一个磁盘块; (假设磁盘块编号从0—99) 解: 在文件开始处添加一个磁盘块:连续:201/链接:1/索引:1 在文件结尾处添加一个磁盘块:连续:1/链接:101/索引:1 在文件中间删除一个磁盘块:连续:48*2+1+1=98/链接:52/索引:0 在文件中间添加一个磁盘块:连续:101/链接:52/索引:1 17.一个操作系统有20个进程,竞争使用30个同类资源,申请方式是逐个进行,一旦某个进程获得了它的全部资源,就马上归还所有的资源,每个进程最多使用30,最少使用一个资源。20个进程需要的资源总数小于50。如果仅考虑这类资源,系统会产生死锁吗?请说明理由。 答: 设max(i)表示第i个进程的最大资源需求量, need(i)表示第i个进程还需要的资源量, 86 / 91 alloc(i)表示第i个进程已分配的资源量。 由题中所给条件可知: max(1)+…+max(20)=(need(1)+…need(20))+(alloc(1)+…+alloc(20))<50 如果在这个系统中发生了死锁,那么一方面30个资源R应该全部分配出去,即(反证法)alloc(1)+…+alloc(20)=30 另一方面所有进程将陷入无限等待状态。 由上述两式可得:need(1)+…+need(20)<20(关键) 上式表示死锁发生后,20个进程还需要的资源量之和小于20,这意味着此刻至少存在一个进程i,need(i)=0,即它已获得了所需要的全部资源。既然该进程已获得了它所需要的全部资源,那么它就能执行完成并释放它占有的资源,这与前面的假设矛盾,从而证明在这个系统中不可能发生死锁。 18. 一个分页存储系统,页表存放在内存: 如果访问一次内存需要200ns,则访问一个内存单元需要多少时间? 如果系统采用三级页表,则访问一个内存单元需要多少时间? 如果系统引入联想寄存器,90%的页表项可以在快表中命中,则访问一个内存单元需 要多少时间?(假设访问一次快表需要10ns) 解: 1、 400 ns(200ns+200ns)(访问页表+访问具体内存单元) 2、 800 ns(3×200ns+200ns)(访问3级页表+访问具体内存单元) 3、 229 ns[(90%×10+10%×200)+200ns] (访问页表的平均时间+访问具体内存单 元) 18. 设某文件的物理存储方式采用链接方式,该文件由5个逻辑记录组成,每个逻辑记录的大小与磁盘块大小相等,均为512字节,并依次存放在50、121、75、80、63号磁盘块上。(10分) 文件的第1569逻辑字节的信息存放在哪一个磁盘块上? 要访问第1569逻辑字节的信息,需要访问多少个磁盘块?(假如该文件的FCB在内 存) 答: 因为:1569=512×3+33 所以要访问字节的逻辑记录号为3,对应的物理磁盘块号为80。故应访问第80号磁盘块。 由于采用链接方式,所以要访问第3个逻辑记录的信息,必须访问逻辑记录第0、1、2后,才能访问第3个逻辑记录,所以要访问第1569逻辑字节的信息,需要访问4个磁盘块。 第1章习题与参考答案 87 / 91 一. 单项选择题 1.下列关于数据库管理系统的说法,错误的是(C)。 A.数据库管理系统与操作系统有关,操作系统的类型决定了能够运行的数据库管理系统的类型 B.数据库管理系统对数据库文件的访问必须经过操作系统才能实现 C.数据库应用程序可以不经过数据库管理系统而直接读取数据库文件 D.数据库管理系统对用户隐藏了数据库文件的存放位置和文件名 2.下列关于用文件管理数据的说法,错误的是(D)。 A.用文件管理数据,难以提供应用程序对数据的独立性 B.当存储数据的文件名发生变化时,必须修改访问数据文件的应用程序 C.用文件存储数据的方式难以实现数据访问的安全控制 D.将相关的数据存储在一个文件中,有利于用户对数据进行分类,因此也可以加快用户操作数据的效率 3.数据库系统的物理独立性是指(D)。 A.不会因为数据的变化而影响应用程序 B.不会因为数据存储结构的变化而影响应用程序 C.不会因为数据存储策略的变化而影响数据的存储结构 D.不会因为数据逻辑结构的变化而影响应用程序 4.数据库系统是由若干部分组成的。下列不属于数据库系统组成部分的是(B)。 A.数据库 B.操作系统 C.应用程序 D.数据库管理系统 5.数据库三级模式结构的划分,有利于(A)。 A. 数据的独立性 B. 管理数据库文件 C. 建立数据库 D. 操作系统管理数据库 88 / 91 6.在数据库的三级模式中,描述数据库中全体数据的逻辑结构和特征的是( B)。 A.内模式 B.模式 C. 外模式 D. 其他 7.在用数据模型描述数据时,一般要求数据模型要满足三个要求。下列描述中,不属于数据模型应满足要求的是(A)。 A.能够描述并发数据 B.能够真实地模拟现实世界 C.容易被业务人员理解 D.能够方便地在计算机上实现 8.数据模型三要素是指(B)。 A.数据结构、数据对象和数据共享 B.数据结构、数据操作和数据完整性约束 C.数据结构、数据操作和数据的安全控制 D.数据结构、数据操作和数据的可靠性 9.下列关于实体联系模型中联系的说法,错误的是(D )。 A.一个联系可以只与一个实体有关 B.一个联系可以与两个实体有关 C.一个联系可以与多个实体有关 D.一个联系可以不与任何实体有关 10.数据库系统中的三级模式以及模式间的映像提供了数据的独立性。下列关于两级映像的说法,正确的是(C)。 A.外模式到模式的映像是由应用程序实现的,模式到内模式的映像是由DBMS实现的 B.外模式到模式的映像是由DBMS实现的,模式到内模式的映像是由应用程序实现的 C.外模式到模式的映像以及模式到内模式的映像都是由DBMS实现的 D.外模式到模式的映像以及模式到内模式的映像都是由应用程序实现的 二.填空题 89 / 91 1.数据是我们要处理的(信息),数据模型是数据的(组织方式)。 2.从现实系统的使用来说,数据的特征可分为(静态特征)和(动态特征)两部分。 3.数据模型的三要素是(数据操作)、(数据结构)、(完整性约束)。 4.关系模型中,实体以及实体和实体之间的联系都用(关系)来表示。 5.属性在E-R图中用圆角矩形表示,在矩形框内写上(属性的名字),并用连线将属性框与它所描述的(实体)联系起来。 6.两个实体之间的联系通常分为三类,即(一对一联系)、(一对多联系)、(多对多联系)。 7.数据库的三级模式结构是指(外模式)、(模式)、(内模式)。 8.数据库管理系统在三个模式之间提供了两层映像,即(外模式/模式映像)、(模式/内模式映像)。 9.数据库管理系统(DBMS)是对数据库进行管理的系统软件,位于应用程序和(操作系统)之间。 10.数据库管理系统(DBMS)提供的功能包括四个方面,分别是(数据定义功能)、(数据操作功能)、(数据库运行管理和控制功能)、(数据库的建立和维护功能)。 三. 简答题 1.文件管理方式在管理数据方面有哪些缺陷? 答:编写应用程序不方便;数据冗余不可避免;应用程序依赖性;不支持对文件的并发访问;数据间联系弱;难以按不同用户的愿望表示数据;无安全控制功能。 2.与文件管理相比,数据库管理有哪些优点? 答:(1)相互关联的数据集合;(2)较少的数据冗余;(3)程序与数据相互独立;(4)保证数据的安全可靠;(5)最大限度地保证数据的正确性;(6)数据可以共享并能保证数据的一致性。 3.数据独立性指的是什么?它能带来哪些好处? 答:数据独立性包括逻辑独立性和物理独立性两部分。物理独立性是指当数据的存储结构发生变化时,不影响应用程序的特性;逻辑独立性是指当表达 90 / 91 现实世界的信息内容发生变化时,不影响应用程序的特性。这两个独立性使用户只需关心逻辑层即可,同时增强了应用程序的可维护性。 4.实体之间的联系有哪几种?请为每一种联系举出一个例子。 答:有三种:1:1;1:n;m:n。1:1示例:系和系主任。1:n示例:班和学生;m:n示例:教师和学生。 5.说明实体-联系模型中的实体、属性和联系的概念。 答:实体是具有公共性质的并可相互区分的现实世界对象的集合。属性是实体所具有的特征或性质。联系是实体之间的关联关系。 四.综合应用题 1.指明下列实体间联系的种类: 1)教研室和教师(假设一个教师只属于一个教研室,一个教研室可有多名教师)。 2)商店和顾客。 3)国家和首都。 答:1)一对多;2)多对多;3)一对一 91 / 91 因篇幅问题不能全部显示,请点此查看更多更全内容