搜档网
当前位置:搜档网 › 最新操作系统第三章作业答案

最新操作系统第三章作业答案

最新操作系统第三章作业答案
最新操作系统第三章作业答案

第三章作业

1.下进程之间存在相互制约关系吗?若存在,是什么制约关系?为什么?

①几个同学去图书馆借同一本书。

答:互斥,只能有一个借到

②篮球比赛中两队同学争抢篮板球。

答:互斥,只能有一个抢到

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

答:同步时进行,相互不影响

④商品的入库出库。

答:同步时进行,相互无影响

⑤工人做工与农民种粮。

答:同步进行,相互无影响

2.在操作系统中引入管程的目的是什么?条件变量的作用是什么?

答:引入管城是为了实现进程的同步和互斥。

条件变量的作用是:设置多个信号量,使用大量的P、V操作,还要仔细安排多个P操作的排列次序,否则会出现错误的结果或出现死锁现象。

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

答:用信号量S表示共享资源,其初值为1表示有一个资源。设有两个进程申请该资源,若其中一个进程先执行P操作。P操作中的减1操作有3条指令组成:去S送寄存器R;R-1送S。若P操作不用原语实现,在执行了前述三条指令中的2条,即还未执行R 送S时(此时S值仍为1),进程被剥夺CPU,另一个进程执行也要执行P操作,执行后S的值为0,导致信号量的值错误。正确的结果是两个进程执行完P操作后,信号量S的值为-1,进程阻塞。

4.设有一个售票大厅,可容纳200人购票。如果厅内不足200人则允许进入,超过则在厅外等候;售票员某时只能给一个购票者服务,购票者买完票后就离开。试问:

①购票者之间是同步关系还是互斥关系?

答:互斥关系

②用P、V操作描述购票者的工作过程。

如下:

semaphore mutex=1;

semaphore full=200;

void customer()

{ p(metux);

P(full);

Buying

V(mutex);

V(full);

}

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

如下:

设:s1→s2为a s1→s3为b s2→s6为c s3→s4 为d s3→s5为e s4→s6为f s5→s6为g

semaphore a,b,c,d,g,f,g=0,0,0,0,0,0,0;

{ s1;v(a);v(b);}

{ p(a);s2;v(a);}

{ p(b);s3;v(b);}

{ p(d);s4;v(d);}

{ p(e);s5;v(e);}

{ p(c);s6;}

{ p(f);p(g);s6}

6.有4个进程P1、P2、P3、P4共享一个缓冲区,进程P1向缓冲区存入消息,进程P2、

P3、P4从缓冲区中去消息,要求发送者必须等三个进程都去过本消息后才能发送下

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

况。

如下:

Semaphore: metux=0;

{ p1;v(metux);}

{ p(metux); { p(metux); { p(metux);

P2; p3; p4;

V(metux); v(metux); v(metux);

} } }

7.分析生产者——消费者问题中多个P操作颠倒引起的后果。

semaphore mutex=1;

semaphore empty=n;

semaphore full=0;

int i,j;

ITEM buffer[n];

ITEM data_p,data_c;

void producer()

