操作系统课后答案Word格式文档下载.docx

上传人:b****4 文档编号:6149845 上传时间:2023-05-06 格式:DOCX 页数:31 大小:53.96KB
下载 相关 举报
操作系统课后答案Word格式文档下载.docx_第1页
第1页 / 共31页
操作系统课后答案Word格式文档下载.docx_第2页
第2页 / 共31页
操作系统课后答案Word格式文档下载.docx_第3页
第3页 / 共31页
操作系统课后答案Word格式文档下载.docx_第4页
第4页 / 共31页
操作系统课后答案Word格式文档下载.docx_第5页
第5页 / 共31页
操作系统课后答案Word格式文档下载.docx_第6页
第6页 / 共31页
操作系统课后答案Word格式文档下载.docx_第7页
第7页 / 共31页
操作系统课后答案Word格式文档下载.docx_第8页
第8页 / 共31页
操作系统课后答案Word格式文档下载.docx_第9页
第9页 / 共31页
操作系统课后答案Word格式文档下载.docx_第10页
第10页 / 共31页
操作系统课后答案Word格式文档下载.docx_第11页
第11页 / 共31页
操作系统课后答案Word格式文档下载.docx_第12页
第12页 / 共31页
操作系统课后答案Word格式文档下载.docx_第13页
第13页 / 共31页
操作系统课后答案Word格式文档下载.docx_第14页
第14页 / 共31页
操作系统课后答案Word格式文档下载.docx_第15页
第15页 / 共31页
操作系统课后答案Word格式文档下载.docx_第16页
第16页 / 共31页
操作系统课后答案Word格式文档下载.docx_第17页
第17页 / 共31页
操作系统课后答案Word格式文档下载.docx_第18页
第18页 / 共31页
操作系统课后答案Word格式文档下载.docx_第19页
第19页 / 共31页
操作系统课后答案Word格式文档下载.docx_第20页
第20页 / 共31页
亲,该文档总共31页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

操作系统课后答案Word格式文档下载.docx

《操作系统课后答案Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《操作系统课后答案Word格式文档下载.docx(31页珍藏版)》请在冰点文库上搜索。

操作系统课后答案Word格式文档下载.docx

而分时系统中的多路性则与用户情况有关,时多时少。

(2)独立性

实时事务处理系统中的每个终端用户在向实时系统提出服务请求时,是彼此独立地操作,互不干扰;

而实时过程控制系统中,对信息的采集和对对象的控制也都是彼此互不干扰。

(3)实时性

分时系统对响应时间的要求是以人们能够接受的等待时间为依据,其数量级通常规定为秒;

而实时系统对响应时间一般有严格限制,它是以控制过程或信息处理过程所能接受的延迟来确定的,其数量级可达毫秒,甚至微秒级。

事件处理必须在给定时限内完成,否则系统就失败。

(4)交互性

实时系统虽然也具有交互性,但这里人与系统的交互仅限于访问系统中某些特定的专用服务程序。

它不像分时系统那样能向终端用户提供数据处理和资源共享等服务。

(5)可靠性

虽然分时系统也要求系统可靠,但实时系统对可靠性的要求更高。

因为实时系统控制、管理的目标往往是重要的经济、军事、商业目标,而且立即进行现场处理,任何差错都可能带来巨大的经济损失,甚至引发灾难性后果。

因此,在实时系统中必须采取相应的硬件和软件措施,提高系统的可靠性。

5.操作系统的功能包括哪几部分?

操作系统应该具有处理机管理、存储器管理、设备管理和文件管理的功能。

为了方便用户使用操作系统,还须向用户提供方便的用户接口。

6.在单CPU和两台I/O设备(I1、I2)的多道程序设计环境下,同时投入3个作业运行。

其执行轨迹如下:

Job1:

I2(30ms),CPU(10ms),I1(30ms),CPU(10ms),I2(20ms)

Job2:

I1(20ms),CPU(20ms),I2(40ms)

Job3:

CPU(30ms),I1(20ms),CPU(10ms),I1(10ms)

如果CPU、I1和I2都能并行工作,优先级从高到低依次为Job1、Job2和Job3,优先级高的作业可以抢占优先级低的作业的CPU,但不可抢占I1和I2。

试求:

(1)每个作业从投入到完成分别所需要的时间。

(2)从作业的投入到完成,CPU的利用率。

(3)I/O设备的利用率。

画出三个作业并行工作图如下(图中着色部分为作业等待时间):

 

(1)Job1从投入到运行完成需110ms,Job2从投入到运行完成需90ms,Job3从投入到运行完成需110ms。

(2)CPU空闲时间段为:

60ms至70ms,80ms至90ms,100ms至110ms。

