计算机操作系统作业汇总清华大学出版社.docx

上传人:b****6 文档编号:3340902 上传时间:2022-11-21 格式:DOCX 页数:22 大小:29.40KB
下载 相关 举报
计算机操作系统作业汇总清华大学出版社.docx_第1页
第1页 / 共22页
计算机操作系统作业汇总清华大学出版社.docx_第2页
第2页 / 共22页
计算机操作系统作业汇总清华大学出版社.docx_第3页
第3页 / 共22页
计算机操作系统作业汇总清华大学出版社.docx_第4页
第4页 / 共22页
计算机操作系统作业汇总清华大学出版社.docx_第5页
第5页 / 共22页
点击查看更多>>
下载资源
资源描述

计算机操作系统作业汇总清华大学出版社.docx

《计算机操作系统作业汇总清华大学出版社.docx》由会员分享,可在线阅读,更多相关《计算机操作系统作业汇总清华大学出版社.docx(22页珍藏版)》请在冰豆网上搜索。

计算机操作系统作业汇总清华大学出版社.docx

计算机操作系统作业汇总清华大学出版社

思考与练习题(第一章)

1.

欧阳歌谷(2021.02.01)

2.什么是操纵系统?

它的主要功能是什么?

答:

操纵系统是控制和管理计算机的软、硬件资源,合理地组织计算机的工作流程,以便利用户使用的法度集合。

其主要功能包含进程管理功能、存储管理功能、设备管理功能和文件管理功能。

3.什么是多道法度设计技术?

多道法度设计技术的主要特点是什么?

答:

把多个自力的法度同时放入内存,使它们共享系统中的资源。

       

(1)多道,即计算机内存中同时放多道相互自力的法度。

 

(2)宏观上并行,是指同时进入系统的多道法度都处于运行过程中。

 

(3)微观上串行,是指在单道处理机环境下,内存中的多道法度轮流占用CPU,交

替执行。

4.批处理操纵系统是怎样的一种操纵系统?

它的特点是什么?

答:

批处理操纵系统是一种基本的操纵系统类型。

在该系统中,用户的作业(包含法度、数据及法度的处理步调)被成批地输入到计算机中,然后在操纵系统的控制下,用户的作业自动的执行。

 

特点:

单道:

(1)自动性。

(2)顺序性。

(3)单道性。

多道:

(1)多道性。

(2)无序性。

(3)调度性。

5.什么是分时操纵系统?

什么是实时操纵系统?

试从交互性、及时性、自力性、多路性和可靠性几个方面比较分时操纵系统和实时操纵系统。

答:

分时操纵系统:

计算机能够同时为多个终端用户办事,并且能在很短的时间内响应用户的要求。

实时操纵系统:

对外部输入的信息,实时系统能够在规定的时间内处理完毕并做出反响。

(1)多路性:

分时系统是为多个终端用户提供办事,实时系统的多路性主要表示在经常对多路的现场信息进行收集以及多个对象或多个执行机构进行控制。

(2)自力性:

每个终端向实时系统提出办事请求时,是彼此自力的工作、互不干扰。

(3)及时性:

实时信息处理系统与分时系统对及时性的要求类似,都以人们能够接受

的等待时间来确定。

实时控制系统对一时性的要求更高,是以控制对象所要求的开始截止时间或完成截止时间来确定的。

6.实时操纵系统分为哪两种类型?

答:

(1)实时控制系统 

(2)实时信息处理系统。

7.操纵系统的主要特征是什么?

答:

(1)并发性 

(2)共享性 (3)虚拟性 (4)不确定性。

8.操纵系统与用户的接口有几种?

它们各自用在什么场合?

答:

两种,命令接口和法度接口。

命令接口:

分为联机命令接口、脱机命令接口和图形用户命令接口。

便利用户直接控

制自己的作业而提供的接口。

法度接口:

又称为系统调用,是为用户能在法度一级拜访操纵系统功能而设置的,是用户法度取得操纵系统办事的唯一途径。