{

While(ture)

{

Produce an item in data_p;

P(empty);

P(mutex);

buffer[i]=data_p;

i=(i+1)%n;

v(empty);

v(full);

}

Void consumer()

{

While(ture)

{

P(full);

P(mutex);

data_c= buffer[j];

j=(j+1)%n;

v(metux);

v(empty);

coumer the item in data_c;

}

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

semaphore Wmutex,Rmutex=1;

int Rcount=0;

semaphore mutex=1

void reader()void writer(){while(true) { while(true)

{P(mutex); {P(mutex);

P(Rmutex); P(wmutex);

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

Rcount=Rcount+1 ; 写;

V(Rmutex);

V(mutex); V(Wmutex);

V(mutex);

读; }

}

P(Rmutex);

Rcount=Rcount-1;

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

V(Rmutex);}

}

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

如下:

Semaphore chopstick[5]={1,1,1,1,1};

Semaphore mutex;

Void profession(int n)

{

While (ture)

{ p(chopstick[i];

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

p(metux);

进餐;

V(chopstick[i];

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

思考;

V(metux);

}

}

10.一个文件可有若干个不同的进程所共享,每个进程具有唯一的编号。假定文件可有满足下列限制的若干个不同的进程同时访问,并发访问该文件的哪些进程的编号的总和不得大于n,设计一个协调对该文件访问的管程。

不会做这道题

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

不会做这道题

伊敏河

辉河

鄂依那河

威特很高勒河

锡尼很高勒河

宁高勒河

免渡河

乌尼日河

克鲁伦河

呼仑湖

额尔古纳河

莫尔格勒高勒河

乌尔逊河

贝尔湖

哈拉哈河

根河

图里河

额根河

得耳布干河

莫尔道嘎河

古纳河

激流河

安格林河

敖鲁古雅河

阿龙山河

金河

阿巴河

恩和哈达河

黑龙江

北极村河

额木尔河(克波河、大林河) 古莲河

老槽河

二龙河

大林河

盘古河

西尔根气河

小西尔根气河

呼玛河

阿吉羊河

卡马兰河

亚里河

呼玛尔河

操作系统第三章作业答案

第三章 一、问答题 1、某系统采用响应比高者优先的处理机调度算法,某个时刻根据用户要求创建了一个进程P,进程P在其存在过程中依次经历了: 进程调度选中了进程P占用处理机运行(就绪—>运行),进程P运行中提出资源申请,要求增加主存使用量,没有得到(运行—>阻塞); 进程等待一段时间后得到主存(阻塞—>就绪); 进程调度再次选中了进程P占用处理机运行(就绪—>运行); 有紧急进程Q进入,系统停止进程P的运行,将处理机分配进程Q(运行—>就绪); 进程Q运行完,进程调度再次选中了进程P占用处理机运行(就绪—>运行);进程P运行完。 请分析进程P在其整个生命过程中的状态变化。 2、何谓进程,它与程序有哪些异同点?61 3、引起创建进程的事件通常有哪些?69 4、简述时间片轮转调度算的基本思想。大多数时间片轮转调度算法使用一个固定大小的时间片,请给出选择小时间片的理由。然后,再给出选择大时间片的理由。75 5、进程有哪几种基本状态?试举出使进程状态发生变化的事件并描绘它的状态转换图。63 6、进程创建、撤销、唤醒和阻塞原语的流程69、70、71 7、进程控制块的作用是什么?它主要包括哪几部分内容?65 8、用户级线程与内核级线程的区别是什么?81 9、PCB中包含哪些信息?进程状态属于哪类信息?65 10、列举引起进程创建和撤销的事件69、70 11、试比较进程和线程的区别。81 12、什么是操作系统的内核?67 13、简述操作系统的三级调度(简述其各级调度的基本功能即可)。72

二、计算题 1、就绪队列中有4个进程P1,P2,P3,P4同时进入就绪队列,它们进入就绪队列2秒之后开始进程调度,它们需要的处理器时间如表所示。 忽略进行调度等所花费的时间,且进程执行过程中不会发生阻塞,请回答下列问题:分别写出采用时间片轮转调度算法(时间片为4秒)、响应比高者优先调度算法选中进程执行的次序。 答: 时间片轮转调度算法:P1,P2,P3,P4 ,P1,P2,P4,P1,P2,P2 响应比高者优先调度算法:P3,P4,P1,P2 2、在某计算机系统中,时钟以固定的频率中断CPU,以增加日历计数或控制系统中的一些定时操作,时钟中断处理程序每次执行的时间为2ms(包括进程切换开销)。若时钟中断频率为60Hz,试问CPU用于时钟中断处理的时间比率为多少?答: 时钟中断频率为60Hz,所以时钟周期为:1/60s=50/3ms 在每个时钟周期中,CPU要用2ms时间执行中断程序,所以CPU用于时钟中断处理的时间比率为:2/(50/3)=6/50=12% 3、若程序Pa,Pb和Pc单独执行时间分别Ta,Tb和Tc,Ta=1小时,Tb=1.5小时,Tc=2小时,其中处理机工作时间分别为Sa=10分钟,Sb=15分钟,Sc=35分钟。如果采用多道程序设计的方法,让Pa,Pb和Pc并行工作,假定处理机利用率达到60%,另加20分钟系统开销,请问系统效率能提高百分之几? 答: Ta,Tb和Tc并行工作共用CPU时间: (10+15+35)/60%=100(3分) 系统效率提高: [(60+90+120)-(100+20)]/(60+90+120)*100% =(270-120)/270*100%

操作系统课后答案

第一章操作系统引论 思考与练习题 1.什么是操作系统它的主要功能是什么 2.什么是多道程序设计技术多道程序设计技术的主要特点是什么 3.批处理系统是怎样的一种操作系统它的特点是什么 4.什么是分时系统什么是实时系统试从交互性,及时性,独立性,多路性,可靠性等几个 方面比较分时系统和实施系统。 5.实时系统分为哪俩种类型 6.操作系统主要特征是什么 7.操作系统也用户的接口有几种它们各自用在什么场合 8.“操作系统是控制硬件的软件”这一说法确切吗为什么 9.设内存中有三道程序,A,B,C,它们按A~B~C的先后顺序执行,它们进行“计算”和“I/o 操作”的时间如表1-2所示,假设三道程序使用相同的I/O设备。 (1)试画出单道运行时三道程序的时间关系图,并计算完成三道程序要花多少时间。 (2)试画出多道运行时三道程序的时间关系图,并计算完成三道程序要花多少时间。10.将下列左右两列词连接起来形成意义最恰当的5对。 DOS 网络操作系统 OS/2 自由软件

UNIX 多任务 Linux 单任务 Windows NT 为开发操作系统而设计 C语言 11.选择一个现代操作系统,查找和阅读相关的技术资料,写一篇关于操作系统如何进行内存管理、存储管理、设备管理和文件管理的文章。 答案 1.答:操作系统是控制和管理计算机的软、硬件资源,合理地组织计算机的工作流程,以方便用户使用的程序集合。 2.答:把多个独立的程序同时放入内存,使她们共享系统中的资源。 1)多道,即计算机内存中同时放多道相互独立的程序。 2)宏观上并行,是指共识进入系统的多道程序都处于运行过程。 3)微观上串行,是指在单道处理机环境下,内存中的多道程序轮流地占有CPU,交替执行。 3.答:批处理操作系统是一种基本的操作系统类型。在该系统中用户的作业被成批地输入到计算机中,然后在操作系统的控制下,用户的作业自动的执行。 特点是:资源利用率高。系统吞吐量大。平均周转时间长。无交互能力。 4.答:分时系统:允许多个终端用户同时使用计算机,在这样的系统中,用户感觉不到其他用户的存在,好像独占计算机一样。实时系统:对外输入出信息,实时系统能够在规定的时间内处理完毕并作出反应。 1)多路性:分时系统是为多个终端用户提供服务,实时系统的多路性主要表现在经常对多路的现场信息进行采集以及多多个对象或多个执行机构进行控制。 2)独立性:每个终端向实时系统提出服务请求时,是彼此独立的工作、互不干扰。

操作系统作业(1-4)答案

操作系统作业(1-4)答案