所以CPU利用率为(110-30)/110=72.7%。

(3)设备I1空闲时间段为:

20ms至40ms,90ms至100ms,故I1的利用率为(110-30)/110=72.7%。

设备I2空闲时间段为:

30ms至50ms,故I2的利用率为(110-20)/110=81.8%。

习题二答案

1.进程控制块(PCB)

2.进程

3.执行就绪阻塞

1.操作系统中为什么要引入进程的概念?

现代操作系统中一般都存在多个程序并发执行,程序并发所具有的间断执行、相互制约、运行结果不确定的特点,使得程序在并发执行过程要解决程序转换时候的现场保护,共享资源的合理分配以及程序的执行结果的可再现等问题。

这些问题靠程序这个静态的概念是无法进行解决的,因此需要引入进程的概念,利用进程来进行程序执行过程中的动态控制,有效管理和调度进入计算机系统中的程序,确保程序的并发执行。

2.试说明PCB的作用。

PCB是用来记录和管理进程运动变化过程的一个数据结构。

它是进程实体的一部分,它记录了操作系统所需的、用于描述进程的当前情况以及控制进程运行的全部信息。

系统利用PCB来控制和管理进程,PCB是进程存在的唯一标志。

进程与PCB存在一一对应的关系。

3.为了支持进程状态的变迁,OS至少要提供哪些进程控制原语?

OS提供进程创建原语create()来创建新的进程,新创建的进程处于就绪状态。

系统提供撤销原语用来撤销完成或由于特殊原因需要撤销的进程。

系统提供阻塞原语,当进程需要阻塞时,调用阻塞原语,进程就会由执行转换为阻塞状态。

系统还提供有唤醒原语,当某事件完成或某资源可用时,调用唤醒原语,可以使处于阻塞状态的进程转换为就绪状态。

习题三答案

1.P(/wait)V(/signal)

2.一段时间内只许一个进程访问的资源访问临界资源的代码

3.继续执行进程排到阻塞队列中等待资源并自我阻塞

4.s<

=0阻塞就绪

5.共享内存区管道通信消息传递机制

6.空闲准入忙需等待有限停留有限等待

1.有座东西方向架设、可双向通行的单车道简易桥,最大载重负荷为4辆汽车。

请定义合适的信号量,正确使用PV操作,给出任一车辆通过该简易桥的管理算法。

需要设置一个互斥信号量mutex来确保桥的单行使用权,设置变量etolnum、ltoenum表示从西到东和从东到西的车辆的数目,同时设相应的两个互斥信号etolmutex、ltoemutex来确保变量etolnum、ltoenum的互斥使用,还需要设置一资源信号量count来控制上桥车辆的数目。

semaphoremutex,etolmutex,ltoemutex,count;

intetolnum=0,ltoenum=0;

mutex.value=1;

etolmutex.value=1;

ltoemutex.value=1;

count=4;

etol()//从西向东过桥的车辆进程

{

wait(etolmutex);

//要用到变量etolnum先申请变量的使用权

if(etolnum==0)wait(mutex);

//如果是第一辆从西向东过桥的车辆需申请桥的使用权

etolnum++;

//从西向东过桥的车辆数目加1

signal(etolmutex);

wait(count);

//令可从西向东过桥的车辆数目减1

过桥;

signal(count);

etolnum--;

//从西向东过桥的车辆数目减1

//最后一辆从西向东过桥的车辆需释放桥的使用权

}

ltoe()//从东向西过桥的车辆进程

wait(ltoemutex);

//要用到变量ltoenum先申请变量的使用权

if(ltoenum==0)wait(mutex);

//如果是第一辆从东向西过桥的车辆需申请桥的使用权

ltoenum++;

//从东向西过桥的车辆数目加1

signal(ltoemutex);

//令可从东向西过桥的车辆数目减1

ltoenum--;

///从东向西过桥的车辆数目减1

//最后一辆/从东向西过桥的车辆需释放桥的使用权

2.设在公共汽车上,司机和售票员的活动分别是:

司机:

启动车辆,正常行车,到站停车。

售票员:

上乘客,关车门,售票,开车门,下乘客。

用PV操作对其控制。

存在两个同步关系有,司机到站停车后售票员开车门,售票员关车门后司机才能启动车辆。

因此需要两个同步信号量。

semaphoreopen,close;

open.value=1;

close.value=0;

driver()

while

(1)

wait(close);

启动车辆;

正常行车;

到站停车;

signal(open)

conductor()

上乘客;

关车门;

signal(close);

售票;

wait(open);

开车门;

下乘客;

}

3.理发师问题:

理发店理有一位理发师、一把理发椅和n把供等候理发的顾客坐的椅子。

