操作系统习题+答案
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第一章
1. 操作系统的主要作用是(D )
A 管理设备
B 提供操作命令
C 管理文件
D 为用户提供使用计算机的接口,管理计算机的资源
2. 对外部输入的信息能在规定时限内处理完毕并作出迅速反应的操作系统称为(C )
A 分时操作系统
B 批处理操作系统
C 实时操作系统
D 多处理机操作系统
3. 操作系统的基本特征是并发性、共享性、虚拟性、异步性。
4. 什么是操作系统?
操作系统是一组控制和管理计算机硬件和软件资源,合理的对各类作业进行调度,以及方便用户使用的程序集合。
第二章
1 . 苹果桔子问题
桌上有一只盘子,每次只能存放一个水果。一家四口人各行其职,爸爸专向盘子中放苹果(apple),妈妈专向盘子中放桔子(orange),儿子专等吃盘子中的桔子,女儿专等吃盘子里的苹果。请用PV操作来实现四人之间的同步算法。
答:记录型信号量解决苹果桔子问题,
plate:semaphore; /* 盘子是否为空*/
orange:semaphore; /* 盘子里有桔子 */
apple:semaphore; /* 盘子里有苹果 */
plate := 1;
orange:= 0; /* 盘子里没有桔子 */
apple:= 0; /* 盘子里没有苹果*/
word范文
parbegin
process father begin
L1: P(plate);
放苹果;
V(apple);
goto L1;
end;
process mother begin
L2:P(plate);
放桔子;
V(orange);
goto L2;
end;
process son
begin
L3: P(orange);
取桔子;
V(plate);
吃桔子;
goto L3;
end;
process daughter word范文
begin
L4: P(apple);
取苹果;
V(plate);
吃苹果;
goto L4;
end;
parend
2. 和尚取水问题
寺庙里有老小和尚若干和一水缸,小和尚打水,老和尚饮水。水缸容积为10桶水,水取自同一水井,每次只容一个桶打水,桶的总数为3个,每次往水缸倒水和从水缸取水仅为一桶。
答:Var mutex1, mutex2, empty, full, count: semaphore;
mutex1:=1; 代表可以用水井
mutex2:=1;代表可以用水缸
empty:=10; 水缸的容量
full:=0; 水缸中的水量
count:=3;水桶的个数
process 小和尚:
begin
repeat
wait(empty);
wait(count);
wait(mutex1);
从井中打水;
signal(mutex1);
wait(mutex2);
word范文
送水入水缸;
signal(mutex2);
signal(count);
signal(full);
until false;
end
process 老和尚:
begin
repeat
wait(full);
wait(count);
wait(mutex2);
从缸中取水;
signal(mutex2);
signal(empty);
signal(count);
until false;
end
3.有一座东西方向的独木桥,用P,V操作实现:
(1)每次只允许一个人过桥;
(2)当独木桥上有行人时,同方向的行人可以连续过桥,相反方向的人必须等待。(3)当某一方向无人过桥时,另一方向的行人可以过桥。
答:(1)
设信号量MUTEX=1
P(MUTEX)
过桥
V(MUTEX)
word范文
(2)
设信号量:MUTEX=1(东西方互斥)
MD=1(东向西使用计数变量互斥)
MX=1(西向东使用计数变量互斥)
设整型变量:CD=0(东向西的已上桥人数) CX=0(西向东的已上桥人数)
从东向西:
P(MD)
IF(CD=0)
{P(MUTEX)}
CD=CD+1
V(MD)
过桥
P(MD)
CD=CD-1
IF(CD=0)
{V(MUTEX)}
V(MD)
从西向东:
P(MX)
IF(CX=0)
{P(MUTEX)}
CX=CX+1
V(MX)
过桥
P(MX)
CX=CX-1
IF(CX=0)
word范文
{V(MUTEX)}
V(MX)
(3):从东向西的,和(2)相同;从西向东的和(1)相同。
4.
上图描述的生产者-消费者问题中,如果其缓冲区部分为n个长度相等的有界缓冲区组成,且每次传输数据长度等于有界缓冲区长度以及生产者和消费者可对缓冲区同时操作。试重新描述生产过程和消费过程。
答:
设第i块缓冲区的公用信号量为buf[i],初值为1;
生产者进程的私用信号量为produce,初值为n;
消费者进程的私用信号量为consume,初值为0。
生产过程和消费过程描述如下:
生产过程:
Begin
P(produce)
选择一个空缓冲区i
P(buf[i])
送数据入缓冲区i
word范文