操作系统学习资料-第四章 处理机调度习题

操作系统学习资料-第四章  处理机调度习题
操作系统学习资料-第四章  处理机调度习题

第四章处理机调度

一. 选择最合适的答案

1.某系统采用了银行家算法,则下列叙述正确的是()。

A.系统处于不安全状态时一定会发生死锁

B.系统处于不安全状态时可能会发生死锁

C.系统处于安全状态时可能会发生死锁

D.系统处于安全状态时一定会发生死锁

2.银行家算法中的数据结构包括有可利用资源向量Available、最大需求矩阵Max、分配矩阵Allocation、需求矩阵Need,下列选项正确的是()。

A.Max[i,j]=Allocation[i,j]+Need[i,j]

B.Need[i,j]= Allocation[i,j]+ Max[i,j]

C.Max[i,j]= Available[i,j]+Need[i,j]

D.Need[i,j]= Available[i,j]+ Max[i,j]

3.下列进程调度算法中,()可能会出现进程长期得不到调度的情况。

A.非抢占式静态优先权法

B.抢占式静态优先权法

C.时间片轮转调度算法

D.非抢占式动态优先权法

4.在下列选项中,属于预防死锁的方法是()。

A.剥夺资源法

B.资源分配图简化法

C.资源随意分配

D.银行家算法

5.在下列选项中,属于检测死锁的方法是()。

A.银行家算法

B.消进程法

C.资源静态分配法

D.资源分配图简化法

6.在下列选项中,属于解除死锁的方法是()。

A.剥夺资源法 B.资源分配图简化法

C.银行家算法 D.资源静态分配法

7.为了照顾紧迫型作业,应采用()。

A.先来服务调度算法

B.短作业优先调度算法

C.时间片轮转调度算法

D.优先权调度算法

8.在采用动态优先权的优先权调度算法中,如果所有进程都具有相同优先权初值,则此时的优先权调度算法实际上和()相同。

A.先来先服务调度算法

B.短作业优先调度算法

C.时间片轮转调度算法

D.长作业优先调度算法

9.作业从后备作业到被调度程序选中的时间称为()。

A.周转时间

B.响应时间

C.等待调度时间

D.运行时间

10.资源静态分配法可以预防死锁的发生,它们使死锁四个条件中的()不成立。

A.互斥条件

B.请求和保持条件

C.不可剥夺条件

D.环路等待条件

二. 选择所有正确答案

1.下列选项中,()可能是非抢占方式进程调度中引起调度的原因。

A.当前的运行进程调用阻塞原语而进入阻塞状态

B.当前的运行进程提出申请I/O而阻塞

C.有更高优先级的进程到达而从执行状态变为就绪状态

D.正在执行的进程执行了P原语操作,由于资源不足而阻塞

2.选择排队作业中等待时间最长的作业被优先调度,该调度算法不可能是()。

A.先来先服务调度算法

B.高响应比优先调度算法

C.优先权调度算法

D.短作业优先调度算法

3.作业控制块JCB连成一串而形成的一个排队队列,该队列称为()。

A挂起队列 B.阻塞队列

C.就绪队列

D.后备队列

4.下列哪个选项描述的时间属于响应时间的一部分()。

A.处理机对请求信息进行处理的时间

B.从键盘输入的请求信息传送到处理机的时间

C.所形成的响应回送到终端显示器的时间

D.用户查看响应回送到的信息

5.下列四个选项描述的时间组成了周转时间,其中可能发生多次的是()。

A.等待I/O操作完成的时间

B.作业在外存后备队列上等待作业调度的时间

C.进程在CPU上的执行时间

D.进程在就绪队列上等待进程调度的时间

6.下面列出的是选择调度方式和算法的4个面向用户的准则。其中,不完全适用于实时系统的准则是()。

A.优先权准则

B.响应时间快

C.截止时间的保证

D.周转时间短

7.下面列出了选择调度方式和算法的4个准则。其中,对批处理、分时、实时系统都可以采用的是()。

A.周转时间短

B.响应时间快

C.截止时间的保证

D.优先权准则

8.下列选项中,()是分时系统中确定时间片大小需要考虑的因素。

A.各类资源的平衡利用

B.就绪队列中进程的数目

C.系统的处理能力

D.系统对响应时间的要求

9.下面列出的选项中,属于可剥夺性资源的有()。

A.CPU

B.内存

C.磁盘

D.磁带机

10.在多级队列调度和多级反馈队列调度的叙述中,正确的是()。

A.多级反馈队列调度中就绪队列的设置不是象多级队列调度一样按作业性质划分,

而是按时间片的大小划分

B.多级队列调度用到优先权,而多级反馈队列调度中没有用到优先权

C.多级队列调度中的进程固定在某一个队列中,而多级反馈队列调度中的进程不

固定

D.多级队列调度中每个队列按作业性质不同而采用不同的调度算法,而多级反馈

队列调度中除了个别队列外,均采用相同的调度算法

三. 判断正误,简要说明理由

1.作业调度能够使作业获得CPU。

2.在多道程序系统中,系统的现有空闲可用资源能否满足一个后备作业J的资源要求,是选择作业J进入内存的必要条件。

3.短作业(进程)优先调度算法具有最短的平均周转时间,因此这种算法是最好的算法。

4.在优先权调度算法中确定静态优先权时,一般说,计算进程的优先权要高于磁盘I/O 进程的优先权。

5.摒弃不可剥夺条件的方法可用于预防多个打印进程死锁的发生。

6.操作系统处理死锁,只要采用预防、解除、检测、避免之中的一种就足够了。

7.如果系统在所有进程运行前,一次性地将其在整个运行过程所需的全部资源分配给进程,即所谓“静态分配”法,是可以预防死锁发生的。

8.多个进程竞争比进程数目少的资源时就可能产生死锁,而当资源数目大于进程数目时就一定不会发生死锁。

9.在银行家算法中,对某时刻的资源分配情况进行安全分析,如果该时刻状态是安全的,则存在一个安全序列,且这个安全序列是唯一的。

10.进程调度算法各种各样,但是如果选择不当,就会造成死锁。

四. 简答题

1.高级调度和低级调度的主要任务是什么?为什么要引入中级调度?

2.在作业调度中需作出哪些决定?

3.在剥夺调度中,有哪些剥夺原则?

4.在OS中引起进程调度的主要因素有哪些?

5.在选择调度方式和调度算法时,应遵循的原则是什么?

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

7.为什么说多级反馈队列能较好地满足各种用户的需要?

8.在多用户分时系统中,时间片轮转调度的算法在确定时间片的大小时,应考虑哪些因素?