9.“操纵系统是控制硬件的软件”这一说法确切吗?

为什么?

答:

不正确,因为操纵系统不但控制硬件,同时它还控制计算机的软件。

10.假设内存中有三道法度A、B、C,它们按A→B→C的先后次第执行,它们进行“计算”和“I/O操纵”的时间如表12所示,假设三道法度使用相同的I/O设备。

表12三道法度的操纵时间

操纵

法度

计算

I/O操纵

计算

A

20

30

10

B

30

50

20

C

20

20

10

(1)试画出单道运行时三道法度的时间关系图,并计算完成三道法度要花几多时间。

(2)试画出多道运行时三道法度的时间关系图,并计算完成三道法度要花几多时间。

答:

单道运行三道法度要花时间为200。

(2)

多道运行三道法度要花时间为130。

10.将下列左右两列词语连接起来形成意义最恰当的5对。

11.选择一个现代操纵系统,查找和阅读相关的技术资料,写一篇关于该操纵系统如何进行内存管理、存储管理、设备管理和文件管理的文章。

Windows7是由微软公司开发的,具有革命性变更的操纵系统。

该系统旨在让人们的日常电脑操纵更加简单和快捷,为人们提供高效易行的工作环境。

Win7可供家庭及商业工作环境、笔记本电脑、平板电脑、多媒体中心等使用,下面我将介绍Win7系统是如何进行内存管理、存储管理、设备管理和文件管理的。

Win7的内存管理:

Win7会尽可能的使用“可用”的内存空间来缓存用户的预存数据,通过“超等预读”来确定哪些操纵是用户常做的,以及把这些需要的数据放到“可用”内存中,这样在用户执行操纵时就可以直接从内存读取数据而不必先从硬盘读到内存了。

这样,Win7就会把年夜内存剩余的空间利用上了,在你进行操纵时候会有“飞速”的感觉,这就是说Win7越用越快的原因。

固然了,这部分空间当有新的需要时候它会即时释放,这超等预读这功能是XP所没有的,从vista开始引入,但因为那时年夜家电脑内存普遍不年夜,所以没阐扬出几多效果,到了Win7时代,经过完善后终于年夜放异彩。

Win7的存储管理:

存储管理要管理的资源是内存储器(简称内存)。

它的任务是便利用户使用内存,提高内存的利用率以及从逻辑上扩充内存。

Win7的设备管理:

设备管理是操纵系统中最庞杂、最琐碎的部分。

Win7的设备管理器是该操纵系统的一个重要应用法度,通过它可以便利地对计算机硬件进行管理。

Win7的文件管理:

win7的文件管理是通过资源管理器,通过它可以便利地显示和操纵计算机中的文件资源。

其中包含文件、文件夹和文件系统,win7支持FAT32、NTFS和exFAT三种格式文件系统。

思考与练习题(第二章)

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

为了实现并发进程之间的合作和协调以及包管系统的平安,操纵系统在进程管理方面要做哪些工作?

答:

(1)为了从变更的角度静态地阐发研究可以并发执行的法度,真实地反响系统的自力性、并发性、静态性和相互制约,操纵系统中就不克不及不引入“进程”的概念;

(2)进程管理的职能就是对系统中的全部进程实行有效地管理,其主要表示是对一个进程进行创建、撤消以及在某些进程状态之间的转换控制。

为了避免操纵系统及其关键的数据结构(如PCB等)受到用户法度有意或无意的破坏,通常将处理机的执行状态分红核心态和用户态,通经常使用户的法度会在用户态下运行,不克不及拜访操纵系统的区域,从而避免了用户法度对操纵系统的破坏。

2.试描述以后正在运行的进程状态修改时,操纵系统进行进程切换的步调。

答:

(1)就绪状态→运行状态。

处于就绪状态的进程具备了运行的条件,但未能获得处理机,故没有运行。

(2)运行状态→就绪状态。