操作系统作业 (第一章—第四章) 一、单项选择 1 在计算机系统中配置操作系统的目的是【】。 A 增强计算机系统的功能 B 提高系统资源的利用率 C 合理组织工作流程以提高系统吞吐量 D 提高系统的运行速度 2 在操作系统中采用多道程序设计技术,能有效提高CPU、内存和I/O设备的【】。 A 灵活性 B 可靠性 C 兼容性 D 利用率 3 在操作系统中,并发性是指若干事件【】发生。 A 在同一时刻 B 一定不在同一时刻 C 在某一时间间隔内 D 依次在不同时间间隔内 4 以下不属于衡量操作系统性能指标的是【】。 A 作业的大小 B 资源利用率 C 吞吐量 D 周转时间 5 下列选项中,操作系统提供给应用程序的接口是【】。 A 系统调用 B 中断 C 函数 D 原语 6 在分时系统中,当用户数为50时,为了保证响应时间不超过1s,选取的时间片最大值为【】。 A 10ms B 20ms C 50ms D 100ms 7 假设就绪队列中有10个就绪进程,以时间片轮转方式进行进程调度,如果时间片为180ms,切换开销为20ms。如果将就绪进程增加到30个,则系统开销所占的比率为【】。 A 10% B 20% C 30% D 90% 8 中断系统一般由相应的【】组成。 A 硬件 B 软件 C 硬件和软件 D 固件 9 以下工作中,【】不是创建进程所必须的。 A 创建进程的PC B B 为进程分配内存 C 为进程分配CPU D 将PCB插入就绪队列 10 系统中有5个用户进程且CPU工作于用户态,则处于就绪状态或阻塞状态的进程数最多分别为【】。 A 5,4 B 4,0 C 0,5 D 4,5 11 如果系统中有n个进程,则就绪队列中进程的个数最多为【】。 A 1 B n-1 C n D n+1

操作系统课后题答案 (1)

课本课后题部分答案 第一章 1.设计现代OS的主要目标是什么? 答:(1)有效性(2)方便性(3)可扩充性(4)开放性 2.OS的作用可表现在哪几个方面? 答:(1)OS作为用户与计算机硬件系统之间的接口 (2)OS作为计算机系统资源的管理者 (3)OS实现了对计算机资源的抽象 13.OS有哪几大特征?其最基本的特征是什么? 答:并发性、共享性、虚拟性和异步性四个基本特征;最基本的特征是并发性。14.处理机管理有哪些主要功能?它们的主要任务是什么? 答:处理机管理的主要功能是:进程管理、进程同步、进程通信和处理机调度; 进程管理:为作业创建进程,撤销已结束进程,控制进程在运行过程中的状态转换。进程同步:为多个进程(含线程)的运行______________进行协调。 通信:用来实现在相互合作的进程之间的信息交换。 处理机调度: (1)作业调度。从后备队里按照一定的算法,选出若干个作业,为他们分配运行所需的资源(首选是分配内存)。 (2)进程调度:从进程的就绪队列中,按照一定算法选出一个进程,把处理机分配给它,并设置运行现场,使进程投入执行。 15.内存管理有哪些主要功能?他们的主要任务是什么? 北京石油化工学院信息工程学院计算机系3/48 《计算机操作系统》习题参考答案余有明与计07和计G09的同学们编著 3/48 答:内存管理的主要功能有:内存分配、内存保护、地址映射和内存扩充。 内存分配:为每道程序分配内存。 内存保护:确保每道用户程序都只在自己的内存空间运行,彼此互不干扰。 地址映射:将地址空间的逻辑地址转换为内存空间与对应的物理地址。 内存扩充:用于实现请求调用功能,置换功能等。 16.设备管理有哪些主要功能?其主要任务是什么? 答:主要功能有: 缓冲管理、设备分配和设备处理以及虚拟设备等。 主要任务: 完成用户提出的I/O 请求,为用户分配I/O 设备;提高CPU 和I/O 设 备的利用率;提高I/O速度;以及方便用户使用I/O设备. 17.文件管理有哪些主要功能?其主要任务是什么? 答:文件管理主要功能:文件存储空间的管理、目录管理、文件的读/写管理和保护。文件管理的主要任务:管理用户文件和系统文件,方便用户使用,保证文件安全性。 第二章 1. 什么是前趋图?为什么要引入前趋图? 答:前趋图(Precedence Graph)是一个有向无循环图,记为DAG(Directed Acyclic Graph),用于描述进程之间执行的前后关系。

华师操作系统作业答案

华师操作系统作业答案文件编码(008-TTIG-UTITD-GKBTT-PUUTI-WYTUI-8256)

华师《操作系统》作业答案名词解释: 进程:进程是一个具有一定独立功能的程序。关于某个数据集合的一次运行活动。它是操作系统的动态执行的基本单元。在传统的操作系统中,进程既是基本的分配单元也是基本的执行单元。 长期调度:按照某种原则从磁盘某些盘区的作业队列和交互作业中选取作业进入主存,并为作业做好运行前的准备工作和作业完成后的善后工作。 死锁:一组进程中,每个进程都无限等待被该组进程中另一进程所占有的资源,因而永远无法得到的资源,这种现象称为进程死锁,这一组进程就称为死锁进程。若死锁发生,会浪费大量系统资源,甚至导致系统崩溃。 SPOOL系统:spool系统是通过共享设备来模拟独点型设备的动作,使独点型设备成为共享设备从而提高了设备利用率和系统的效率,这种技术被称为虚拟设备技术,实现这一技术的硬件和软件系统被称为SPOOL系统,或称为假脱机系统。 绝对地址:——是指存储控制部件能够识别的主存单元编号(或字节地址),也就是主存单元的实际地址。 综合分析题

第6题:在一个请求分页系统,采用最佳页面置换算法时,假如一个作业的 作业的页架数为3时,试 写出页面调度的过程,并 计算缺页次数 答:页数为三,先把前三个页面装进去,7,0,1,发生3次缺页次数;下一个 是2,按照最佳置换,应该把7拿出去,变成2,0,1,累计4次缺页次数;下 一个是2,在内,不动,不发生缺页;下一个是0,在内,不动,不发生缺页; 下一个是3,应该把1拿出去,变成2,0,3;。。。。。。。;依次往下推; 累计发生9次缺页。 第7题据所给出的参数,请分析操作系统的不同调度算法,计算并填写下表中 空白的地方。 答案: 第8题请画出进程的五种基本状态及其转换过程,并作相应解释 运行状态(Running):进程占用处理器资源;处于此状态的进程的数目小于等于 处理器的数目,在没有其他进程可以执行时(如所有进程都在阻塞状态),通常 会自动执行系统的空闲进程 2)就绪状态,进程已获得进程可以按多个优先级别划分队列,例如,当一个进 程由于是境片用完而过入就绪状态时,排入低优先级队列,当进程由I/Or操作 完成而进入就绪状态时,排入高优先级队列。 3)阻塞状态,当进程由于等待I/O气操作或进程同步等条件而暂停运行时,它 处于阻塞状态。

