1. 分时系统的响应时间(及时性)主要是根据(A)确定的,而实时系统的响应时间则是由(B)确定的。
A, B:(1)时间片大小;(2)用户数目;(3)计算机运行速度;(4)用户所能接受的等待时间;(5)控制对象所能接受的时延;(6)实时调度
解答:A:(4);B:(5)
2. 在分时系统中,为使多个用户能够与系统交互,最关键的问题是(A);当用户数目为100时,为保证响应时间不超过2s,此时的时间片最大应为(B)。
A:(1)计算机具有足够高的速度;(2)内存容量足够大;(3)系统能及时接收多个用户的输入;(4)能在较短的时间内,使所有用户程序都能得到运行;(5)能快速进行内外存对换;
B:(1)10ms;(2)20ms;(3)50ms;(4)100ms;(5)200ms;
解答:A:(4);B:(2)
3. 从下面关于模块化程序的的叙述中选出,选出五条正确的叙述。
(1) 使程序设计更为方便,但比较难维护
(2) 便于由多人分工编制大型程序
(3) 便于软件功能扩充
(4) 在内存能够容纳的前提下,应使模块尽可能大,以减少模块的个数
(5) 模块之间的接口叫数据文件
(6) 只要模块接口不变,各模块内部实现细节的修改,不会影响别的模块
(7) 使程序易于理解,也利于排错
(8) 模块间的单向调用关系,形成了模块的层次式结构
(9) 模块愈小,模块化的优点愈明显。一般来说,一个模块的大小在10行以下。
(10) 一个模块实际上是一个进程
解答:2、3、6、7、8
4. 采用(A)结构时,将OS分成用于实现OS最基本功能的内核和提供各种服务的服务器两个部分。通常,下列模块中必须包含在操作系统内核中的是(B)模块。
A:(1)整体式;(2)模块化;(3)层次式;(4)微内核;
B:(1)内存分配;(2)中断处理;(3)文件处理;(4)命令处理;
解答:A:(4);B:(2)
1. 在将CPU的执行状态分为用户态和核心态的系统中,应该在核心态下执行的指令依次为(A)、(B)、(C)。而从用户状态转换到系统状态是通过(D)实现的。
A,B,C:(1)屏蔽所有中断;(2)读时钟;(3)设置时钟的值;(4)存取内存中某地址单元的值;(5)停机。
D:(1)执行进程直接修改程序状态字;(2)中断屏蔽;(3)中断;(4)进程调度;
解答:A:(1);B:(3);C:(5);D:(3)
2. 在分时系统中,导致进程创建的典型事件是(A);在批处理系统中,导致进程创建的典型事件是(B);由系统专门为运行中的应用进程创建新进程的事件是(C);在创建进程时,(D)不是创建所必须的步骤。
A:(1)用户注册;(2)用户登录;(3)用户记账;(4)用户通信。
B:(1)作业录入;(2)作业调度;(3)进程调度;(4)中级调度。
C:(1)分配资源;(2)进行通信;(3)共享资源;(4)提供服务。
D:(1)为进程建立PCB;(2)为进程分配内存等资源;(3)为进程分配CPU;(4)将进程插入就绪队列;
解答:A:(2);B:(2);C:(4);D:(3)
3. 从下面对临界区的论述中,选出两条正确的论述。
(1) 临界区是指进程中用于实现进程互斥的那段代码
(2) 临界区是指进程中用于实现进程同步的那段代码
(3) 临界区是指进程中用于实现进程通信的那段代码
(4) 临界区是指进程中用于访问共享资源的那段代码
(5) 临界区是指进程中访问临界资源的那段代码
(6) 临界区是指进程中用于实现进程互斥的那段代码
(7) 若进程A与进程B必须互斥地进入自己的临界区,则进程A处于对应的临界区内时,仍有可能被进程B中断
(8) 若进程A与进程B必须互斥地进入自己的临界区,则进程A处于对应的临界区内时,便不能被进程B中断
解答:5、6
4. 使用mail命令的信箱通信属于(A),因为信息是被发送到接收方的(B)中;使用write命令,实现的是(C)通信,因为信息是被发送到接收方的(D);使用共享文件进行通信的方式属于(E)。
A,C,E:(1)共享存储器;(2)实时通信;(3)消息缓冲通信;(4)非实时通信;(5)管道通信。
B,D:(1)消息缓冲队列;(2)内存;(3)信箱;(4)消息缓冲区;(5)屏幕;(6)共享存储区
解答:A:(4);B:(3);C:(2);D:(5);E:(5)
5. 从下面的叙述中选出一条正确的叙述。
(1) 操作系统的一个重要概念是进程,不同进程所执行的代码也不同
(2) 操作系统通过PCB来控制和管理进程,用户进程可从PCB中读出与本身运行状态相关的信息
(3) 当进程由执行状态变为就绪状态时,CPU现场信息必须被保存在PCB中。
(4) 当进程申请CPU得不到满足时,它将处于阻塞状态
(5) 进程是可于其它程序并发执行的程序在一个数据集合上的运行过程,所以程序段是进程存在的唯一标志
解答:3
6. 从下面的叙述中选出4条正确的叙述。
(1) 一个进程的状态发生变化总会引起其他一些进程的状态发生变化。
(2) 进程被挂起(suspend)后,状态变为阻塞状态。
(3) 信号量的初值不能为负值。
(4) 线程是CPU调度的基本单位,但不是资源分配的基本单位。
(5) 在进程对应的代码中使用wait、signal操作后,可以防止系统发生死锁。
(6) 管程每次只允许一个进程进入。
(7) wait、signal操作可以解决一切互斥问题。
(8) 程序的顺序执行具有不可再现性。
解答:3、4、6、7
7. 试比较进程和管程的异同点
(1) 管程和进程都定义了数据结构,进程定义的是私有数据结构进程控制块;管程定义的是公共数据结构,如消息队列。
(2) 管程和进程都在各自的数据结构上进行有意义的操作。进程是由顺序程序执行有关操作,管程主要是同步操作和初启操作。
(3) 管程和进程设置的目的不同,进程是为了更好的刻画可实现系统的并发性而设置的;管程是为了解决进程进程的公共变量,解决共享资源的互斥使用问题而设置的。
(4) 进程通过调用管程中的过程对共享变量进行操作,此时该过程就如通常的子程序一样被调用而处于被动工作方式。因此称管程为被动成分,于此相对应的进程则处于主动工作方式而被称为主动成分。
(5) 由于进程是主动成分,故进程之间能被并发执行;而管程是被动成分,管程和调用它的进程不能并发执行。
(6) 进程可由“创建”而诞生、由“撤消”而消亡,即具有生命期;而管程是操作系统中的固有成分,无需进程创建,也不能被进程撤消只能被进程调用。
8. 为什么说pcb是进程的唯一标识
9. 算法
10. 某寺庙,有小、老和尚若干。有一水缸,由小和尚提水入缸供老和尚饮用。水缸可容10桶水,水取自同一井中。水井径窄,每次只能容一个桶取水。水桶总数为3个。每次取、入缸水仅为1桶,且不可同时进行。试用P、V操作给出有关取水、入水的算法描述。
水缸互斥信号量:mutex1=1;井互斥信号量:mutex2=1;
同步信号量:empty=10;full=0;
水桶资源总数信号量:count=3;
11. 有一个仓库,可以存放A和B两种产品,但要求:
(1) 每次只能存入一种产品(A或B)
(2) -N<A产品数量-B产品数量<M
其中,N和M是正整数。试用P、V操作描述产品A与产品B的入库过程。
根据题意A产品数量不能比B产品数量少N个以上,A产品数量不能比B产品数量多M个以上,初始时sa为M-1,sb为N-1。当往库中存放入一个A产品数量时,则允许B产品数量也增加1;当往库中存放入一个B产品数量时,则允许A产品数量也增加1;
12. 写者优先算法
管程
Type readers_writers = Monitor;
Var rq,wq: condition;
reading_count,write_count:integer;
Define start_read,finish_read,
start_write,finish_write;
Procedure start_read;
Begin
If write_count>0 Then
wait(rq);
reading_count++;
signal(rq);
End;
Procedure finish_read;
Begin
reading_count–;
If reading_count=0
Then signal(wq)
End;
Procedure start_write
Begin
write_count++;
If (write_count>1) or
(reading_count>0)
Then
wait(wq)
End;
Procedure finish_write;
Begin
write_count–;
If write_count>0
Then signal(wq)
Else signal(rq)
End;
Begin
reading_count:=0;
write_count:=0;
End;
Var rw:readers_writers;
读者: 写者:
rw.start_read; rw.start_write;
{reading} {writing}
rw.finish_read; rw.finish_write
1. 一台计算机有8台磁带机。它们由N个进程竞争使用,每个进程最大需求为3,请问N为多少时,系统没有死锁危险,并说明原因。
N=3
2. 在一个使用多级反馈队列的系统中,一个使用CPU较多的进程需要执行50秒。如果第一个队列时间片为5,并且较低一级的时间片是上一级时间片的2倍,那么这个作业会被中断多少次,当它终止时处于哪级队列?
3次,4级
1. 具有两级页表的页式存储管理与段页式存储管理有何差别?
具有两级页表的页式存储管理的地址空间依然是一维的,两级页的划分对于进程来说都是透明的。而段页式存储管理的地址空间是二维的,用户能感觉到段的划分。
2. 何谓请调?何谓预调?为何在预调系统中必须辅以请调?
所谓请调是当页故障发生时进行调度,即当被访问页面不在内存时由动态调页系统将其调入内存。显然,采用纯请调策略,被移入内存的页面一定会被用到,即不会发生无意义的页面调度。但是,请调有一个缺点:从缺页中断发生到所需页面被调入内存,这期间所对应的进程必须等待,如此将会影响进程的推进速度。
预调也称先行调度,是在页故障发生前进行调度,即当一个页面即将被访问之前就由动态调页系统将其调入内存。易见,预调可以节省进程因页故障而等待的时间。预调通常根据程序的顺序行为特性而做出:如某进程当前正访问第12页,则接下来很可能会访问第13页、第14页,此时可将第13页甚至第14页预先调入内存。这样当该进程访问第13页以至第14页时它们已经在内存中,不会发生缺页故障,从而提高进程的推进速度。
预调不一定是百分之白准确的。由于程序中存在转移语句,第13页用完后可能需要访问第10页,而该页目前可能不在内存。也就是说,预先调入的页面可能未被用到,预先未调入的页面可能被用到。当访问到预先未调入内存的页面时,仍会发生缺页中断。因而,在采用预调的系统中,必须辅以请调功能。
3. 给定某系统的各种资源使用特征如下:
CPU 低
交换设备 非常高
其他I/O设备 低
对于以下情况,说明是明显改进、明显降低了CPU利用率,还是对CPU利用率影响很小。
(11) 安装更快的CPU
(12) 安装更大的交换设备
(13) 安装更快的交换设备
(14) 安装更多的内存
(15) 安装更快的内存
(16) 增加多道编程的程度
(17) 降低多道编程的程度
(18) 安装更快的I/O设备
解答:
高的交换设备利用率和低的内存利用率,都会使系统到整个性能由于过多的交换而降低。
(a) 安装更快的CPU
更快的CPU可能降低CPU的利用率(尽管降低的很少)
(b) 安装更大的交换设备
这没有影响
(c) 安装更快的交换设备
这可能有助于提高CPU利用率。因为CPU可能由于等待交换操作完成而经常空闲。
(d) 安装更多的内存
这也可能有帮助,由于减少了需要的交换总量(因此减少了交换设备的I/O操作频率)。
(e) 安装更快的内存
没有影响。
(f) 增加多道编程的程度
由于系统颠簸得更厉害,进而会降低性能。
(g) 降低多道编程的程度
这可能是改进性能的无代价方式。多道程序的主要目标是让足够的进程进入内存,使得所有的进程都很少阻塞。由于CPU和设备的利用率很低,这降低进程数目(减少交换),然而还有就绪进程准备在CPU上运行。
(h) 安装更快的I/O设备
如果设备利用率本来就很低,安装更快的I/O设备,至多能对CPU利用率有很小的改善。
4. 给定某系统的各种资源使用特征如下:
CPU 低
交换设备 低
其他I/O设备 高
对于以下情况,说明是明显改进、明显降低了CPU利用率,还是对CPU利用率影响很小。
(19) 安装更快的CPU
(20) 安装更大的交换设备
(21) 安装更快的交换设备
(22) 安装更多的内存
(23) 安装更快的内存
(24) 增加多道编程的程度
(25) 降低多道编程的程度
(26) 安装更快的I/O设备
解答:
(a) 安装更快的CPU
轻微降低或没有影响。
(b) 安装更大的交换设备
没有影响
(c) 安装更快的交换设备
没有影响或影响很小。
(d) 安装更多的内存
影响很小或没有影响。
(e) 安装更快的内存
影响很小或没有影响。
(f) 增加多道编程的程度
可能改进。
(g) 降低多道编程的程度
在一定程度上降低性能。
(h) 安装更快的I/O设备
可能改进。
5. 已知某系统有四个页框,下面的表格表示各个页、装入时间、最后访问时间、页面重写标志位、访问位。(一定要写明原因,否则扣分)
页号
装人时间
最后访问时间
页面重写标志位
访问位
0
227
327
1
0
1
345
367
1
1
2
101
331
1
1
3
234
382
0
1
(i) FIFO算法将替换哪一页?
(j) LRU算法将替换哪一页?
(k) NRU算法将替换哪一页?
(l) SECOND CHANCE算法将替换哪一页?
FIFO算法将2页
LRU算法将0页
NRU算法将替换0页
SECOND CHANCE算法将替换0页
1. 在UNIX System Ⅴ中,如果一个盘块的大小为1KB,每个盘块号占4个字节,那么一个进程要访问偏移量位字节处的数据时,需要经过几次间接?(写出简单计算过程)
⁄1024=257,mod1024=0块内偏移量为0
10<257<266,所以的块号在一次间接内
2. UNIX System Ⅴ系统为使文件的索引表较小,又能允许组织大文件,采用直接索引与多次间接索引(多级索引)方式,假设每个磁盘块大小为1024个字节,并且每个间接块容纳256个块号,试问
1) 直接索引、一次间接、二次间接、三次间接所能访问的文件大小分别为多少块?
2) 假设某个文件的FCB已在内存,但其他信息均在外存,为了访问该文件中某个位置的内容,最少需要几次访问磁盘?最多需要几次访问磁盘?
3) 某进程要访问字节偏移量为9000、18000和处的数据,应该如何找到它所在磁盘块及其块内位移量?
4) 画出简单的示意图。
直接索引:10
一次间接:10+256
二次间接: 10+256+256*256
三次间接: 10+256+256*256+256*256*256
某进程要访问字节偏移量为9000处的数据:
9000⁄1024=8,9000mod1024=808
直接寻址:从i-addr(8)中找到相应的物理块号,在此块号内找808字节,为所要访问的数据。
某进程要访问字节偏移量为18000处的数据
17 592
一次间址:7表目中寻找的磁盘号592单元的数据为所要访问的数据。
某进程要访问字节偏移量为处的数据
341 816 341-266=75 [ 75⁄256]=0
二次间址:二次间址0表目中寻找的磁盘号一次间址的物理块号,在一次间址75表目处得到的物理块,其816单元的数据为所要访问的数据。
3. 例子:一个FCB有48个字节,符号目录项占 8字节,文件名6字节,文件号2字节,分解前后平均访盘次数。
基本目录项占 48-6=42字节
假设,物理块大小512字节
解:分解前:占512/48=10个FCB
分解后:占512/8=64个符号目录项或512/42=12个基本目录项
假设:目录文件有128个目录项
分解前:占13块
分解后:符号文件占2块
基本文件占11块
查找一个文件的平均访盘次数
分解前:(1+13)/2=7次
分解后:(1+2)/2 +1 =2.5次
减少了访问硬盘的次数,提高了检索速度
4. 某文件系统中,根目录长驻内存。目录文件采用链接结构,普通文件采用三级索引结构。假设一个物理块放10个目录项,一个目录下最多放40个文件。如果下级文件是目录文件,则上级目录项指向该目录文件的首地址;如果下级文件是普通文件,则上级目录项指向该文件的文件控制块。又假设索引表放在FCB中,如果要读取K的第一块或最后一块,需要启动硬盘最少几次,最多几次?
(假设文件按自左向右的顺序建立)
5. 位示图
计算公式:
已知字号i,位号j
块号=i×字长+j
已知块号:
字号=[ 块号/字长]
位号=块号 mod 字长
6. 某系统使用连续分配.为了在101块的文件中添加或删除一个块应进行多少次读和写的操作?说明原因。(只写得数不说明扣分)。假设:
l 文件的第一个块的地址已经在内存中
l 要增加的信息块已经在内存中
l 在文件的末尾有空间可供扩展,而在文件的开始位置不能扩展
l 中间块是第51个块
l 不计增加一个删除块到空闲表所需要的I/O操作
1) 在开头增加一个块
2) 在中间块后增加一个块
3) 在末尾增加一个块
4) 删除开头的块
5) 删除中间块
6) 删除末尾的块
7. 在一个使用链接分配的系统中,回答和前面一题相同的问题。
8. 在使用索引分配的系统中,回答和前面一题相同的问题。假设所有需要的索引块都在内存中。如果一个索引块的内容改变了,不把修改后的信息重写到磁盘的输出操作计算在内。
1
a) 203
b) 101
c) 1
d) 0
e) 100
f) 0
2 2
a) 1
b) 53
c) 103
d) 1
e) 52
f) 101
3 3
a) 1
b) 1
c) 1
d) 0
e) 0
f) 0
9. 一个文件系统使用大小为256字节的物理块。每个文件都有一个目录项给出了文件名、第一个块的位置、文件的长度和最后一块的位置。假设目录项和最后读取的物理块已经在主存。在下面的三种情况下,在使用连续分配的系统中、链接分配的系统中、索引分配的系统中,假设索引分配系统中目录项中包括第一个索引块(不是文件中的第一个块)的位置,每一个索引块包含指向127个文件块的指针和一个指向下一个索引块的指针,除了最后读的块外,假设含有指向最后读的块的指针的索引块也在主存中,但是内存中没有其他的索引块。为了访问指定的块,需要读多少个物理块?(包括指定的块)。
1) 最后读的块号:100,将要读的块号:600。
2) 最后读的块号:20,将要读的块号:21。
3) 最后读的块号:500,将要读的块号:200。
连续分配的系统中:1;1;1
链接分配的系统中:500;1;200
索引分配的系统中:5;1;3
1. 存放在磁盘上的文件以链接结构组织,假定磁盘的分块大小为每块512字节,而文件的逻辑记录的大小为每个记录250字节。现有一个文件共有10个逻辑记录,请回答:(10分)
1) 采用成组操作时,几个逻辑记录为一组较合适?
每个盘块存放两个逻辑记录。需要5个盘块。
2) 画出成组时的链接结构示意图
2. 假定有一若有一个磁盘共有100个柱面,每个柱面上有8个磁道,每个盘面被划分成4个扇区。现有一个含3200逻辑记录的文件,逻辑记录的大小与扇区的大小一致,该文件以顺序结构的形式被存放到磁盘上。柱面、磁道、扇区以及逻辑记录的编号均从“0”开始。文件信息从0柱面、0磁道、0扇区开始存放,请问
1) 如何确定该文件的第3000个逻辑记录存放在磁盘上的位置,其柱面号、磁头号、和扇区号?
扇区数=8*4=32,柱面号3000/32=93,
磁头号3000mod32=24,24⁄4=6,
扇区号24mod4=0
2) 第32柱面的第1磁道的第0扇区存放了该文件的第几个记录?
每个盘面4个扇区,每个柱面8个磁道,第32柱面、第1磁道、第0扇区,
0+4*(1+32*8)=1028
解答:1)93 6 0
2)1028
3. 文件分配表FAT是管理磁盘空间的一种数据结构,用在以链接方式存储文件的系统中记录磁盘分配和跟踪空白磁盘块。FAT整个磁盘仅设一张。如果文件首块号为2,查找FAT序号为2的内容得知接着物理块2的后继物理块是5;再查FAT序号为5的内容得知接着物理块5的后继物理块是7;接着继续查FAT序号为7 的内容为“^”,即改文件结束标志,所以该文件顺序由物理块2、5、7组成。假设磁盘物理块大小为1KB。
1) 对540MB的硬盘其文件分配表FAT需要占用多少存储空间?
540M/1K=540K,540K<1024K=2的20次方,20位需要2.5个字节(3个字节是24位),2.5*540K=1350K
2) 当硬盘容量为1.2G时,文件分配表又需占用多少存储空间?
1.2G/1k=1.2M,1.2M<2M=2的21次方,需要3字节,3*1.2M=3.6M
1350k 4.8M。
4. 假定有一个具有200个磁道(编号为0~199)的移动头磁盘,在完成了磁道125处的请求后,当前正在磁道143处为一个请求服务。若请求队列以FIFO次序存放,即86,147,91,177,94,150,102,175,130。对下列每一个磁盘调度算法,若要满足这些要求,则总的磁头移动次数为多少?
1) FCFS
2) SSTF
3) SCAN
4) CSCAN
5. 在单缓冲的情况下,假设T是从磁盘输入一块数据的时间,C是CPU对一块数据进行处理的时间,而M是将一块数据从缓冲区传送到用户区的时间。当一用户进程要按顺序访问的方式处理大量数据时,请问系统对一块数据的处理时间是多少?画图说明。
MAX(C,T)+M
6. 在双缓冲的情况下,假设T是从磁盘输入一块数据的时间,C是CPU对一块数据进行处理的时间,而M是将一块数据从缓冲区传送到用户区的时间。当一用户进程要按顺序访问的方式处理大量数据时,请问系统对一块数据的处理时间是多少?画图说明。
MAX(C,T)
7. I/O软件一般分为哪四个层次?每层完成哪些功能?画图说明。
层次
用户进程
进行I/O调用;格式化I/O;SPOOLing
设备无关软件
命名;保护;阻塞;缓冲;分配
设备驱动程序
建立设备寄存器;检查状态
中断处理程序
当I/O结束时唤醒驱动程序
硬件
8. 说明向设备寄存器写命令、检查用户是否有权使用设备、将二进制转换成ASCII码以便打印分别是在I/O软件的哪一层完成的?
向设备寄存器写命令:设备驱动层
检查用户是否有权使用设备:设备无关软件层
将二进制代码转换成ASCII码以便打印:用户层

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/172213.html