如果没有顾客,理发师便在理发椅上睡觉,一个顾客到来时,它必须叫醒理发师,如果理发师正在理发时又有顾客来到,则如果有空椅子可坐,就坐下来等待,否则就离开。

试用pv操作实现理发师问题。

理发师要互斥地给顾客理发,所以要用一个互斥信号量mutex。

用变量waitnum表示等待的顾客的数目,为了互斥使用变量waitnum,需要设互斥信号量waitmutex。

如果没有顾客,理发师就睡觉。

理发师等待信号量custmer将其唤醒。

唤醒后就互斥地为顾客理发。

理发完毕后如果还有顾客就发next信号,换下一个顾客理发。

顾客进程中,如果是第一个顾客就唤醒理发师,否则等待,等到理发师的next信号,就去理发,理完离开。

为了控制等待的人数,设资源信号量waitcustomer。

semaphoremutex,waitmutex,customer,next,waitcustomer;

intwaitnum=0;

waitmutex.value=1;

customer.value=0;

next.value=0;

waitcustomer.value=n;

barber()

wait(waitmutex)//互斥访问变量waitnum

if(waitnum==0)//如果没有顾客就睡觉

睡觉;

signal(waitmutex);

wait(custmer);

//等待被顾客唤醒

wait(mutex);

//互斥地为顾客理发

理发;

signal(mutex);

if(waitnum>

0)//如果还有顾客就叫下一个

signal(next);

customer()

wait(waitmutex);

//互斥使用变量waitnum

if(waitnum==0)//如果是第一个顾客就唤醒理发师

singal(customer);

signal(waitmutex);

else

wait(waitcustomer);

//如果不是第一个顾客就坐在凳子上等,空闲凳子减1

waitnum++;

//等待人数加1

等待;

wait(next);

//等待理发师下一个的信号

去理发;

waitnum--;

//等待的顾客数目减1

signal(waitcustomer);

//空闲凳子加1

理完发离开;

4.现有四个进程R1、R2、W1、W2,它们共享可以存放一个数的缓冲器B。

进程R1每次把来自键盘的一个数存入缓冲器B中,供进程W1打印输出;

进程R2每次从磁盘上读一个数存放到缓冲器B中,供进程W2打印输出。

为防止数据的丢失和重复打印,问怎样用信号量操作来协调这四个进程的并发执行。

为防止数据的丢失和重复打印,必须在缓冲区中数据打印后再放新的数据。

需设互斥信号量mutex保障对缓冲区的互斥使用。

进程R1数据供进程W1使用,两者之间是同步关系,需设同步信号量s1。

同理需为进程R2和W2设同步信号量s1。

semaphoremutex,s1,s2;

s1.value=0;

s2.value=0;

R1()

从键盘读取数据;

wait(mutex);

//放数据前先要申请缓冲区的使用权

将数据存入缓冲区B;

signal(s1);

//发信号通知W1去打印数据

R2()

从磁盘读取数据;

signal(s2);

W1()

wait(s1);

//等待信号去取数据

从缓冲区B读取数据;

打印数据;

signal(mutex);

//数据打印过后再释放缓冲区的使用权

W2()

wai(s2);

5.如果有三个进程R、W1、W2共享一个缓冲器B,而B中每次只能存放一个数。

当缓冲器中无数时,进程R可以将从输入设备上读入的数存放到缓冲器中。

若存放到缓冲器中的是奇数,则允许进程W1将其取出打印;

若存放到缓冲器中的是偶数,则允许进程W2将其取出打印。

同时规定:

进程R必须等缓冲区中的数被取出打印后才能再存放一个数;

进程W1或W2对每次存入缓冲器的数只能打印一次;

W1和W2都不能从空缓冲中取数。

写出这三个并发进程能正确工作的程序。

设互斥信号量mutex来保证缓冲区的互斥使用。

设同步信号量s1、s2来保证R进程同W1、W2进程之间的同步关系。

semaphoremutex,s1,s2;

mutex.value=1;

s1.value=0;

s2.value=0;

R()

从输入设备读取数据i;

//申请打印机的使用权

将数据放入缓冲区B;

if(i%2!

=0)//如果数据为奇数,给W1发信号

else//如果数据为奇数,给W2发信号

W1()

//等待缓冲区满的信号

从缓冲区B中读取数据;

//释放缓冲区的使用权

W2()

wait(s2);

习题四答案

一、单项选择题

题号

答案

B

1.终端型

2.n*(m-1)+1或者n*m+1-n

3.上下文切换程序

4.对换功能

5.平均周转时间

6.高响应比优先

7.抢占式

8.源分配图不可完全约简

9.饥饿