操作系统第三章课后答案

第三章处理机调度与死锁 1. 高级调度与低级调度的主要任务是什么为什么要引入中级调度 高级调度的主要任务:用于决定把外存上处于后备队列中的哪些作业调入内存,并为它 们创建进程,分配必要的资源,然后,再将新创建的进程插入就 绪队列上,准备执行。 低级调度的主要任务:用于决定就绪队列中的哪个进程应获得处理机,然后再由分派程 序执行将处理机分配给该进程的具体操作。 引入中级调度的主要目的:是为了提高系统资源的利用率和系统吞吐量。 10. 试比较FCFS和SPF两种进程调度算法 相同点:两种调度算法都是既可用于作业调度,也可用于进程调度; 不同点:FCFS调度算法每次调度都是从后备队列中选择一个或是多个最先进入该队列的作业,将它们调入内存,为它们分配资源,创建进程,然后插入到就绪队 列中。该算法有利于长作业/进程,不利于短作业/进程。 SPF调度算法每次调度都是从后备队列中选择一个或若干个估计运行时间最 短的作业,将它们调入内存中运行。该算法有利于短作业/进程,不利于长作 业/进程。 15. 按调度方式可将实时调度算法分为哪几种 】 按调度方式不同,可分为非抢占调度算法和抢占调度算法两种。 18. 何谓死锁产生死锁的原因和必要条件是什么 a.死锁是指多个进程因竞争资源而造成的一种僵局,若无外力作用,这些进程都将永远不 能再向前推进; b.产生死锁的原因有二,一是竞争资源,二是进程推进顺序非法; c.必要条件是: 互斥条件,请求和保持条件,不剥夺条件和环路等待条件。 19.在解决死锁问题的几个方法中,哪种方法最易于实现哪种方法是资源利用率最高解决/处理死锁的方法有预防死锁、避免死锁、检测和解除死锁,其中预防死锁方法最容易实现,但由于所施加的限制条件过于严格,会导致系统资源利用率和系统吞吐量降低;而检测和解除死锁方法可是系统获得较好的资源利用率和系统吞吐量。 20. 请详细说明可通过哪些途径预防死锁 a.摒弃"请求和保持"条件:系统规定所有进程开始运行之前,都必须一次性地申请其在整 个运行过程所需的全部资源,但在分配资源时,只要有一种资源不能满足某进程的要求,即使其它所需的各资源都空闲,也不分配给该进程,而让该进程等待; b.摒弃"不剥夺"条件:系统规定,进程是逐个地提出对资源的要求的。当一个已经保持了 某些资源的进程,再提出新的资源请求而不能立即得到满足时,必须释放它已经保持了的所有资源,待以后需要时再重新申请; , c.摒弃"环路等待"条件:系统将所有资源按类型进行线性排序,并赋予不同的序号,且所 有进程对资源的请求必须严格按序号递增的次序提出,这样,在所形成的资源分配图中,不可能再出现环路,因而摒弃了"环路等待"条件。 22. 在银行家算法中,若出现下述资源分配情:

操作系统概念第七版习题答案(中文版)完整版

1.1 在多道程序和分时环境中,多个用户同时共享一个系统,这种情况导致多种安全问题。a. 列出此类的问题b.在一个分时机器中,能否确保像在专用机器上一样的安全度?并解释之。 Answer:a.窃取或者复制某用户的程序或数据;没有合理的预算来使用资源(CPU,内存,磁盘空间,外围设备)b.应该不行,因为人类设计的任何保护机制都会不可避免的被另外的人所破译,而且很自信的认为程序本身的实现是正确的是一件困难的事。 1.2 资源的利用问题在各种各样的操作系统中出现。试例举在下列的环境中哪种资源必须被严格的管理。(a)大型电脑或迷你电脑系统(b)与服务器相联的工作站(c)手持电脑 Answer: (a)大型电脑或迷你电脑系统:内存和CPU 资源,外存,网络带宽(b)与服务器相联的工作站:内存和CPU 资源(c)手持电脑:功率消耗,内存资源 1.3 在什么情况下一个用户使用一个分时系统比使用一台个人计算机或单用户工作站更好? Answer:当另外使用分时系统的用户较少时,任务十分巨大,硬件速度很快,分时系统有意义。充分利用该系统可以对用户的问题产生影响。比起个人电脑,问题可以被更快的解决。还有一种可能发生的情况是在同一时间有许多另外的用户在同一时间使用资源。当作业足够小,且能在个人计算机上合理的运行时,以及当个人计算机的性能能够充分的运行程序来达到用户的满意时,个人计算机是最好的,。 1.4 在下面举出的三个功能中,哪个功能在下列两种环境下,(a)手持装置(b)实时系统需要操作系统的支持?(a)批处理程序(b)虚拟存储器(c)分时 Answer:对于实时系统来说,操作系统需要以一种公平的方式支持虚拟存储器和分时系统。对于手持系统,操作系统需要提供虚拟存储器,但是不需要提供分时系统。批处理程序在两种环境中都是非必需的。 1.5 描述对称多处理(SMP)和非对称多处理之间的区别。多处理系统的三个优点和一个缺点? Answer:SMP意味着所以处理器都对等,而且I/O 可以在任何处理器上运行。非对称多处理有一个主处理器控制系统,与剩下的处理器是随从关系。主处理器为从处理器安排工作,而且I/O 也只在主处理器上运行。多处理器系统能比单处理器系统节省资金,这是因为他们能共享外设,大容量存储和电源供给。它们可以更快速的运行程序和增加可靠性。多处理器系统能比单处理器系统在软、硬件上也更复杂(增加计算量、规模经济、增加可靠性) 1.6 集群系统与多道程序系统的区别是什么?两台机器属于一个集群来协作提供一个高可靠性的服务器的要求是什么? Answer:集群系统是由多个计算机耦合成单一系统并分布于整个集群来完成计算任务。另一方面,多道程序系统可以被看做是一个有多个CPU 组成的单一的物理实体。集群系统的耦合度比多道程序系统的要低。集群系统通过消息进行通信,而多道程序系统是通过共享的存储空间。为了两台处理器提供较高的可靠性服务,两台机器上的状态必须被复制,并且要持续的更新。当一台处理器出现故障时,另一台处理器能够接管故障处理的功能。

