操作系统期末试题卷与答案解析.docx
《操作系统期末试题卷与答案解析.docx》由会员分享,可在线阅读,更多相关《操作系统期末试题卷与答案解析.docx(15页珍藏版)》请在冰豆网上搜索。
操作系统期末试题卷与答案解析
(答案在后面)
得分
评分人
一、填空题(每空1分,共10分)
1.常见的I/O控制方式有程序I/O方式、中断I/O控制方式、DMAI/O控制方式和
通道I/O控制方式四种。
2.操作系统向用户提供的两个基本接口是程序接口和用户接口。
3.若在一分页存储管理系统中,某作业的页表如下所示。
已知页面大小为1024字节,逻辑地址(3082)10转化得到的物理地址是6154。
页号
块号
0
2
1
3
2
1
3
6
4.具有多路性、独立性、及时性和交互性特征的操作系统是分时操作系统。
5.通道用于控制设备控制器与内存之间的信息交换。
6.事务的最基本特性是。
7.若盘块大小为4KB,每个盘块号占4字节,在采用两级索引时允许的最大文件长度为4GB。
得分
评分人
二、单选题(每题2分,共20分)
1.用磁带作为文件存贮介质时,文件只能组织成( )。
A.顺序文件 B.链接文件 C.索引文件 D.目录文件
2.一作业8:
00到达系统,估计运行时间为1小时,若10:
00开始执行该作业,则其响应比是( C )。
A.2 B.1 C.3 D.0.5
3.文件系统采用多级目录结构后,对于不同用户的文件,其文件名( C )。
A.应该相同 B.应该不同 C.可以相同,也可以不同 D.受系统约束
4.死锁预防是保证系统不进入死锁状态的静态策略,其解决方法是破坏产生死锁的四个必要条件之一。
下列方法中破坏了“循环等待”条件的是(D)。
A.银行家算法B.一次性分配策略C.剥夺资源法D.资源有序分配法
5.进程状态从就绪态到运行态的转化工作是由(B)完成的。
A.作业调度B.进程调度C.页面调度D.设备调度
6.采用缓冲技术的主要目的是(C)。
A.改善用户编程环境B.提高CPU的处理速度
C.提高CPU和设备间的并行程度D.实现与设备无关性
7.目录文件所存放的信息是(D)。
A.该目录中所有数据文件目录B.某一文件存放的数据信息
C.某一个文件的文件目录D.该目录中所有文件的目录
8.最容易形成很多小碎片的可变分区分配算法是(D)。
A.首次适应算法B.循环首次适应算法
C.最坏适应算法D.最佳适应算法
9.用户程序与实际使用的物理设备无关是由(A)功能实现的。
A.设备独立性B.设备驱动C.虚拟设备D.设备分配
10.下面关于顺序文件、链接文件和索引文件的论述中不正确的是(A)。
A.显示链接文件是在每个盘块中设置一个链接指针,用于将该文件所属的所有盘块链接起来
B.顺序文件必须采用连续分配方式,而链接文件和索引文件则都可采取离散分配方式
C.顺序文件适用于对诸记录进行批量存取时
D.在交互应用场合,需要经常查找访问单个记录时,更适合用顺序或索引文件
得分
评分人
三、简答题。
(每题4分,共20分)
1.文件系统对目录管理的主要要求是什么?
1实现“按名存取”(1分)
2提高对目录的检索速度(1分)
3文件共享(1分)
4允许文件重名(1分)
2.什么是Spooling技术,Spooling系统由哪几部分组成?
SPOOLING技术是一种虚拟设备技术,它可以把一台独占设备改造成为虚拟设备,在进程所需的物理设备不存在或被占用的情况下,使用该设备。
SPOOLING技术是对脱机输入,输出系统的模拟,又称为假脱机操作。
(2分)
SPOOLING系统主要由三部分组成:
输入井和输出井、输入缓冲区和输出缓冲区、输入进程和输出进程。
(2分)
3.文件分配表FAT的作用及类别。
4.某系统中有4个并发进程,都需要同类资源5个,假设现在用信号量S代表该资源,当前S的值为-2。
请回答:
1保证该系统不会发生死锁的最少资源数是几个?
17个
2假设信号量S的初值等于第①问中的结果,那么系统中的相关进程至少执行了几次P(S)操作?
19次
3与信号量S相关的处于阻塞状态的进程有几个?
两个
4要使信号量S的值大于0,应该进行怎样的操作?
V(S)操作释放信号量的次数至少要比P(S)操作多3次。
5.试分别从以下方面对进程和线程进行比较:
1地址空间:
线程是进程内的一个执行单元,进程至少拥有一个线程,同属一个进程的多个线程共享该进程的地址空间;而进程则有自己独立的地址空间。
2资源拥有:
资源拥有:
进程是资源分配和拥有的基本单位,同一个进程所属的多个线程共享进程所有的资源。
3处理机调度:
线程是处理机调度的基本单位
4能否并发执行:
进程和线程均可以并发执行
得分
评分人
四、应用题(每题10分,共30分)
1.某请求分页式存储管理系统,接收一个共7页的作业。
作业运行时的页面走向如下:
1、5、2、1、3、2、4、7、2、4。
假定系统为该作业分配了3块内存空间,内存页块初始均为空,假设FIFO算法以队列,LRU算法以堆栈作为辅助结构,请填表并计算:
1采用先进先出(FIFO)页面淘汰算法时,会产生多少次缺页中断?
缺页率是多少?
页面走向
1
5
2
1
3
2
4
7
2
4
队列
是否缺页
换出页
缺页中断次数为:
缺页率为:
2采用最近最久未用(LRU)页面淘汰算法时,会产生多少次缺页中断?
缺页率是多少?
页面走向
1
5
2
1
3
2
4
7
2
4
堆栈
是否缺页
换出页
缺页中断次数为:
缺页率为:
2.假定磁盘的移动臂现在处于第10柱面,由内向外运动(磁道号由小到大)。
现有一组磁盘请求以60、8、15、4、20、40柱面的次序到达磁盘驱动器,移动臂移动一个柱面需要6ms,请完成下面的问题:
1访问磁盘所需的时间由哪三部分构成?
2若采用先来先服务FCFS算法进行磁盘调度,请给出柱面访问序列,计算平均寻道时间。
3若采用最短寻找时间优先SSTF算法进行磁盘调度,请给出柱面访问序列,计算平均寻道时间。
4若采用电梯扫描SCAN算法进行磁盘调度,请给出柱面访问序列,计算平均寻道时间。
3.系统中有4类资源(A,B,C,D)和5个进程P0~P4,T0时刻的系统状态如下表所示,系统采用银行家算法实施死锁避免策略。
Process
Allocation
Need
Available
P0
1,2,3,4
0,0,1,2
1,2,2,3
P1
1,0,0,0
1,7,5,0
P2
0,2,1,0
2,3,5,6
P3
0,2,1,0
0,6,5,8
P4
1,0,1,1
0,6,5,7
请回答:
1系统中的4类资源总量分别是多少?
4888
2T0状态是否安全?
为什么?
T0时刻存在一个安全序列{P0,P2,P4,P3,P1},故系统是安全的。
3在T0状态的基础上,若进程P2提出请求Request(1,1,0,1),系统能否将资源分配给它?
请说明理由。
进程P2提出请求Request(1,1,0,1)后,因Request≤Need且Request≤Available,故系统可考虑将资源分配给它,分配后,Available将变为(0,1,2,2),进行安全性检测,发现存在一个安全序列{P0,P2,P4,P3,P1},故系统是安全的。
4在T0状态的基础上,若进程P1提出请求Request(1,1,2,0),系统能否将资源分配给它?
请说明理由。
P1提出请求Request(1,1,2,0)后,因Request≤Need且Request≤Available,故系统可考虑将资源分配给它,分配后,Available将变为(0,1,0,3),进行安全性检测,发现已不能满足任何进程需要,系统会进入不安全状态,所以此时系统不能为P1分配资源。
得分
评分人
五、综合分析题(每题10分,共20分)
1.有一个多道批处理系统,作业调度采用“短作业优先”调度算法;进程调度采用“优先数抢占式”调度算法,且优先数越小优先级越高。
若系统拥有打印机一台,采用静态方法分配,忽略系统的调度开销。
现有如下作业序列到达系统:
作业名
到达时间
Cpu运行时间
打印机需求
优先数
J1
2:
00
50min
1
4
J2
2:
20
40min
0
2
J3
2:
30
50min
1
3
J4
2:
50
20min
0
5
J5
3:
10
10min
1
1
请填写下表,根据表格内容求出各个作业的平均周转时间和平均带权周转时间,同时指出各个作业运行结束的次序。
作业名
到达时间
Cpu运行时间
打印机需求
优先数
开始时间
结束时间
周转时间
带权
周转时间
J1
2:
00
50min
1
4
2:
00
3:
30
J2
2:
20
40min
0
2
2:
20
3:
00
J3
2:
30
50min
1
3
3:
40
4:
50
J4
2:
50
20min
0
5
4:
30
3:
40
J5
3:
10
10min
1
1
3:
30
3:
40
各个作业的平均周转时间为:
各个作业的平均带权周转时间为:
各个作业运行结束的次序为:
2.有一间教室,教室内只有一位教师为学生答疑。
教室内有10张可供学生等待答疑的椅子,如果没有学生需要答疑,则教师休息;如果有学生进入教室发现教师在休息,则要叫醒该教师;教师正在答疑时若有新来的同学,则进入教室坐下等待,但是若教室内已无空位,那新来的同学要先离开。
要求:
1请分析为了实现同步控制,总共需要用到几个信号量,其含义和初始值分别为多少。
2请使用伪码描述教师和学生之间的同步关系。
一、填空题(每空1分,共10分)
1.中断驱动直接存储器访问(或DMA)通道
2.用户程序
3.6154
4.分时
5.设备控制器
6.原子性
7.4GB
二、单选题(每题2分,共20分)
1.A2.C3.C4.D5.B
6.C7.D8.D9.A10.A
三、简答题(每题4分,共20分)
1.文件系统对目录的管理有以下要求:
5实现“按名存取”(1分)
6提高对目录的检索速度(1分)
7文件共享(1分)
8允许文件重名(1分)
2.SPOOLING技术是一种虚拟设备技术,它可以把一台独占设备改造成为虚拟设备,在进程所需的物理设备不存在或被占用的情况下,使用该设备。
SPOOLING技术是对脱机输入,输出系统的模拟,又称为假脱机操作。
(2分)
SPOOLING系统主要由三部分组成:
输入井和输出井、输入缓冲区和输出缓冲区、输入进程和输出进程。
(2分)
3.可以把用于链接文件各物理块的指针,显式地存放在内存的一张链接表中,分配给各个文件的所有盘块号都放在该表中,由于查找记录的过程在内存中进行,因而显著提高了检索速度,该表称为文件分配表FAT(FileAllocationTable)。
(2分)
根据FAT表项的位宽不同,FAT可分为FAT12、FAT16、FAT32和NTFS等不同类别。
(2分)
4.
1保证不会发生死锁的资源数至少为17个。
(1分)
2至少执行了19次P(S)操作;(1分)
3阻塞进程有2个;(1分)
4V(S)操作释放信号量的次数至少要比P(S)操作多3次。
(1分)
5.
5地址空间:
线程是进程内的一个执行单元,进程至少拥有一个线程,同属一个进程的多个线程共享该进程的地址空间;而进程则有自己独立的地址空间。
(1分)
6资源拥有:
进程是资源分配和拥有的基本单位,同一个进程所属的多个线程共享进程所有的资源。
(1分)
7处理机调度:
线程是处理机调度的基本单位。
(1分)
8并发执行:
进程和线程均可以并发执行。
(1分)
四、计算题(每题10分,共30分)
1.解:
1采用FIFO算法时,发生缺页的次数为7,缺页率为:
70%(5分)
页面走向
1
5
2
1
3
2
4
7
2
4
队列
2
2
3
3
4
7
2
2
5
5
5
2
2
3
4
7
7
1
1
1
1
5
5
2
3
4
4
是否缺页
√
√
√
√
√
√
√
换出页
1
5
2
3
2采用LRU算法时,发生缺页的次数为6,缺页率为:
60%(5分)
页面走向
1
5
2
1
3
2
4
7
2
4
堆栈
2
1
3
2
4
7
2
4
5
5
2
1
3
2
4
7
2
1
1
1
5
2
1
3
2
4
7
是否缺页
√
√
√
√
√
√
换出页
5
1
32
2.解:
1磁盘访问时间由:
寻道时间、旋转延迟时间和数据传输时间三部分构成。
(1分)
2先来先服务算法:
(3分)
柱面访问序列为:
60、8、15、4、20、40
平均寻道时间为:
3最短寻找时间优先算法:
(3分)
柱面访问序列为:
8、4、15、20、40、60
平均寻道时间为:
4电梯调度算法:
(3分)
柱面访问序列为:
15、20、40、60、8、4
平均寻道时间为:
3.解:
1系统中4类资源的总数为:
(4,8,8,8)。
(2分)
2T0时刻存在一个安全序列{P0,P2,P4,P3,P1},故系统是安全的。
(2分)
资源
进程情况
Work
Need
Allocation
Work+Allocation
Finish
P0
1,2,2,3
0,0,1,2
1,2,3,4
2,4,5,7
ture
P2
2,4,5,7
2,3,5,6
0,2,1,0
2,6,6,7
ture
P4
2,6,6,7
0,6,5,7
1,0,1,1
3,6,7,8
ture
P3
3,6,7,8
0,6,5,8
0,2,1,0
3,8,8,8
ture
P1
3,8,8,8
1,7,5,0
1,0,0,0
4,8,8,8
ture
3进程P2提出请求Request(1,1,0,1)后,因Request≤Need且Request≤Available,故系统可考虑将资源分配给它,分配后,Available将变为(0,1,2,2),进行安全性检测,发现存在一个安全序列{P0,P2,P4,P3,P1},故系统是安全的。
(3分)
资源
进程情况
Work
Need
Allocation
Work+Allocation
Finish
P0
0,1,2,2
0,0,1,2
1,2,3,4
1,3,5,6
ture
P2
1,3,5,6
1,2,5,5
1,3,1,1
2,6,6,7
ture
P4
2,6,6,7
0,6,5,7
1,0,1,1
3,6,7,8
ture
P3
3,6,7,8
0,6,5,8
0,2,1,0
3,8,8,8
ture
P1
3,8,8,8
1,7,5,0
1,0,0,0
4,8,8,8
ture
4P1提出请求Request(1,1,2,0)后,因Request≤Need且Request≤Available,故系统可考虑将资源分配给它,分配后,Available将变为(0,1,0,3),进行安全性检测,发现已不能满足任何进程需要,系统会进入不安全状态,所以此时系统不能为P1分配资源。
(3分)
五、综合分析题(每题10分,共20分)
1.填表:
(7分)
作业名
到达时间
Cpu运行时间
打印机需求
优先数
开始时间
结束时间
周转时间
带权
周转时间
J1
2:
00
50min
1
4
2:
00
3:
30
90
1.8或9/5
J2
2:
20
40min
0
2
2:
20
3:
00
40
1
J3
2:
30
50min
1
3
3:
40
4:
30
120
2.4或12/5
J4
2:
50
20min
0
5
4:
30
4:
50
120
6
J5
3:
10
10min
1
1
3:
30
3:
40
30
3
各个作业的平均周转时间为:
(90+40+120+120+30)/5=80(1分)
各个作业的平均带权周转时间为:
(1.8+1+2.4+6+3)/5=2.84(1分)
各个作业运行结束的次序为:
J2——J1——J5——J3——J4(1分)
2.解:
根据题意,需要使用3个信号量:
(2分)
students:
用于记录等候的学生数量,初值为0;
teacher:
用于表示教师是否正在答疑,初值为0;
mutex:
用于教师进程和学生进程的互斥,初值为1。
另,还需使用一个共享变量waiter,用于记录等候的学生数量,初值为0。
伪码如下:
semaphorestudents=0,teacher=0,mutex=1;
intwaiter=0;
/*********************************************/
parbegin
voidteacher()(4分)
{while
(1)
{p(students);/*是否有学生等待答疑*/
p(mutex);
waiter=waiter-1;/*等待答疑的学生减少一人*/
v(mutex);
v(teacher);
answer();/*教师答疑*/
}
}
/*********************************************/
voidstudent()(4分)
{p(mutex);
if(waiter<10)
{waiter=waiter+1;
v(students);
v(mutex);
p(teacher);
getanswer();
}
elsev(mutex);
}
parend