10.在忙式等待条件下发生的饥饿,称为活锁。

1.作业调度的影响因素有哪些?

作业调度中应该考虑的因素主要有以下几方面。

公平性

(2)均衡使用资源(3)提高系统吞吐量(4)平衡系统和用户需求

2.在批处理系统、分时系统和实时系统中,各采用哪几种迚程(作业)调度算法?

批处理系统的调度算法:

短作业优先、优先权、高响应比优先、多级反馈队列调度算法。

分时系统的调度算法:

时间片轮转法。

实时系统的调度算法:

最早截止时间优先即EDF、最低松弛度优先即LLF算法。

3.在时间片轮转法中,应如何确定时间片的大小?

时间片的长短通常由以下4个因素确定:

(1)系统响应时间

(2)就绪队列进程数目(3)进程转换时间(4)CPU运行指令速度

4.在一个具有两个作业的批处理系统中,作业调度采用短作业优先的调度算法,进程调度采用以优先数为基础的抢占式调度算法,有如表所示的作业序列(表中所列作业优先数即为进程优先数,数值越小优先级越高)

列出所有作业进入内存时间以及结束时间

计算平均周转时间

作业

到达时间

估计运行时间

优先数

10:

00

40分钟

20

30分钟

30

50分钟

50

20分钟

题中的每个作业运行将经历两级调度,作业调度和进程调度。

作业调度采用短作业优先调度算法,而进程调度采用基于优先数的抢占式调度算法,即高优先级的进程可以抢占处理机。

此外,只有在作业调度程序将作业装入内存后,在内存的作业才能参与进程调度,并且,本题中的批处理系统是两道作业系统,即内存中最多允许有两道作业。

本题的执行情况如下:

①10:

00时,作业A到达并投入运行。

②10:

20时,作业B到达且优先级高于作业A,故作业B投入运行而作业A进入就绪队列。

③10:

30时,作业C到达,因内存中已有两道作业,故作业C进入后备队列等待调度进入内存。

④10:

50时,作业B运行结束,作业D到达,因按短作业优先调度测略,作业D被装入内存进入就绪队列,而作业A优先级高于作业D,故作业A投入运行。

⑤11:

10时,作业A运行结束,作业C被调入内存,且作业C优先级高于作业D,故作业C投入运行⑥12:

00,作业C运行结束,作业D投入运行。

⑦12:

20时,作业D运行结束。

由上述分析可得出所有作业进入内存时的时间以及结束时间。

进入内存时间

结束时间

11:

10:

11:

12:

(2)各作业执行的周转时间为:

作业A:

70分钟

作业B:

作业C:

90分钟

作业D:

作业的平均周转时间为T=(70+30+90+90)/4=70分钟

5.在银行家算法中,若系统中出现如表4-26所示的资源分配情况:

表4-26系统资源分配情况

Allocation

Need

Available

ABCD

ABCD

P0

0032

0012

1622

P1

1000

1750

P2

1354

2356

P3

0332

0652

P4

0014

0656

该系统是否安全?

若进程P2此时提出资源申请(1,2,2,2),系统能否将资源分配给它?

为什么?

⑴该状态是安全的,因为存在一个安全序列<

P0P3P4P1P2>

下表为该时刻的安全序列表。

Work

Work+Allocation

Finish

1654

1987

19911

29911

0333

1654

1987

19911

29911

3121417

true

⑵若进程P2提出请求Request(1,2,2,2)后,系统不能将资源分配给它,若分配给进程P2,系统还剩的资源情况为(0,4,0,0),此时系统中的资源将无法满足任何一个进程的资源请求,从而导致系统进入不安全状态,容易引起死锁的发生。

习题五答案

11

1.物理、逻辑

2.紧凑

3.最佳置换算法、先进先出置换算法、最近最久未用置换算法

4.实现逻辑XXX到物理XXX的转换

5.可重入的

6.静态链接、运行时动态链接

1.

(1)有2个空闲分区,第1个从XXX280KB开始,容量20KB,第2个从XXX400KB开始,容量112KB。

(2)有2个空闲分区,第1个从XXX210KB开始,容量90KB,第2个从XXX470KB开始,容量42KB。

(3)若申请序列加上req(90KB),采用首次适应算法,仍有2个空闲分区,第1个从XXX280KB开始,容量20KB,第2个从XXX490KB开始,容量22KB。

采用最佳适应算法,有1个空闲分区,从XXX470KB开始,容量42KB。

2.逻辑XXX对应的物理XXX为BF6A。

3.共产生4次缺页中断,如下所示。

页面访问次序

页框

缺页标志

F

4.当页框数是3时,缺页中断次数为7。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高中教育 > 初中教育

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2