正在运行的进程,由于规定的时间片用完而被暂停执行,该进程就会从运行状态转变成绩绪状态。

(3)运行状态→阻塞状态。

处于运行状态的进程,除因为时间片用完而暂停执行外还有可能由于系统中的其他因素的影响而不克不及继续执行。

3.现代操纵系统一般都提供多任务的环境,试回答以下问题。

(1)为支持多进程的并发执行,系统必须建立哪些关于进程的数据结构?

(2)为支持进程的状态变迁,系统至少应该供哪些进程控制原语?

(3)当进程的状态变迁时,相应的数据结构产生变更吗?

答:

(1)进程的阻塞与唤醒原语和进程的挂起与激活原语。

(2)系统必须建立进程控制块(ProcessControlBlock,PCB)。

(3)会根据状态的变迁产生相应的变更。

例如将进程PCB中进程的状态从阻塞状态改成就绪状态,并将进程从阻塞队列摘下,投入到就绪队列中。

4.什么是进程控制块?

从进程管理、中断处理、进程通信、文件管理、设备管理及存储管理的角度设计进程控制块应该包含哪些内容。

答:

(1)用来描述进程自己的特性、进程的状态、进程的调度信息及对资源的占有情况等的一个数据结构是进程控制块。

(2)应该包含进程描述信息、处理机状态信息、进程调度信息、进程控制和资源占用信息。

5.假设系统就绪队列中有10个进程,这10个进程轮换执行,每隔300ms轮换一次,CPU在进程切换时所花费的时间是10ms,试问系统在进程切换上的开销占系统整个时间的比例是几多?

答:

(10*10)/[(300+10)*10]=3.2%

6.试述线程的特点及其与进程之间的关系。

答:

(1)特点:

线程是进程的一个实体,是被自力调度和分拨的基本单位;线程之间的通信要比进程之间的通信便利的多;同一进程内的线程切换也因为线程的轻装而便利的多。

(2)线程与进程的关系:

线程是进程的一部分,是进程内的一个实体;一个进程可以有多个线程,但至少必须有一个线程。

7.根据图218,回答以下问题。

(1)进程产生状态变迁1、3、4、6、7的原因。

(2)系统中经常由于某一进程的状态变迁引起另一进程也产生状态变迁,这种变迁称为因果变迁。

下述变迁3→2,4→5,7→2,3→6是否为因果变迁?

试说明原因。

(3)根据图218所示的进程状态转换图说明该系统CPU调度的战略和效果。

答:

(1)变迁1原因:

创建进程后,将其按高优先级拔出就绪队列;

变迁3原因:

进程请求I/O或等待某事件而阻塞;

变迁4原因:

时间片用完;

变迁6原因:

进程I/O完成或时间完成;

变迁7原因:

进程完成而退出。

(2)3→2是因果变迁,当一个进程从运行态变成阻塞态时,此时CPU空闲,系统首先到高优先级队列中选择一个进程。

4→5是因果变迁,当一个进程运行完毕时,此时CPU空闲,系统首先到高优先级队列中选择进程,但如果高优先级队列为空,则从低优先队列中选择一个进程。

7→2是因果变迁,当一个进程运行完毕时,CPU空闲,系统首先到高优先级队列中选择一个进程。

3→6不是因果变迁。

一个进程阻塞时由于自身的原因而产生的,和另一个进程等待的时间达到没有因果关系。

(3)战略:

当进程调度时,首先从高优先级就绪队列选择一个进程,付与它的时间片为100ms。

如果高优先级就绪队列为空,则从低优先级就绪队列选择进程,并且付与该进程的时间片为500ms。

效果:

在100ms运行完毕的短进程在运行完毕后就退出系统;I/O量年夜的进程在I/O完成后就会进入高优先级就绪队列;在100ms运行不完的进程就会进入低优先级就绪队列,当高优先级就绪队列为空时,被再次执行,给予年夜时间片500ms。