9.为实现实时调度,对实时系统提出了哪些要求?

10.目前常用的调度方式和算法,能否应用到实时系统中?

11.在多处理机系统中,比较有代表性的线程调度方式有哪几种?

12.试比较自调度和成组调度?

13.在OS/2中采用哪种调度方式和调度算法?

14.何为死锁?产生死锁的原因和必要条件是什么?

15.在解决死锁问题的几个方法中,哪种方法最容易实现?哪种方法使资源的利用率最高?

16.请详细说明可通过哪些途径预防死锁?

17.在银行家算法的例子中,如果P0发出的请求向量由Request0(0,2,0)改为Request0(0,1,0),问系统可否将资源分配给它?

五考研试题精选及解析

1.在银行家算法中,若出现以下资源分配情况:(北京理工2002死锁题)

问:1 该状态是否安全?

2 若进程依次有以下资源请求:

p1 资源请求:Request(1,0,2)

p4 资源请求:Request(3,3,0)

p0 资源请求:Request(0,1,0)

则系统如何分配资源可避免死锁?

2.一个操作系统有20个进程,竞争使用65个同类资源,申请方式是逐个进行的,一旦某进程获得它所需要的全部资源,则立即归还所有资源。每个进程最多使有3个资源。若仅考虑这类资源,该系统有可能产生死锁,为什么?(北京大学1995年死锁题)

解:在本题中,若仅考虑这一类资源的分配,则不会产生死锁。因为死锁产生的原因有两点:系统资源不足或进程推进顺序不当。在本题介绍的系统中,进程所要的最大资源数为:20×3=60,而系统中共有该类资源65个,其资源数目已足够系统内的各地进程使用,因此绝不可能发生死锁。

3.一台计算机有8台磁带机。它们由N个进程竞争使用,每个进程可能需要3台磁带机。请问N为多少时,系统没有死锁危险,并说明原因。(上海交通大学1999年死锁题)

解:当N为1,2,3时,系统没有产生死锁的危险。因为,当系统中只有1个进程时,它最多需要3台磁带机,而系统有8台磁带机,其资源数目已足够系统内的1个进程使用,因此绝不可能发生死锁;当系统中有2个进程时,最多需要6台磁带机,而系统有8台磁带机,其资源数目也足够系统内的2个进程使,因此也不可能发生死锁;

当系统中有3个进程时,在最坏情况下,每个进程都需要3个这样的资源,且假定每个进程都已申请到了2个资源,那么系统中还剩下2个,无论系统为了满足哪个进程的资源申请而将资源分配给该进程,都会因为该进程已获得了它所需要的全部资源而确保它运行完毕,从而可将它占有的3个资源归还给系统,这就保证了其余进程能顺利运行完毕.由此可知当N 为1,2,3时,该系统不会由于对这种资源的竞争而产生死锁。

4.假定某计算机系统有R1和R2两类可再使用资源(其中R1有两个单位,R2有一个单位),它们被进程P1,P2所共享,且已知两个进程均以下列顺序使用两类资源:

→申请R1→申请R2→申请R1→释放R1→释放R2→释放R1→

试求出系统运行过程中可能到达的死锁点,并画出死锁点的资源分配图。(南开大学1994年死锁题)

解:在本题中,当两个进程都执行完第1步后,即进程P1和进程P2都申请到了一个R1类资源时,系统进入不安全状态。随着两个进程的向前推进,无论哪个进程执行完第2步,系统都将进入死锁状态。

可能到达的死锁点是:进程P1占有一个单位的R1类资源及一个单位的R2类资源,进程

P2占有一个单位的R1类资源,此时系统内已无空闲资源,而两个进程都在保持已占有资源不释放的情况下继续申请资源,从而造成死锁;

或进程P2占有单位的R1类资源及一个单位的R2类资源,进程P1占有一个单位的R1类资源,此时系统内已无空闲资源,而两个进程都在保持已占有资源不释放的情况下继续申请

图4-5

5. 某系统有同类资源m个,被并发执行的n个进程共享,若每个进程申请该类资源的最大量为x (1≦x≦m),试给出保证系统不产生死锁的n、x、m之间的关系式。

解:当每个进程分得资源的最大量x-1个后,只要系统还拥有一个资源时,系统便不会产生死锁,故可推出关系式:n×(x-1)+1≦m。其中,当m≦n时,x=1。m>n时,x=1+[(m-1)/n] 其中,[ ]为取下界、即去掉小数点。

6.某系统有同类资源m个,被并发执行的n个进程共享,若每个进程申请该类资源的最大量为x (1≦x≦m),试证明:当n×(x-1)+1≦m时,系统不产生死锁。(西安理工2000死锁题)解:当每个进程分得资源的最大量x-1个后,只要系统还拥有一个资源时,系统便不会产生死锁,故可推出关系式:n×(x-1)+1≦m。其中,当m≦n时,x=1。m>n时,x=1+[(m-1)/n] 其中,[ ]为取下界、即去掉小数点。

7.假设系统由相同类型m个资源组成,系统有n个进程,每个进行至少请求一个资源。证明当n个进程最多需要的资源数之和小于m+n时,该系统没有死锁。(国防科大2001死锁题)答:设max (i)表示第i个进程的最大资源需求量,need(i)表示第i个进程还需要的资源量,alloc(i)表示第i个进程已分配的资源量。由题中所给条件可知:

max(1)+┅+max(n)=(need(1)+┅+need(n))+((alloc(1)+┅+alloc(n))

如果在这个系统中发生了死锁,那么一方面m个资源应该全部分配出去,

alloc(1)+ ┅+alloc(n)=m

另一方面所有进程将陷入无限等待状态。可以推出

need(1)+ ┅+need(n)

上式表示死锁发生后,n个进程还需要的资源量之和小于n,这意味着此刻至少存在一个进

程i,need(i)=0,即它已获得了所需要的全部资源。既然该进程已获得了它所需要的全部资源,那么它就能执行完成并释放它占有的资源,这与前面的假设矛盾,从而证明在这个系统中不可能发生死锁。

8.某系统有同类独占资源m个,被并发执行的n个进程共享,若每个进程申请该类资源的最大量为w(1≦w≦m),当m、w、n取下列值时,判断下列哪些情形发生死锁。(上交大1999死锁题)

(1) m=2,n=2,w=1。(2)m=3,n=2,w=2。(3) m=3,n=2,w=3。(4) m=5,n=3,w=2。(5) m=6,n=3,w=3。

解:用上题结论,当m≦n时,w=1。m>n时,w=1+[(m-1)/n] 其中,[ ]为取下界。

(1) 不会死锁。(2) 不会死锁。(3) 可能出现死锁。(4) 不会死锁。(5) 可能出现死锁。

9.N个进程共享M个资源,每个进程一次只能申请/释放一个资源,每个进程最多需要M个资源,所有进程总共的资源需求少于M+N个,证明该系统此时不会产生死锁。(西北工大2000死锁题)

答1:设max (i)表示第i个进程的最大资源需求量,need(i)表示第i个进程还需要的资源量,alloc(i)表示第i个进程已分配的资源量。由题中所给条件可知:max(1)+┅+max(n)=(need(1)+┅+need(n))+((alloc(1)+┅+alloc(n))

如果在这个系统中发生了死锁,那么一方面m个资源应该全部分配出去,

alloc(1)+ ┅+alloc(n)=m

另一方面所有进程将陷入无限等待状态。可以推出

need(1)+ ┅+need(n)

上式表示死锁发生后,n个进程还需要的资源量之和小于n,这意味着此刻至少存在一个进程i,need(i)=0,即它已获得了所需要的全部资源。既然该进程已获得了它所需要的全部资源,那么,它就能执行完成并释放它占有的资源,这与前面的假设矛盾,从而证明在这个系统中不可能发生死锁。

答2:设每个进程对共享资源的最大需求量为x(0

因此,当m-n(x-1)≥1时,即x≤(m+n-1)/n时系统不会发生死锁。进而可得系统中所有进程最大需求量之和nx≤(m+n-1)时系统不会发生

死锁。该题中,所有进程最大需求量之和小于m+n,所以,该系统是死锁无关的。

答3:由题意知道,n×m

等式变换n×(m-1)+n

即n×(m-1)

于是有n×(m-1)+1

或n×(m-1)+1≤m

这说明当n个进程都取得了最大数减1个即(m-1)个时,这时至少系统还有一个资源可分配。故该系统是死锁无关的。

10.设系统中仅有一个资源类,其中共有3个资源实例,使用此类资源的进程共3个,每个进程至少请求一个资源,它们所需资源求最大量的总和为x,则发生死锁的必要条件是x≧6。(南京航空航天大学2002死锁题)

解:

设3个进程各需x1,x2和x3个资源,根据题意,x=x1+x2+x3

若发生了死锁,那么,每个进程至还缺—个资源,但系统己没有空闲的可分配了、即有:(x1-1)+(x2-1)+(x3-1) ≧3

x1+x2+x3-3≧3

故有x-3≧3

所以x≧6

11.有一个具有两道作业的批处理系统,作业调度采用短作业优先的调度算法,进程调度采用以优先数为基础的抢占式调度算法,在下表所示的作业序列,作业优先数即为进程优先数,优先数越小优先级越高。(北京大学1995年进程调度题)

(2)计算平均周转时间。

12. 对某系统进行监测后表明平均每个进程在I/O阻塞之前的运行时间为T。一次进程切换的系统开销时间为S。若采用时间片长度为Q的时间片轮转法,对下列各种情况算出CPU 利用率。(北京大学2000年进程调度题)

1)Q=∞2)Q>T 3)S<Q<T

答:因为,CPU利用率=进程有效运行时间/CPU总时间

=有效运行时间/(有效运行时间+系统开销)。

由于Q=∞或Q>T,那么,时间片足够大,进程每次运行总能结束,故1)和2)两种情况

下,在T+S时间中,有效运行了T。得到CPU利用率=T/(T+S)。

1)Q=∞CPU利用率=T/(T+S)

2)Q>T CPU利用率=T/(T+S)

下面一种情况,S<Q<T ,也就是说,进程完成任务运行过程中共切换了T/Q次,浪费时间为S×(T/Q)。故CPU利用率=T/(T+ S×(T/Q)),化简后得到:

3)T>Q>S CPU利用率=Q/(Q+S)

13.有一个四道作业的操作系统,若在一段时间内先后到达6个作业,它们的提交和估计运行时间由下表给出:

系统采用SJF调度算法,作业被调度进入系统后中途不会退出,但作业运行时可被更短作业抢占。(1)分别给出6个作业的执行时间序列、即开始执行时间、作业完成时间、作业周转时间。(2)计算平均作业周转时间。

解:

作业提交需运行开始运行被抢占还完成周转

号时间时间时间需运行时间时间时间

J1 8:00 60 8:00 40 10:35 155

J2 8:20 35 8:20 30 9:55 95

J3 8:25 20 8:25 8:45 20

J4 8:30 25 9:00 25 9:25 55

J5 8:35 5 8:45 8:50 15

J6 8:40 10 8:50 9:00 20

说明:

采用SJF,J2到达时抢占J1;J3到达时抢占J2。

但J4到达时,因不满足SJF,故J4不能被运行,J3继续执行5分钟。

注意,是4道的作业系统,故后面作业不能进入主存而在后备队列等待。根据进程调度可抢占原则,J3第一个做完。而这时J5可进入主存。

因J5最短,故它第二个完成。这时J6可进入主存。

因J6最短,故它第三个完成。

然后是:J4、J2和J1

T=60

操作系统_ 处理机调度

泉州师范学院 软件学院 《计算机操作系统》 课程设计 题目:处理机调度 班级: 10软件工程(2)班 学号: 姓名: 指导教师: 2012 年12 月25 日

目录 第一章概述 (2) 1.1需求分析 (2) 1.2背景设计 (2) 第二章概要设计 (1) 第三章详细设计 (2) 3.1高响应比调度算法 (2) 3.2时间片轮转法 (3) 3.3短进程优先法 (4) 第四章调试分析与测试结果 (5) 第五章总结 (7) 第六章参考文献 (8)