(完整版)操作系统第二章作业答案

第二章作业 1.操作系统中为什么要引入进程的概念?为了实现并发进程中的合作和协调,以及保证系统的安全,操作系统在进程管理方面要做哪些工作? 答:为了从变化角度动态地分析研究可以并发执行的程序,真实的反应系统的独立性、并发性、动态性和相互制约,操作系统中不得不引入进程的概念。 为了防止操作系统及其关键的数据结构如:PCB等,受到用户程序破坏,将处理机分为核心态和用户态。对进程进行创建、撤销以及在某些进程状态之间的转换控制。 2.试描述当前正在运行的进程状态改变时,操作系统进行进程切换的步骤。答:分为两种情况: (1):运行状态就绪状态:根据进程的自身的情况插入到就绪队列的适当位置,系统收回处理及转入进程调度程序重新进行调度。 (2):运行状态→阻塞状态:系统会调用进程调度程序重新选择一个进程投入运行。 3.现代操作系统一般都提供多任务的环境,是回答以下问题。 为支持多进程的并发执行,系统必须建立哪些关于进程的数据结构? 答:系统必须建立PCB。 为支持进程的状态变迁,系统至少应该供哪些进程控制原语? 答:阻塞、唤醒、挂起和激活原语。 当进程的状态变迁时,相应的数据结构发生变化吗? 答:会根据状态的变迁发生相应的变化。例如:将进程PCB中进程的状态从阻塞状态改为就绪状态,并将进程从阻塞队列摘下,投入到就绪队列中。 4.什么是进程控制块?从进程管理、中断处理、进程通信、文件管理、设备管理及存储管理的角度设计进程控制块应该包含的内容。 答:PCB:描述进程本身的特征、状态、调度信息以及对资源占有情况等的数据结构,是进程存在的唯一标识。 进程控制块所包含的内容: ①进程信息描述;②CPU信息状态;③进程调度信息;④进程控制和资源占用信息。 5.假设系统就绪队列中有10个进程,这10个进程轮换执行,每隔300ms轮换一次,CPU在进程切换时所花费的时间是10ms,试问系统化在进程切换上的开销占系统整个时间的比例是多少? 解:P=(10*10)/[(300+10)*10]=3.2% 6.试述线程的特点及其与进程之间的关系。 答:线程的特点:是被独立分派和调度的基本单位。线程与进程的关系:线程是进程的一部分,是进程内的一个实体;一个进程可以有多个线程,但至少必须有一个线程。

操作系统 第3章

Chapter 3 – Process Description and Control True / False Questions: 1.T / F – The principal function of the processor is to execute machine instructions residing in main memory.处理器的主要功能是处理驻留在主存中的指令。 ANS: T 2.T / F – A process trace is a listing of the sequence of instructions that execute for that process.进程指令追踪就是这个进程的指令序列的列表。 ANS: T 3.T / F – The principal responsibility of the operating system is to control the execution of processes.操作系统的主要任务是控制进程的执行。 ANS: T 4.T / F – When one process spawns another, the spawning process is referred to as the child process and the spawned process is referred to as the parent process.当一个进程派生出另一进程时,产生进程的进程是子进程,被产生的进程是父进程。 ANS: F (opposite is true) 5.T / F – Round-Robin processing refers to a method of thread prioritization for scheduling.轮转是一种线程优先级调度方法。 ANS: F (not prioritized) 6.T / F – The primary difference between the Two-State Process Model and the Five- State Process Model is that the latter splits the Running state into two new states: Ready and Blocked.两状态处理模型和五状态处理模型主要区别是后者将运行态分割成就绪和阻塞态。 ANS: F (splits the Not Running state) 7.T / F – One solution to the problem of limited main memory space is swapping, which involves moving all or part of a process from main memory to secondary memory. 一种解决主存空间有限的方法是交换,这种交换包括将一个进程的全部或部分从主存转移到辅存。 ANS: T 8.T / F – In order to define the control structures (e.g., tables) that the O/S needs to manage processes and resources, it must have access to configuration data

操作系统第四版-课后习题答案

操作系统第四版-课后习题答案

第一章 作者:佚名来源:网络 1、有一台计算机,具有IMB 内存,操作系统占用200KB ,每个用户进程各占200KB 。如果用户进程等待I/O 的时间为80 % ,若增加1MB 内存,则CPU 的利用率提高多少? 答:设每个进程等待I/O 的百分比为P ,则n 个进程同时等待刀O 的概率是Pn ,当n 个进程同时等待I/O 期间CPU 是空闲的,故CPU 的利用率为1-Pn。由题意可知,除去操作系统,内存还能容纳4 个用户进程,由于每个用户进程等待I/O的时间为80 % , 故: CPU利用率=l-(80%)4 = 0.59 若再增加1MB 内存,系统中可同时运行9 个用户进程,此时:cPu 利用率=l-(1-80%)9 = 0.87 故增加IMB 内存使CPU 的利用率提高了47 % : 87 %/59 %=147 % 147 %-100 % = 47 % 2 一个计算机系统,有一台输入机和一台打印机,现有两道程序投入运行,且程序A 先开始做,程序B 后开始运行。程序A 的运行轨迹为:计算50ms 、打印100ms 、再计算50ms 、打印100ms ,结束。程序B 的运行轨迹为:计算50ms 、输入80ms 、再计算100ms ,结束。试说明(1 )两道程序运行时,CPU有无空闲等待?若有,在哪段时间内等待?为什么会等待?( 2 )程序A 、B 有无等待CPU 的情况?若有,指出发生等待的时刻。 答:画出两道程序并发执行图如下: (1)两道程序运行期间,CPU存在空闲等待,时间为100 至150ms 之间(见图中有色部分) (2)程序A 无等待现象,但程序B 有等待。程序B 有等待时间段为180rns 至200ms 间(见图中有色部分) 3 设有三道程序,按A 、B 、C优先次序运行,其内部计算和UO操作时间由图给出。