这种战略减少了进程切换次数,减少了系统开销,但年夜法度因进入低优先级,会运行时间较长。

8.回答以下问题。

(1)若系统中没有运行进程,是否一定没有就绪进程?

为什么?

(2)若系统中既没有运行进程,也没有就绪进程,系统中是否就没有阻塞进程?

请解释。

(3)如果系统采取优先级调度战略,运行的进程是否一定是系统中优先级最高的进程?

为什么?

答:

(1)是,因为一旦系统中没有运行法度,就会从就绪队列中调度进程,只有当就绪队列为空时,系统中才没有进程。

(2)不一定,当运行的法度都因为请求I/O或等待事件时而进入阻塞,系统中就没有就绪进程。

(3)不一定,若优先级高的进程进入阻塞状态时,并且优先级高的就绪队列里没有等待的进程,这时就会调度优先级低的就绪队列的进程。

9.假如有以下法度段,回答下面的问题。

S1:

a=3x;

S2:

b=2*a;

S3:

c=5+a;

(1)并发法度执行的Bernstein条件是什么?

(2)试画图暗示它们执行时的先后次第。

(3)利用Bernstein条件证明,S1、S2和S3哪两个可以并发执行,哪两个不克不及。

答:

(1)S1和S2并发执行的条件是当且仅当R(S1)∩W(S2)∪R(S2)∩W(S1)∪W(S1)∩W(S2)={}。

(2)

(3)因为W(S1)∩R(S2)={a}, 所以S1和S2不克不及并发执行;

W(S1)∩R(S2)={a}, 所以S1和S3也不克不及并发执行;

R(S2)∩W(S3)∪R(S3)∩W(S2)∪W(S2)∩W(S3)={},所以S2和S3可以并发执行。

思考与练习题(第三章)

1.以下进程之间存在相互制约关系吗?

若存在,是什么制约关系?

为什么?

(1)几个同学去图书馆借同一本书。

答:

存在相互制约关系,是互斥关系;因为他们要借同一本书,存在竞争问题,一本书只可能被一个人借到,所以是互斥关系。

(2)篮球角逐中两队同学争抢篮板球。

答:

存在相互制约关系,是互斥关系;因为两队同学争抢同一个篮板,只能被一个人抢到,所以存在互斥关系。

(3)果汁流水线生产中捣碎、消毒、灌装、装箱等各道工序。

答:

存在相互制约关系,是同步关系;每道工序都有自己特定的任务,前一道工序完成才干进行下一道工序。

(4)商品的入库和出库。

答:

存在相互制约关系,是同步关系;因为商品出库可以为入库提供空间。

(5)工人做工与农民种粮。

答:

不存在相互制约关系。

2.在操纵系统中引入管程的目的是什么?

条件变量的作用是什么?

答:

用信号量可以实现进程之间的同步和互斥,但要设置很多信号量,使用年夜量的P、V操纵,还要仔细安插多个P操纵的排列次第,不然将呈现毛病的结果或是死锁现象。

为了解决这些问题引进了管程;

条件变量的作用是使进程不但能被挂起,并且当条件满足且管程再次可用时,可以恢复该进程并允许它在挂起点重新进入管程。

3.说明P、V操纵为什么要设计成原语。

答:

因为P操纵和V操纵都是对信号量的操纵,是为了实现进程同步和互斥的,互斥要解决的就是如何在一个进程修改共享内存区时不让操纵系统切换给另一个同样拜访这块共享内存区的进程的问题,所以在执行P、V操纵时一定不克不及让进程切换,所以必须采取原语。

4.设有一个售票年夜厅可容纳200人购票。

如果厅内缺乏200人则允许进入,超出则在厅外等待;售票员某时只能给一个购票者办事,购票者买完票后就离开。

(1)购票者之间是同步关系还是互斥关系?

答:

互斥关系。

(2)用P、V操纵描述购票者的工作过程。

答:

semaphoremutex=1;

semaphoreempty=200;

semaphorewaiting=0;

voidpurchase()