第一章概述 1.1需求分析 进程是操作系统最重要的概念之一,进程调度是操作系统内核的重要功能,本实验要求用C语言编写一个进程调度模拟程序,使用短作业优先调度算法,高响应比调度算法,时间片轮转调度算法实现进程调度。可以手动阻塞与唤醒。并用MFC实现图形界面。本实验可加深对进程调度算法的理解。 1.2背景设计 在OS中,调度的实质是一种资源分配,调度算法即指:根据系统的资源分配策略所规定的资源分配算法。对于不同的系统和系统目标,通常采用不同的调度算法,如在批处理系统中,为照顾为数众多的短作业,采用短作业有限调度算法;在分时系统中,为保证系统具有合理的响应时间,采用轮转法进行调度。采用算法时,则要考虑多方面因素,以便达到最佳效果。 第二章概要设计 设计一个有多个进程共行的进程调度程序。 进程调度算法:短作业优先调度算法,高响应比调度算法,时间片轮转调度算法 每个进程有一个进程控制块( PCB)表示。进程控制块可以包含如下信息:进程名、优先数、到达时间、服务时间、进程状态等等。 struct progress { CString Name; //进程名称 CString Start; //创建时间 int ServiceT; //服务时间 int RunningT; //消逝时间 int RemainT;//剩余时间 int id;//进程标识符 CProgressCtrl* pro; //指向进度条的指针 int Rp;//进程成为就绪进程的时间

计算机操作系统作业一附答案

一、单选题 1、(D)不就是基本的操作系统。 A.批处理操作系统 B.分时操作系统 C.实时操作系统 D.网络操作系统 2、(A)不就是分时系统的基本特征: A.同时性 B.独立性 C.实时性 D.交互性 3、实时操作系统追求的目标就是(C )。 A.高吞吐率 B.充分利用内存 C.快速响应 D.减少系统开销 4、操作系统就是为了提高计算机的[1 B]与方便用户使用计算机而配置的基本软件。它负责管理计算机系统中的[2 C],其中包括[3 F],[4 A],外部设备与系统中的数据。操作系统中的[3 F]管理部分负责对进程进行管理。操作系统对系统中的数据进行管理的部分通常叫做[5 B]。 供选择的答案: [1] A.速度 B.利用率 C.灵活性 D.兼容性 [2] A.程序 B.功能 C.资源 D.进程 [3] [4] A.主存储器 B.虚拟存储器 C.运算器 D.控制器 E.微处理器 F.处理机 [5] A.数据库系统 B.文件系统 C.检索系统 D.数据库 E.数据存储系统 F.数据结构 G.数据库管理系统 5、批处理系统的主要缺点就是(B )。 A.CPU的利用率不高 B.失去了交互性 C.不具备并行性 D.以上都不就是 6、操作系统就是计算机系统的核心软件。按功能特征的不同,可把操作系统分为[1 B]、[2 E]、[3 C]、网络操作系统与分布式操作系统基本类型。其中[1 B]的主要目标就是提高系统的吞吐率与效率,而[2 E]就是一旦有处理请求与要求处理的数据时,CPU就应该立即处理该数据并将结果及时送回,例如[4 D]等。 供选择的答案: [1][2][3] A.单用户系统 B.批处理系统 C.分时系统 D.微机操作系统 E.实时系统 [4] A.计算机激光照排系统 B.办公自动化系统 C.计算机辅助设计系统 D.航空订票系统

第三版操作系统第3章习题

操作系统第三章总复习题 一、单选题 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、若当前运行进程()后,系统将会执行进程调度原语。 A 执行了一个转移指令 B 要求增加主存空间,经系统调用银行家算法进行测算认为是安全的。 C 执行了一条I/O 指令要求输入数据。 D 执行程序期间发生了I/O 完成中断。 5、当系统中()时,系统将不会执行进程调度原语。 A.一个新进程被创建B.当前进程执行了P 操作。C.在非抢占调度中,进程A 正在运行而进程B 恰好被唤醒。D.分时系统中时间片用完。 6、在分时系统中,若当期运行的进程连续获得了两个时间片,原因可能是()。 A 该进程的优先级最高 B 就绪队列为空 C 该进程最早进入就绪队列 D 该进程是一个短进程 7、实时系统中采用的调度算法可以有如下几种: 1、非抢占优先权调度算法 2、立即抢占优先权调度算法 3、时间片轮转调度算法 4、基于时钟中断抢占的优先权调度算法 按实时要求的严格程度由低到高的顺序()。 A 1-3-2-4 B 3-1-4-2 C 3-1-2-4 D 1-3-4-2 8、三种主要类型的OS 中都必须配置的调度()。 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 无法预计 10、死锁的预防方法中,不太可能的一种方法使()。

操作系统作业(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.操作系统的主要性能参数:﹎﹎A﹎﹎指的是单位时间内系统处理的作业量。 A: (1)周转时间;(2)处理时间;(3)消逝时间;(4)利用率;(5)生产率;(6)吞吐量。 1.2.在所学的调度算法中,能兼顾作业等待时间和作业执行时间调度算法是﹎﹎A﹎﹎。A: (1)FCFS调度算法;(2)短作业优先调度算法;(3)时间片轮转法;(4)多级反馈队列调度算法;(5)高响应比优先算法;(6)基于优先权的剥夺调度算法。 1.3.在所学的调度算法中,为实现人机交互作用应采用调度算法是﹎﹎A﹎﹎。 A:(1)FCFS调度算法;(2)短作业优先调度算法;(3)时间片轮转法;(4)多级反馈队列调度算法;(5)高响应比优先算法;(6)基于优先权的剥夺调度算法。 1.4. 在采用非抢占式优先权进程调度算法的系统中,正在运行进程的优先权是﹎﹎A﹎﹎。 A: (1) 系统中优先权最高的进程 (2)比就绪队列中进程优先权高的进程 (3) 比就绪队列中进程优先权不一定高的进程 1.5. 时间片轮转算法中时间片足够大时,该算法退化为﹎﹎A﹎﹎。 A:(1)时间片轮转算法;(2)先进先出调度算法;(3)高响应比优先算法;(4)短作业优先算法。 1.6. 优先权调度算法中优先权反比运行时间时,该算法转变为﹎﹎A﹎﹎。 A:(1)时间片轮转算法;(2)先进先出调度算法;(3)高响应比优先算法;(4)短作业优先算法。 1.7.作业调度是按某种算法从磁盘输入井的﹎﹎A﹎﹎中选一个作业装入主存运行。 A:(1)就绪队列(2)等待队列(3)作业后备队列(4)提交队列 1.8.在分时系统中除了设置了进程调度外,通常还设置了﹎﹎A﹎﹎。 A,B,C:⑴剥夺调度;⑵作业调度;⑶进程调度;⑷中级调度;(5)处理机调度。 1.9.作业调度与进程调度的主要区别是:﹎﹎A﹎﹎ A:(1)作业调度比进程调度频繁(2)两种调度的算法完全不同 (3)两种调度的性能指标完全不同(4)进程调度比作业调度频繁 1.10. 因争用资源产生死锁的必要条件是互斥、循环等待、不可抢占和﹎﹎A﹎﹎。 A: (1)请求与解释 (2)释放与保持 (3)释放与阻塞 (4)保持与等待 答案: 1.1. A—(6) 1. 2. A—(5) 1.3. A—(3) 1.4. A—(3) 1.5. A—(2) 1.6. A—(4) 1.7. A—(3) 1.8. A—(4) 1.9. A—(4) 1.10. A—(4) 判断题 1.计算型作业的优先权,应高于I/O型作业的优先权。 2.资源要求多的作业,其优先权应高于资源要求少的作业。 3.可以通过破坏产生死锁的四个必要条件之一或其中几个的方法,来预防发生死锁。 4. 用银行家算法避免死锁时,检测到进程已占用的资源数与本次申请的资源数之和不超过对资源的最大需求量,且现存资源能满足本次申请量,但不能满足尚需的最大需求量时才分

操作系统实验报告-作业调度

作业调度 一、实验目的 1、对作业调度的相关内容作进一步的理解。 2、明白作业调度的主要任务。 3、通过编程掌握作业调度的主要算法。 二、实验内容及要求 1、对于给定的一组作业, 给出其到达时间和运行时间,例如下表所示: 2、分别用先来先服务算法、短作业优先和响应比高者优先三种算法给出作业的调度顺序。 3、计算每一种算法的平均周转时间及平均带权周转时间并比较不同算法的优劣。

测试数据 workA={'作业名':'A','到达时间':0,'服务时间':6} workB={'作业名':'B','到达时间':2,'服务时间':50} workC={'作业名':'C','到达时间':5,'服务时间':20} workD={'作业名':'D','到达时间':5,'服务时间':10} workE={'作业名':'E','到达时间':12,'服务时间':40} workF={'作业名':'F','到达时间':15,'服务时间':8} 运行结果 先来先服务算法 调度顺序:['A', 'B', 'C', 'D', 'E', 'F'] 周转时间: 带权周转时间:

短作业优先算法 调度顺序:['A', 'D', 'F', 'C', 'E', 'B'] 周转时间: 带权周转时间:1. 响应比高者优先算法 调度顺序:['A', 'D', 'F', 'E', 'C', 'B'] 周转时间: 带权周转时间: 五、代码 #encoding=gbk workA={'作业名':'A','到达时间':0,'服务时间':6,'结束时间':0,'周转时间':0,'带权周转时间':0} workB={'作业名':'B','到达时间':2,'服务时间':50} workC={'作业名':'C','到达时间':5,'服务时间':20} workD={'作业名':'D','到达时间':5,'服务时间':10} workE={'作业名':'E','到达时间':12,'服务时间':40} workF={'作业名':'F','到达时间':15,'服务时间':8} list1=[workB,workA,workC,workD,workE,workF] list2=[workB,workA,workC,workD,workE,workF] list3=[workB,workA,workC,workD,workE,workF] #先来先服务算法 def fcfs(list): resultlist = sorted(list, key=lambda s: s['到达时间']) return resultlist #短作业优先算法 def sjf(list): time=0 resultlist=[] for work1 in list: time+=work1['服务时间'] listdd=[] ctime=0 for i in range(time): for work2 in list: if work2['到达时间']<=ctime: (work2) if len(listdd)!=0: li = sorted(listdd, key=lambda s: s['服务时间']) (li[0]) (li[0]) ctime+=li[0]['服务时间'] listdd=[]

计算机操作系统作业及答案

作业2 1.若1页大小为4KB,计算机地址总线为32位,则页号共有多少位?逻辑地址 空间最多包含多少页?逻辑地址60000在第几页?页内偏移是多少?若该页被装进物理块1280中,则物理地址是多少? 解:所以页内偏移即页内地址占 12 位页号占 32-12=20 位逻辑地址空间最大页数为页 60000=(EA60)16=(1110 1010 0110 0000)2 其中低 12 二进制位为页内偏移,即(A60)16=2656。高 4 二进制位为页号,即(E)16=14。物理块号1280=(500)16 物理地址=(500A60)16=5245536. 2.假定当前磁头位于100号磁道,进程对磁道的请求序列依次为57,61,39, 20,88,161,139,38,175。当采用先来先服务和最短寻道时间优先算法时,总的移动的磁道数分别是多少?(请给出寻道次序和每步移动磁道数) 解:先来先服务最短寻道时间优先 43 +4+ 22+ 19+ 68+ 73+ 22+ 101 + 137 = 489 12 + 27 + 4 +18 + 1+ 18 + 119 + 22 + 14 = 235 。 3.设系统中有三种类型的资源(A,B,C)和五个进程(P1,P2,P3,P4,P5), A资源的数量17,B资源的数量为5,C资源的数量为20。在T0时刻系统状态如下表所示。系统采用银行家算法来避免死锁。请回答下列问题: (1)T0时刻是否为安全状态?若是,请给出安全序列。 (2)若进程P4请求资源(2,0,1),能否实现资源分配?为什么? (3)在(2)的基础上,若进程P1请求资源(0,2,0),能否实现资源分配?为什么? 进程最大资源需求量已分配资源量系统剩余资源数量 A B C A B C A B C P1559212233 P2536402 P3******* P4425204

操作系统-计算题

四、计算题 1.有以下三个作业,分别采用先来先服务和短作业优先作业调度算法。试问它们的平均周转时间各是什么?是否还可以给出一种更好的调度算法,使其平均周转时间优于这两种调度算法? 解:(1)采用先来先服务作业调度算法时的实施过程如下。 这时,作业的调度顺序是1→2→3。其平均周转时间为:(8 + 11.6 + 12)/ 3 = 10.53 (2)采用短作业优先作业调度算法时的实施过程如下。

这里要注意,在作业1运行完毕进行作业调度时,作业2和3都已经到达。由于是实行短作业优先作业调度算法,因此先调度作业3运行,最后调度作业2运行。所以,这时的作业调度顺序是1→3→2。其平均周转时间为:(8 + 8 + 12.6)/ 3 = 9.53 (3)还可以有更好的作业调度算法,使其平均周转时间优于这两种调度算法。例如,如果知道在作业1后面会来两个短作业,那么作业1到达后,先不投入运行。而是等所有作业到齐后,再按照短作业优先作业调度算法进行调度,具体实施过程如下。 这时的作业调度顺序是3→2→1。其平均周转时间为:(1 + 5.6 + 14)/ 3 = 6.87 2.有一组作业,它们的到达时间和所需CPU时间如下所示,分别采用先来先服务和短作业优先作业调度算法,给出它们的调度顺序、作业周转时间以及平均周转时间。 解:(1)采用先来先服务作业调度算法时的实施过程如下:

这时,作业的调度顺序是1→2→3→4,其平均周转时间为:(70 + 60 + 60 + 45)/ 4 = 58.75 (2)采用短作业优先作业调度算法时的实施过程如下: 这时,作业的调度顺序是1→4→3→2,其平均周转时间为:(70 + 5 + 35 + 75)/ 4 = 46.25 三、简答题 1.对临界区的管理应遵循哪些基本准则? 答:为了合理利用临界资源,保证进程互斥地进入临界区,对临界区的管理应遵循以下准则: (1)空闲让进。当无进程处于临界区时,表明临界资源处于空闲状态,应允许一个请求进入临界区的进程立即进入自己的临界区,以有效地利用临界资源。 (2)忙则等待。当已有进程进入临界区时,表明临界资源正在被访问,因而其他试图进入临界区的进程必须等待,以保证对临界资源的互斥访问。 (3)有限等待。对要求访问临界资源的进程,应保证在有限时间内能进入自己的临界区,以免陷入“死等”状态。

操作系统作业调度实验报告

实验二作业调度 一.实验题目 1、编写并调试一个单道处理系统的作业等待模拟程序。 作业调度算法:分别采用先来先服务(FCFS),最短作业优先(SJF)的调度算法。 (1)先来先服务算法:按照作业提交给系统的先后顺序来挑选作业,先提交的先被挑选。 (2)最短作业优先算法:是以进入系统的作业所提出的“执行时间”为标准,总是优先选取执行时间最短的作业。 二.实验目的: 本实验要求用高级语言(C语言实验环境)编写和调试一个或多个作业调度的模拟程序,了解作业调度在操作系统中的作用,以加深对作业调度算法的理解 三.实验过程 <一>单道处理系统作业调度 1)单道处理程序作业调度实验的源程序: zuoye.c 执行程序: zuoye.exe 2)实验分析: 1、由于在单道批处理系统中,作业一投入运行,它就占有计算机的一切资源直到作业 完成为止,因此调度作业时不必考虑它所需要的资源是否得到满足,它所占用的 CPU 时限等因素。 2、每个作业由一个作业控制块JCB表示,JCB可以包含如下信息:作业名、提交时间、 所需的运行时间、所需的资源、作业状态、链指针等等。作业的状态可以是等待 W(Wait)、运行R(Run)和完成F(Finish)三种状态之一。每个作业的最初状态总是等待W。 3、对每种调度算法都要求打印每个作业开始运行时刻、完成时刻、周转时间、带权周 转时间,以及这组作业的平均周转时间及带权平均周转时间。 3)流程图:

代替 二.最短作业优先算法 代替 三.高响应比算法 图一.先来先服务流程图 4)源程序: #include #include #include #define getpch(type) (type*)malloc(sizeof(type)) #define NULL 0 int n; float T1=0,T2=0; int times=0; struct jcb //作业控制块 { char name[10]; //作业名 int reachtime; //作业到达时间

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

操作系统作业参考答案及其知识点 第一章 思考题: 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,结束。

操作系统习题

一、选择题 1.在三种基本类型的操作系统中,都设置了进程调度,在批处理系统中还应设置作业调度;在分时系统中除了设置进程调度,通常还设置中级调度,在多处理机系统中则还需设置剥夺调度。 2.在面向用户的调度准则中,截止时间的保证是选择实时调度算法的重要准则,响应时间快是选择分时系统中调度算法的重要准则,平均周转时间短是批处理系统中选择作业调度算法的重要准则,而优先权高的作业能获得优先服务准则则是为了照顾紧急作业用户的要求而设置的。 3.作业调度是从处于后备状态的队列中选取作业投入运行,周转时间是指作业进入系统到作业完成所经过的时间间隔,时间片轮转算法不适合作业调度。 4.下列算法中,FCFS算法只能采用非抢占调度方式,时间片轮转法只能采用抢占调度方式,而其余的算法既可采用抢占方式也可采用非抢占方式。 5.我们如果为每一个作业只建立一个进程,则为了照顾短作业用户,应采用短作业优先;为照顾紧急作业的用户,应采用基于优先权的剥夺调度算法;为能实现人机交互作用应采用时间片轮转法;为了兼顾短作业和长时间等待的用户,应采用高响应比优先;为了使短作业、长作业及交互作业用户都比较满意,应采用多级反馈队列调度算法;为了使平均周转时间最短,应采用短作业优先算法。 6.下列调度方式和算法中,最容易引起进程长期等待的是抢占式静态优先权优先算法。 7.下列选项中,降低进程优先级的最合理的时机是进程的时间片用完。 8.支持多道程序设计的操作系统在运行过程中,不断地选择新进程运行来实现CPU的共享,但其中有新进程进入就绪队列不是引起操作系统选择新进程的直接原因。 9.从下面关于优先权大小的论述中,选择一条正确的论述。 (6)在动态优先权时,随着进程执行时间的增加,其优先权降低。 10.假设就绪队列中有10个进程,以时间片轮转方式进行进程调度,时间片大小为300ms,CPU进行进程切换要花费10ms,则系统开销所占的比率约为%3,若就绪队列中进程的个数增加到20个,其余条件不变,则系统开销所占的比率将