操作系统作业参考答案及其知识点

操作系统作业参考答案及其知识点 第一章 思考题: 10、试叙述系统调用与过程调用的主要区别? 答: (一)、调用形式不同 (二)、被调用代码的位置不同 (三)、提供方式不同 (四)、调用的实现不同 提示:每个都需要进一步解释,否则不是完全答案 13、为什么对作业进程批处理可以提高系统效率? 答:批处理时提交程序、数据和作业说明书,由系统操作员把作业按照调度策略,整理为一批,按照作业说明书来运行程序,没有用户与计算机系统的交互;采用多道程序设计,可以使CPU和外设并行工作,当一个运行完毕时系统自动装载下一个作业,减少操作员人工干预时间,提高了系统的效率。 18、什么是实时操作系统?叙述实时操作系统的分类。 答:实时操作系统(Real Time Operating System)指当外界事件或数据产生时,能接收并以足够快的速度予以处理,处理的结果又能在规定时间内来控制监控的生产过程或对处理系统做出快速响应,并控制所有实时任务协调一致运行的操作系统。 有三种典型的实时系统: 1、过程控制系统(生产过程控制) 2、信息查询系统(情报检索) 3、事务处理系统(银行业务) 19、分时系统中,什么是响应时间?它与哪些因素有关? 答:响应时间是用户提交的请求后得到系统响应的时间(系统运行或者运行完毕)。它与计算机CPU的处理速度、用户的多少、时间片的长短有关系。 应用题: 1、有一台计算机,具有1MB内存,操作系统占用200KB,每个用户进程占用200KB。如果用户进程等待I/0的时间为80%,若增加1MB内存,则CPU的利用率提高多少? 答:CPU的利用率=1-P n,其中P为程序等待I/O操作的时间占其运行时间的比例1MB内存时,系统中存放4道程序,CPU的利用率=1-(0.8)4=59% 2MB内存时,系统中存放9道程序,CPU的利用率=1-(0.8)9=87% 所以系统CPU的利用率提高了28% 2、一个计算机系统,有一台输入机和一台打印机,现有两道程序投入运行,且程序A先开始做,程序B后开始运行。程序A的运行轨迹为:计算50ms,打印100ms,再计算50ms,打印100ms,结束。程序B的运行轨迹为:计算50ms,输入80ms,再计算100ms,结束。

操作系统作业题及答案

《操作系统》课程作业 (2013年春) 姓名: 学号: 专业: 年级: 学校: 日期:

作业一:作业管理 1、有三道程序A、B、C在一个系统中运行,该系统有输入、输出设备各1台。三道程序 A、B、C构成如下: A:输入32秒,计算8秒,输出5秒 B:输入21秒,计算14秒,输出35秒 C:输入12秒,计算32秒,输出15秒 问:(1)三道程序顺序执行的总时间是多少? (2)充分发挥各设备的效能,并行执行上述三道程序,最短需多少时间(不计系统开销)?并给出相应的示意图。 2、假设一个单CPU系统,以单道方式处理一个作业流,作业流中有2道作业,共占用CPU 计算时间、输入卡片数和打印输出行数如下: 其中,卡片输入机速度为1000张/分钟,打印机输出速度为1000行/分钟,试计算:(1)不采用spooling技术,计算这两道作业的总运行时间(从第1道作业输入开始到最后一个作业输出完毕)。 (2)如采用spooling技术,计算这2道作业的总运行时间(不计读/写盘时间),并给出相应的示意图。