{

P(waiting);

P(mutex);

buyingtickets;

V(mutex);

V(empty);

}

voidwaiting()

{

P(empty);

waiting;

waiting++;

}

5.进程之间的关系如图316所示,试用P、V操纵描述它们之间的同步。

答:

semaphorea=b=c=d=e=f=g=0;

{S1,V(a),V(b)};

{P(a),S2,V(c)};

{P(b),S3,V(d),V(e)};

{P(d),S4,V(f)};

{P(e),S5,V(g)};

{P(c),P(f),P(g),S6};

6.有4个进程P1、P2、P3和P4共享一个缓冲区,进程P1向缓冲区中存入消息,进程P2、P3和P4从缓冲区中取消息,要求发送者必须等三个进程都取过本条消息后才干发送下一条消息。

缓冲区内每次只能容纳一个消息,用P、V操纵描述四个进程存取消息的情况。

答:

semaphorep1=0;

semaphorep2,p3,p4=1;

semaphorecout=0;

semaphoremutex=1;

voidmain()

{

P(p2);P(p3);P(p4);

V(cout);

}

writep1()

{

P(p1);P(meux);P(cout);

存入消息;

V(p1);V(metux);

}

readp2()

{

P(mutex);P(p1);

取消息;

V(p1);V(p2);V(metux);

}

readp3()

{

P(mutex);P(p1);

取消息;

V(p1);V(p3);V(metux);

}

readp4()

{

P(mutex);P(p1);

取消息;

V(p1);V(p4);V(metux);

}

7.阐发生产者—消费者问题中多个P操纵倒置引起的后果。

答:

semaphoremutex=1;

semaphoreempty=n;

semaphorefull=0;

inti,j;

ITEMbuffer[n];

ITEMdata_p,data_c;

voidproducer()/*生产者进程*/

{

while(true)

{

produceanitemindata_p;

P(mutex);

P(empty);

buffer[i]=data_p;

i=(i+1)%n;

V(mutex);

V(full);

}

}

voidconsumer()/*消费者进程*/

{

while(true)

{

P(full);

P(mutex);

data_c=buffer[j];

j=(j+1)%n;

V(mutex);

V(empty);

consumetheitemindata_c;

}

}

若把生产者进程的P操纵倒置,消费者进程的P操纵倒置,则生产者进程执行到V(mutex)时,消费者就可以执行P(mutex)但由于full=0,消费者进程不成执行P(full);当生产者进程执行完V(full)后,full=1,但由于mutex=0,消费者进程无法执行,造成死锁。

8.读者—写者问题中写者优先算法的实现。

答:

semaphoreWmutex,Rmutex=1;

intRcount=0;

semaphoremutex=1

voidreader()/*读者进程*/

{

while(true)

{

P(mutex);

P(Rmutex);

If(Rcount==0)P(Wmutex);

Rcount=Rcount+1;

V(Rmutex);

V(mutex);

…;

read;/*执行读操纵*/

…;

P(Rmutex);

Rcount=Rcount1;

if(Rcount==0)V(Wmutex);

V(Rmutex);

}

}

voidwriter()/*写者进程*/

{

while(true)

{

P(mutex);

P(Wmutex);

…;

write;/*执行写操纵*/

…;

V(Wmutex);

V(mutex);

}

}

9.写一个用信号量解决哲学家进餐问题又不产生死锁的算法。

答:

semaphorechopstick[5]={1,1,1,1,1};

semaphoremutex=1;

voidphilosopher()/*哲学家进餐*/

{

while(true)

{

P(mutex);

P(chopstick[i]);

P(chopstick[(i+1)%5]);

V(mutex);

…;

eat;/*进餐*/

…;

V(chopstick[i]);

V(chopstick[(i+1)%5]);

…;

think;/*思考*/

…;

}

}

10.一个文件可由若干个不合的进程所共享,每个进程具有唯一的编号。