操作系统实验报告-作业调度实验

作业调度实验 一.实验目的及要求: 用高级语言编写和调试一个或多个作业调度的模拟程序,以加深对作业调度算法的理解。 二. 实验环境: 操作系统:Windows XP 编译环境:Visual C++ 6.0 三.算法描述 由于在单道批处理系统中,作业一投入运行,它就占有计算机的一切资源直到作业完成为止,因此调度作业时不必考虑它所需要的资源是否得到满足,它所占用的 CPU时限等因素。 作业调度算法:采用先来先服务(FCFS)调度算法,即按作业提交的先后次序进行调度。总是首先调度在系统中等待时间最长的作业。 每个作业由一个作业控制块JCB表示,JCB可以包含如下信息:作业名、提交时间、所需的运行时间、所需的资源、作业状态、链指针等等。 作业的状态可以是等待W(Wait)、运行R(Run)和完成F(Finish)三种状态之一。每个作业的最初状态总是等待W。 各个等待的作业按照提交时刻的先后次序排队,总是首先调度等待队列中队首的作业。 每个作业完成后要打印该作业的开始运行时刻、完成时刻、周转时间和带权周转时间,这一组作业完成后要计算并打印这组作业的平均周转时间、带权平均周转时间。 四. 实验步骤: 1.、作业等待算法:分别采用先来先服务(FCFS),最短作业优先(SJF)调度算法。 对每种调度算法都要求打印每个作业开始运行时刻、完成时刻、周转时间、带权周转时间。 2.程序流程图

3、程序源码结构: void main() { void fcfs(); void sjf(); ... while(1){ printf("\n\t\t/* 1、fcfs */"); printf("\n\t\t/* 2、sjf */"); printf("\n\t\t/* 0、Exit */\n"); printf("\n\n\t请选择:\t"); scanf("%d",&a); printf("\n"); switch(a){ case 1: fcfs();break; case 2: sjf();break; default: break; } if(a!=1&&a!=2) break; } }