作业二:进程管理 1、 请写出两程序S1和S2可并发执行的Bernstein 条件。 2、 有以下5条语句,请画出这5条语句的前趋图。 S1:y=x+1 R(x) W(y) S2:c=f-w R(f,w) W(c) S3:d=r-y R(r,y) W(d) S4:x=a+b R(a,b) W(x) S5:r=c+y R(c,y) W(r) 3、 设在教材第62页3.6.4节中所描述的生产者消费者问题中,其缓冲部分为m 个长度相等 的有界缓冲区组成,且每次传输数据长度等于有界缓冲区长度以及生产者和消费者可对缓冲区同时操作。重新描述发送过程deposit(data)和接收过程remove(data)。 P P P i P .. .. 1 2 i k 4、 设有k 个进程共享一临界区,对于下述情况,请说明信号量的初值、含义,并用P ,V 操作写出有关互斥算法。 (1) 一次只允许一个进程进入临界区; (2) 一次允许m (m

计算机操作系统教程_张尧学【课后练习答案、复习资料】

《计算机操作系统教程》 张尧学__(第3版) 第一章绪论 1.什么是操作系统的基本功能 答:操作系统的职能是管理和控制汁算机系统中的所有硬、软件资源,合理地组织计算机工作流程,并为用户提供一个良好的工作环境和友好的接口。操作系统的基本功能包括: 处理机管理、存储管理、设备管理、信息管理(文件系统管理)和用户接口等。 2.什么是批处理、分时和实时系统各有什么特征 答:批处理系统(batchprocessingsystem):操作员把用户提交的作业分类,把一批作业编成一个作业执行序列,由专门编制的监督程序(monitor)自动依次处理。其主要特征是:用户脱机使用计算机、成批处理、多道程序运行。 分时系统(timesharingoperationsystem):把处理机的运行时间分成很短的时间片,按时间片轮转的方式,把处理机分配给各进程使用。其主要特征是:交互性、多用户同时性、独立性。 实时系统(realtimesystem):在被控对象允许时间范围内作出响应。其主要特征是:对实时信息分析处理速度要比进入系统快、要求安全可靠、资源利用率低。 3.多道程序(multiprogramming)和多重处理(multiprocessing)有何区别 答;多道程序(multiprogramming)是作业之间自动调度执行、共享系统资源,并不是真正地同时值行多个作业;而多重处理(multiprocessing)系统配置多个CPU,能真正同时执行多道程序。要有效使用多重处理,必须采用多道程序设计技术,而多道程序设计原则上不一定要求多重处理系统的支持。 4.讨论操作系统可以从哪些角度出发,如何把它们统一起来 答:讨论操作系统可以从以下角度出发: (1)操作系统是计算机资源的管理者 (2)操作系统为用户提供使用计算机的界面; (3)用进程管理观点研究操作系统,即围绕进程运行过程来讨论操作系统。 上述这些观点彼此并不矛盾,只不过代表了同一事物(操作系统)站在不同的角度来看待。 每一种观点都有助于理解、分析和设计操作系统。 第三章用户管理和配置管理 1.有A说,一个进程是由伪处理机执行的一个程序,这话对吗为什么 答:对。 因为伪处理机的概念只有在执行时才存在,它表示多个进程在单处理机上并发执行的二个调度单位。因此,尽管进程是动态概念,是程序的执行过程,但是,在多个进程并行执行时,仍然只有一个进程占据处理机执行,而其他并发进程则处于就绪或等待状态。这些并发进程就相当于由伪处理机执行的程序。 2.试比较进程和程序的区别。 答:(1)进程是一个动态概念,而程序是一个静态概念,程序是指令的有序集合,无执行含义,进程则强调执行的过程。 (2)进程具有并行特征(独立性,异步性),程序则没有。 (3)不同的进程可以包含同一个程序,同一程序在执行中也可以产生多个进程。 3.我们说程序的并发执行将导致最终结果失去封闭性广这话对所有的程序都成立吗举例说明. 答:并非所有程序均成立。 如: Begin local“Z K::10 print(x) End 上述程序中x是内部变量,不可能被外部程序访问,因此这段程序的运行不会受外部环境影响。 4.试比较作业和进程的区别。

操作系统第三章总复习题答案

操作系统第三章总复习题 一、单选题 1、进程调度又称低级调度,其主要功能是( D )。 A.选择一个作业调入内存 B.选择一个主存中的进程调出到外存 C.选择一个外存中的进程调入到主存 D.将一个就绪的进程投入到运行 2、若进程P 一旦被唤醒就能够投入运行,系统可能为( D )。 A.分时系统,进程P 的优先级最高 B.抢占调度方式,就绪队列上的所有进程的优先级皆比P 的低 C.就绪队列为空队列 D.抢占调度方式,P 的优先级高于当期运行的进程。 3、一个进程P 被唤醒后,( D )。 A.P 就占有了CPU。 B.P 的PCB 被移到就绪队列的队首。 C.P 的优先级肯定最高 D.P 的状态变成就绪 4、若当期运行进程( C )后,系统将会执行进程调度原语。 A 执行了一个转移指令 B 要求增加主存空间,经系统调用银行家算法进行测算认为是安全的。 C 执行了一条I/O 指令要求输入数据。 D 执行程序期间发生了I/O 完成中断。 5、当系统中( C )时,系统将不会执行进程调度原语。 A.一个新进程被创建 B.当前进程执行了P 操作。 C.在非抢占调度中,进程A 正在运行而进程B 恰好被唤醒。 D.分时系统中时间片用完。 6、在分时系统中,若当期运行的进程连续获得了两个时间片,原因可能是( B )。 A 该进程的优先级最高

B 就绪队列为空 C 该进程最早进入就绪队列 D 该进程是一个短进程 7、实时系统中采用的调度算法可以有如下几种: 1、非抢占优先权调度算法 2、立即抢占优先权调度算法 3、时间片轮转调度算法 4、基于时钟中断抢占的优先权调度算法 按实时要求的严格程度由低到高的顺序( B )。 A 1-3-2-4 B 3-1-4-2 C 3-1-2-4 D 1-3-4-2 8、三种主要类型的OS 中都必须配置的调度( C )。 A 作业调度 B 中级调度 C 低级调度 D I/O 调度 9、设系统中n 个进程并发,共同竞争资源X,且每个进程都需要m 个X 资源,为使该系统不会发生死锁,资源X 最少要有( C )个。 A m*n+1 B n*m+n C n*m+1-n D 无法预计 注:可以这样理解N个进程,都需要M个资源,最坏的一种情况是: 每个进程都占有M-1个资源,都得不到M个资源,总共资源数(m-1)*n。 (m-1)*n加上一个资源后,就至少有一个进程拥有M个资源,不会发生死锁。 10、死锁的预防方法中,不太可能的一种方法使( A )。 A 摈弃互斥条件 B 摈弃请求和保持条件 C 摈弃不剥夺条件 D 摈弃环路等待条件 11、某系统采用了银行家算法,则下列叙述正确的使( B ) A 系统处于不安全状态时一定会发生死锁 B 系统处于不安全状态时可能会发生死锁 C 系统处于安全状态时可能会发生死锁 D 系统处于安全状态时一定会发生死锁 12、下列进程调度算法中,( A )可能会出现进程长期得不到调度的情况。 A.静态优先权法 B 抢占式调度中采用动态优先权调度

操作系统课后习题答案

1.什么是操作系统?其主要功能是什么? 操作系统是控制和管理计算机系统内各种硬件和软件资源,有效组织多道程序运行的系统软件(或程序集合),是用户和计算机直接的程序接口. 2.在某个计算机系统中,有一台输入机和一台打印机,现有两道程序投入运行,程序A、B 同时运行,A略早于B。A的运行轨迹为:计算50ms、打印100ms、再计算50ms、打印100ms,结束。B的运行轨迹为:计算50ms、输入80ms、再计算100ms,结束。试说明:(1)两道程序运行时,CPU是否空闲等待?若是,在那段时间段等待? (2)程序A、B是否有等待CPU的情况?若有,指出发生等待的时刻。 0 50 100 150 200 250 300 50 100 50 100 50 100 20 100 (1) cpu有空闲等待,在100ms~150ms的时候. (2) 程序A没有等待cpu,程序B发生等待的时间是180ms~200ms. 1.设公共汽车上,司机和售票员的活动如下: 司机的活动:启动车辆;正常行车;到站停车。 售票员的活动:关车门;售票;开车门。 在汽车不断的到站、停车、行驶过程中,用信号量和P、V操作实现这两个活动的同步关系。 semaphore s1,s2; s1=0;s2=0; cobegin 司机();售票员(); coend process 司机() { while(true) { P(s1) ; 启动车辆; 正常行车; 到站停车; V(s2); } } process 售票员() { while(true) { 关车门; V(s1);

售票; P(s2); 开车门; 上下乘客; } } 2.设有三个进程P、Q、R共享一个缓冲区,该缓冲区一次只能存放一个数据,P进程负责循环地从磁带机读入数据并放入缓冲区,Q进程负责循环地从缓冲区取出P进程放入的数据进行加工处理,并把结果放入缓冲区,R进程负责循环地从缓冲区读出Q进程放入的数据并在打印机上打印。请用信号量和P、V操作,写出能够正确执行的程序。 semaphore sp,sq,sr; int buf;sp=1;sq=0;sr=0; cobegin process P() { while(true) { 从磁带读入数据; P(sp); Buf=data; V(sq); } } process Q() { while(true) { P(sq); data=buf; 加工data; buf=data; V(sr); } } process R() { while(true) { P(sr); data=buf; V(sp); 打印数据; } }

操作系统教程第5版部分习题标准答案

第一章: 一、3、10、15、23、27、35 3.什么是操作系统?操作系统在计算机系统中的主要作用是什么? 操作系统是管理系统资源、控制程序执行、改善人机界面、提供各种服务,并合理组织计算机工作流程和为用户有效地使用计算机提供良好运行环境的一种系统软件. 主要作用 (1)服务用户—操作系统作为用户接口和公共服务程序 (2)进程交互—操作系统作为进程执行的控制者和协调者 (3)系统实现—操作系统作为扩展机或虚拟机 (4)资源管理—操作系统作为资源的管理者和控制者 10.试述系统调用与函数(过程)调用之间的区别。 (1)调用形式和实现方式不同; (2)被调用的代码位置不同; (3)提供方式不同 15.什么是多道程序设计?多道程序设计有什么特点? 多道程序设计是指允许多个作业(程序)同时进入计算机系统内存并执行交替计算的方法。从宏观上看是并行的,从微观上看是串行的。 (1)可以提高CPU、内存和设备的利用率; (2)可以提高系统的吞吐率,使单位时间内完成的作业数目增加; (3)可以充分发挥系统的并行性,使设备和设备之间,设备和CPU之间均可并行工作。 23.现代操作系统具有哪些基本功能?请简单叙述之。 (1)处理器管理; (2)存储管理; (3)设备管理; (4)文件管理; (5)联网与通信管理。 27.什么是操作系统的内核? 内核是一组程序模块,作为可信软件来提供支持进程并发执行的基本功能和基本操作,通常驻留在内核空间,运行于内核态,具有直接访问计算机系统硬件设备和所有内存空间的权限,是仅有的能够执行特权指令的程序。 35.简述操作系统资源管理的资源复用技术。

系统中相应地有多个进程竞争使用资源,由于计算机系统的物理资源是宝贵和稀有的,操作系统让众多进程共享物理资源,这种共享称为资源复用。 (1)时分复用共享资源从时间上分割成更小的单位供进程使用; (2)空分复用共享资源从空间上分割成更小的单位供进程使用。 . 二、2、5 2、答:画出两道程序并发执行图如下: (1) (见图中有色部分)。 (2)程序A无等待现象,但程序B有等待。程序B有等待时间段为180ms至200ms间(见 图中有色部分)。 5、答:画出三个作业并行工作图如下(图中着色部分为作业等待时间):

操作系统课后习题答案

3.1论述长期、中期、短期调度之间的区别。 答:短期调度:在内存作业中选择准备执行的作业,并未他们分配CPU。 中期调度:被用于分时系统,一个交换方案的实施,将部分运行程序移出内存,之后,从中断处继续执行。 长期调度:确定哪些作业调入内存以执行。 区别:它们区别在于执行频率。短期调度必须经常调用一个新进程,由于在系统中,长期调度处理移动的作业时,并不频繁被调用,可能在进程离开系统时才被唤起。 3.2描述内核在两个进程间进行上下文切换的过程。 答:进程关联是由进程的PCB来表示的,它包括CPU寄存器的值和内存管理信息等。当发生上下文切换时,内核会将旧进程的关联状态保存在其PCB中,然后装入经调度要执行的新进程的已保存的关联状态。上下文切换还必须执行一些确切体系结构的操作,包括刷新数据和指令缓存。 3.4使用图3.24所示的程序,说明LINE A可能输出什么。 答:输出:PARENT:value=5; 父进程中value初始值为5,,value+=15发生在子进程,输出发生在父进程中,故输出value 的值为5。 3.5下面设计的优点和缺点分别是什么?系统层次和用户层次都要考虑。 a.同步和异步通信 b.自动和显式缓冲 c.复制传送和引用传送 d.固定大小和可变大小信息 答:a.同步和异步通信:同步通信的影响是它允许发送者和接收者之间有一个集合点。缺点是阻塞发送时,不需要集合点,而消息不能异步传递。因此,消息传递系统,往往提供两种形式的同步。 b.自动和显式缓冲:自动缓冲提供了一个无限长度的队列,从而保证了发送者在复制消息时不会遇到阻塞,如何提供自动缓存的规范,一个方案也许能保存足够大的内存,但许多内存被浪费缓存明确指定缓冲区的大小。在这种状况下,发送者不能在等待可用空间队列中被阻塞。然而,缓冲明确的内存不太可能被浪费。 c.复制发送和引用发送:复制发送不允许接收者改变参数的状态,引用发送是允许的。引用发送允许的优点之一是它允许程序员写一个分布式版本的一个集中的应用程序。 d.固定大小和可变大小信息:一个拥有具体规模的缓冲可容纳及已知数量的信息缓冲能容纳的可变信息数量是未知的。信息从发送者的地址空间被复制至接受进程的地址空间。更大的信息可使用共享内存传递信息。 4.1举两个多线程程序设计的例子,其中多线程的性能比单线程的性能差。 答:a.任何形式的顺序程序对线程来说都不是一个好的形式。例如一个计算个人报酬的程序。 b.一个“空壳”程序,如C-shell和korn shell。这种程序必须密切检测其本身的工作空间。如打开的文件、环境变量和当前工作目录。

相关主题