假定文件可由满足下列限制的若干个进程同时拜访,并发拜访该文件的那些进程的编号的总和不得年夜于n,设计一个协调对该文件拜访的管程。

答:

monitormonitor_PC;

intidentifier[n]={0};

voidvisit

{

for(i=0;i

{

intm=0;

m=m+identifier[i];

if(m<=n)拜访文件;

elsebreak;

}

}

11.用管程解决读者——写者问题,并采取公平原则。

答:

monitormonitor_PC;

intrecount=0;

inti;

conditionwrite,read=1;

voidreader()

{

cwait(write);

while(true)

{

cwait(read);

i=0;

…;

read;

…;

csignal(read);

}

csignal(write);

}

voidwriter()

{

while(true)

{

cwait(write);

i=1;

…;

write;

…;

csignal(write);

}

}

voidmanage()

{

if(i=0)monitor_PC.writer();

if(i=1)monitor_PC.reader();

}

思考与练习题(第四章)

1.某进程被唤醒后立即投入运行,能说明该系统采取的是可剥夺调度算法吗?

答:

不克不及说明,因为如果现在就绪队列中没有进程,那么唤醒的进程会立刻投入运行。

2.在哲学家进餐问题中,如果将先拿起左边筷子的哲学家称为左撇子,将先拿起右边筷子的哲学家称为右撇子。

请说明在同时存在左、右撇子的情况下,任何的就坐安插都不克不及产生死锁。

答:

任何的就坐安插都不会构成环路,这就合适避免死锁的条件,所以不会产生死锁。

3.系统中有5个资源被4个进程所共享,如果每个进程最多需要2个这种资源,试问系统是否会产生锁死?

答:

不会产生死锁。

由于资源数年夜于进程数,所以系统中总会有一个进程获得资源数年夜于即是2,该进程已经满足了它的最年夜需求,当它运行完毕后会把它占有的资源归还给系统,此时其余3个进程也能满足最年夜需求而顺利运行完毕。

因此系统不会产生死锁。

4.计算机系统有8台磁带机,由N个进程竞争使用,每个进程最多需要3台。

问:

当N为几多时,系统没有死锁的危险?

答:

当N<4时,系统没有死锁的危险。

因为当n<3时,每个进程分派2台磁带机,还有磁带机剩余,那么当其中的一个进程获得剩余的磁带机则可运行,运行结束后会释放磁带机,供其他进程使用,系统不会有死锁的危险;当n为4时,每台分派2台时没有剩余,则会产生死锁,当n>5时同样会死锁。

5.假设系统有5个进程,它们的达到时间和办事时间如表48所示。

新进程(没有运行过的进程)与老进程(运行过的进程)的条件相同时,假定系统选新进程运行。

表48进程情况

进程名

达到时间

办事时间

A

0

3

B

2

6

C

4

4

D

6

5

E

8

2

若按先来先办事(FCFS)、时间片轮转法(时间片q=1)、短进程优先(SPN)、最短剩余时间优先(SRT,时间片q=1)、响应比高者优先(HRRN)及多级反响队列(MFQ,第1个队列的时间片为1,第i(i>1)个队列的时间片q=2(i1))算法进行CPU调度,请给出各个进程的完成时间、周转时间、带权周转时间及所有进程的平均周转时间和平均带权周转时间。

答:

6.设系统中有5个进程P1、P2、P3、P4、P5,有3种类型的资源A、B和C,其中A资源的数量是17,B资源的数量是5,C资源的数量是20,T0时刻系统状态如表49所示。

表49T0时刻系统状态

进程

已分派资源数量

最年夜资源需求量

仍然需求资源数

A

B

C

A

B

C

A

B

C

P1

2

1

2

5

5

9

3

4

7

P2

4

0

2

5

3

6

1

3

4

P3

4

0

5

4

0

11

0

0

6

P4

2

0

4

4

2

5

2

2

1

P5

3

1

4

4

2

4

1

1

0

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

当前位置:首页 > 小学教育 > 语文

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1