操作系统处理机调度练习题

1.下表给出作业1、2、3到达时间和运行时间。采用短作业优先调度算法和先来先 服务调度算法,试问平均周转时间各为多少?是否还有更好的调度策略存在?(时间单位:小时,以十进制进行计算。) 2.假设有四个作业,它们提交、运行时间如下表所示。若采用响应比高者优先调度算 法,试问平均周转时间和带权周转时间为多少?(时间单位:小时,以十进制进行计算。) a、 b、c,且满足a<b<c,试证明采用短作业优先调度算法能获得最小平均周转时间。 4.在单CPU和两台输入/输出设备(I1,I2)的多道程序设计环境下,同时投入三个作业 Job1、Job2、Job3运行。这三个作业对CPU和输入/输出设备的使用顺序和时间如下所示: 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.对下面的5个非周期性实时任务,按最早开始截止时间优先权调度算法应如何进行

A要求每20ms执行一次,执行时间为10ms;任务B要求50ms执行一次,执行时间为10ms;任务C要求 50ms执行一次,执行时间为15ms,应如何按最低松弛度优先算法对它们进行 CPU调度? 5.某系统有R1、R2和R3共3种资源,在T0时刻P1、P2、P3和P4 这4 个进程对资源的占用和需求情况见下表,此时系统的可用资源向量为(2,1, 2),问题: ①将系统中各种资源总数和此刻各进程对各资源的需求数目用向量或矩阵 表示出来; ②如果此时P1和P2均发出资源请求向量Request(1,0,1),为了保证系统的安 全性,应该如何分配资源给这两个进程,说明你所采用策略的原因。 6假定某计算机系统有R1(2)、R2(1)两类可再使用资源,它们被进程P1、P2所共享,两个进程均以下列顺序使用资源: ?申请R1?申请R2?申请R1?释放R1?释放R2?释放R1 ? 试求出系统可能到达的死锁点,并画出死锁点的资源分配图。

操作系统作业题及答案

《操作系统》课程作业 (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

操作系统(第二版)习题答案

第1章 一、填空 1.计算机由硬件系统和软件系统两个部分组成,它们构成了一个完整的计算机系统。 2.按功能划分,软件可分为系统软件和应用软件两种。 3.操作系统是在裸机上加载的第一层软件,是对计算机硬件系统功能的首次扩充。 4.操作系统的基本功能是处理机(包含作业)管理、存储管理、设备管理和文件管理。 5.在分时和批处理系统结合的操作系统中引入“前台”和“后台”作业的概念,其目的是改善系统功能,提高处理能力。 6.分时系统的主要特征为多路性、交互性、独立性和及时性。 7.实时系统与分时以及批处理系统的主要区别是高及时性和高可靠性。 8.若一个操作系统具有很强的交互性,可同时供多个用户使用,则是分时操作系统。 9.如果一个操作系统在用户提交作业后,不提供交互能力,只追求计算机资源的利用率、大吞吐量和作业流程的自动化,则属于批处理操作系统。 10.采用多道程序设计技术,能充分发挥CPU 和外部设备并行工作的能力。 二、选择 1.操作系统是一种 B 。 A.通用软件B.系统软件C.应用软件D.软件包2.操作系统是对 C 进行管理的软件。 A系统软件B.系统硬件C.计算机资源D.应用程序3.操作系统中采用多道程序设计技术,以提高CPU和外部设备的A。 A.利用率B.可靠性C.稳定性D.兼容性4.计算机系统中配置操作系统的目的是提高计算机的 B 和方便用户使用。 A.速度B.利用率C.灵活性D.兼容性5. C 操作系统允许多个用户在其终端上同时交互地使用计算机。 A.批处理B.实时C.分时D.多道批处理6.如果分时系统的时间片一定,那么 D ,响应时间越长。 A.用户数越少B.内存越少C.内存越多D.用户数越多 三、问答 1.什么是“多道程序设计”技术?它对操作系统的形成起到什么作用? 答:所谓“多道程序设计”技术,即是通过软件的手段,允许在计算机内存中同时存放几道相互独立的作业程序,让它们对系统中的资源进行“共享”和“竞争”,以使系统中

操作系统 之 处理机调度

实验2 处理机调度 一、实验要求 ●了解引起处理机调度的原因 ●分析先来先服务算法,给出代码注释 二、实验内容 进程调度算法的数据结构主要有:进程函数定义,建立进程函数,进程调度函数。示例: #include "stdio.h" #include #define max 100 #define pfree 0 /*process end*/ #define running 1 /*process running status*/ #define aready 2 /*process aready status */ #define blocking 3 /*process aready blocking status*/ typedef struct node { char name; int status; int precendence; int ax,bx,cx,dx; int pc; int psw; struct node *next; /*pcb define*/ }pcb; pcb *createprocess(pcb *head) { pcb *p,*q; int a,b,c,d,m,n; char ID; int s; q=NULL; printf("\ninput the first seven status pcb:"); scanf("\n%c",&ID); scanf("%d%d%d%d%d%d",&a,&b,&c,&d,&m,&n); while(ID!='*') {

p=(pcb*)malloc(sizeof(pcb)); p->name=ID; p->ax=a; p->bx=b; p->cx=c; p->dx=d; p->pc=m; p->psw=n; p->precendence=pre; p->status=aready; if(head==NULL) head=p; else q->next=p; q=p; printf("\ninput the next pcb: "); scanf("\n%c",&ID); scanf("%d%d%d%d%d%d",&a,&b,&c,&d,&m,&n); } if(q!=NULL) q->next=NULL; q=head; while(q) { printf("\n peocess name. status.ax. bx. cx. dx. pc. psw.\n "); printf("%10c%5d%8d%5d%5d%5d%5d%5d%5d",q->name,q->status,q->precende nce,q->ax,q->bx,q->cx,q->dx,q->pc,q->psw); q=q->next; } return head;/*createprocess end*/ } void processfifo(pcb *head) { pcb *p; p=head; printf("\n the process use fifo method.\n"); printf("running the frist process:\n"); while(p!=NULL) { p->status=running; printf("\nprocess name status. ax. bx. cx. dx. pc. psw."); printf("\n%10c%5d%8d%5d%5d%5d%5d%5d",p->name,p->status,p->ax,p->bx, p->cx,p->dx,p->pc,p->psw); /*check process running status */

操作系统习题及答案二学习资料

习题二处理器管理 一、单项选择题 1、操作系统中的作业管理是一种()。 A.宏观的高级管理 B.宏观的低级管理 C.系统刚开始加电 D.初始化引导完成 2、进程和程序的本质区别是(). A.存储在内存和外存 B.顺序和非顺序执行机器指今 C.分时使用和独占使用计算机资源 D.动态和静态特征 3、处于后备状态的作业存放在()中。 A.外存 B.内存 C.A和B D.扩展内存 4、在操作系统中,作业处于()时,已处于进程的管理之下。 A.后备 B.阻塞 C.执行 D.完成 5、在操作系统中,JCB是指()。 A.作业控制块 B.进程控制块 C.文件控制块 D.程序控制块 6、作业调度的关键在于()。 A.选择恰当的进程管理程序 B.选择恰当的作业调度算法 C.用户作业准备充分 D.有一个较好的操作环境 7、下列作业调度算法中,最短的作业平均周转时间是()。 A.先来先服务法 B. 短作业优先法 C. 优先数法 D. 时间片轮转法 8、按照作业到达的先后次序调度作业,排队等待时间最长的作业被优先调度,这是指() 调度算法。 A.先来先服务法 B. 短作业优先法 C.时间片轮转法 D. 优先级法 9、在批处理系统中,周转时间是()。 A.作业运行时间 B.作业等待时间和运行时间之和 C.作业的相对等待时间 D.作业被调度进入内存到运行完毕的时间 10、为了对紧急进程或重要进程进行调度,调度算法应采用()。 A.先来先服务法 B. 优先级法 C.短作业优先法 D. 时间片轮转法 11、操作系统中,()负责对进程进行调度。 A.处理机管理 B. 作业管理 C.高级调度管理 D. 存储和设备管理 12、一个进程被唤醒意味着()。 A.该进程重新占有了CPU B.进程状态变为就绪 C.它的优先权变为最大 D.其PCB移至就绪队列的队首 13、当作业进入完成状态,操作系统(). A.将删除该作业并收回其所占资源,同时输出结果 B.将该作业的控制块从当前作业队列中删除,收回其所占资源,并输出结果

操作系统实验 FCFS和短作业优先SJF调度算法模拟

. 题目先来先服务FCFS和短作业优先SJF进程调度算法 姓名: 学号: 专业: 学院: 指导教师:林若宁 二零一八年十一月

一、实验目的 模拟单处理器系统的进程调度,分别采用短作业优先和先来先服务的进程调度算法作为进程设计算法,以加深对进程的概念及进程调度算法的理解. 二、实验内容 1. 短作业优先调度算法原理 短作业优先调度算法,是指对短作业或断进程优先调度的算法。它们可以分别可以用于作业调度和进程调度。短作业优先调度算法,是从后备队列中选择一个或若干个运行时间最短的作业,将它们调入内存运行。短进程优先调度算法,是从就绪队列中选出一个估计运行时间最短的进程,将处理机分配给它使它立即执行并一直执行到完成,或发生某事件而被阻塞放弃处理机时再重新调度。 2. 先来先服务调度算法原理 先来先服务(FCFS)调度算法是一种最简单的调度算法,该算法既可用于作业调度,也可用于进程调度。当在作业调度中采用该算法时,每次调度都是从后备作业队列中选择一个或多个最先进入该队列的作业,将它们调入内存,为它们分配资源、创建进程,然后放入就绪队列。在进程调度中采用FCFS算法时,则每次调度是从就绪队列中选择一个最先进入该队列的进程,为之分配处理机,使之投入运行。该进程一直运行到完成或发生某事件而阻塞后才放弃处理机。 三、程序设计 1.概要设计 程序包括主函数、FCFS算法函数、SJF算法函数、输出函数;主函数流程:输入文件中的数据—显示各进程数据—选择算法—调用相应算法的函数—输出结果 2.算法流程

SJF算法流程图:

3.详细设计 (1)定义一个结构体 typedef struct PCB { char job_id[10]; //作业ID float Arr_time; //到达时刻 float Fun_time; //估计运行时间 float Wait_time; //等待时间 float Start_time; //开始时刻 float Fin_time; //完成时刻 float Tur_time; //周转时间 float WTur_time; //带权周转时间 int Order; //优先标记 }list; (2)先来先服务算法函数 void fcfs(list *p,int count) //先来先服务算法{ list temp; //临时结构体变量int i; int j;

计算机操作系统作业(一)(附答案)

一、单选题 1、(D)不是基本的操作系统。 A.批处理操作系统B.分时操作系统 C.实时操作系统D.网络操作系统 2、(A)不是分时系统的基本特征: A.同时性B.独立性 C.实时性D.交互性 3、实时操作系统追求的目标是(C )。 A.高吞吐率B.充分利用内存C.快速响应D.减少系统开销4、操作系统是为了提高计算机的[1 B]和方便用户使用计算机而配置的基本软件。它负责管理计算机系统中的[2 C],其中包括[3 F],[4 A],外部设备和系统中的数据。操作系统中的[3 F]管理部分负责对进程进行管理。操作系统对系统中的数据进行管理的部分通常叫做[5 B]。 供选择的答案: [1] A.速度B.利用率C.灵活性D.兼容性 [2] A.程序B.功能C.资源D.进程 [3] [4] A.主存储器B.虚拟存储器C.运算器 D.控制器E.微处理器F.处理机 [5] A.数据库系统B.文件系统C.检索系统 D.数据库E.数据存储系统F.数据结构 G.数据库管理系统

5、批处理系统的主要缺点是(B )。 A.CPU的利用率不高B.失去了交互性 C.不具备并行性D.以上都不是 6、操作系统是计算机系统的核心软件。按功能特征的不同,可把操作系统分为[1 B]、[2 E]、[3 C]、网络操作系统和分布式操作系统基本类型。其中[1 B]的主要目标是提高系统的吞吐率和效率,而[2 E]是一旦有处理请求和要求处理的数据时,CPU就应该立即处理该数据并将结果及时送回,例如[4 D]等。 供选择的答案: [1][2][3] A.单用户系统B.批处理系统C.分时系统 D.微机操作系统E.实时系统 [4] A.计算机激光照排系统B.办公自动化系统 C.计算机辅助设计系统D.航空订票系统 7、现代操作系统的两个基本特征是(C)和资源共享。 A.多道程序设计B.中断处理 C.程序的并发执行D.实现分时与实时处理 8、系统调用是由操作系统提供的内部调用,它(B)。 A.直接通过键盘交互方式使用 B.只能通过用户程序间接使用 C.是命令接口中的命令使用 D.与系统的命令一样

相关文档
最新文档