操作系统复习题集及答案.docx

上传人:b****4 文档编号:6581924 上传时间:2023-05-10 格式:DOCX 页数:15 大小:27.92KB
下载 相关 举报
操作系统复习题集及答案.docx_第1页
第1页 / 共15页
操作系统复习题集及答案.docx_第2页
第2页 / 共15页
操作系统复习题集及答案.docx_第3页
第3页 / 共15页
操作系统复习题集及答案.docx_第4页
第4页 / 共15页
操作系统复习题集及答案.docx_第5页
第5页 / 共15页
操作系统复习题集及答案.docx_第6页
第6页 / 共15页
操作系统复习题集及答案.docx_第7页
第7页 / 共15页
操作系统复习题集及答案.docx_第8页
第8页 / 共15页
操作系统复习题集及答案.docx_第9页
第9页 / 共15页
操作系统复习题集及答案.docx_第10页
第10页 / 共15页
操作系统复习题集及答案.docx_第11页
第11页 / 共15页
操作系统复习题集及答案.docx_第12页
第12页 / 共15页
操作系统复习题集及答案.docx_第13页
第13页 / 共15页
操作系统复习题集及答案.docx_第14页
第14页 / 共15页
操作系统复习题集及答案.docx_第15页
第15页 / 共15页
亲,该文档总共15页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

操作系统复习题集及答案.docx

《操作系统复习题集及答案.docx》由会员分享,可在线阅读,更多相关《操作系统复习题集及答案.docx(15页珍藏版)》请在冰点文库上搜索。

操作系统复习题集及答案.docx

操作系统复习题集及答案

操作系统复习题集

三、简答题

1.分页存储管理存在的局限性是什么?

逻辑地址空间:

页是物理单位,共享困难、不便对代码进行分类管理,不能进行动态连接。

2.多道程序系统为什么能提高CPU的利用率?

利用了原来CPU空闲等待时间

3.文件的逻辑结构有哪些?

一种是无结构的流式文件,是指对文件内信息不再划分单位,它是依次的一串字符流构成的文件;一种是有结构的记录式文件, 是用户把文件内的信息按逻辑上独立的含义划分信息单位,每个单位称为一个逻辑记录(简称记录)。

所有记录通常都是描述一个实体集的,有着相同或不同数目的数据项,记录的长度可分为定长和不定长记录两类。

4.什么是设备独立性?

应用程序独立于具体使用的物理设备。

设备独立性又称为数据无关性。

它指的是应用程序在使用设备进行I/O时,使用的是逻辑设备,而系统在实际执行时使用的是物理设备,由操作系统负责逻辑设备与物理设备的映射。

5.为什么要引入线程,解释一下线程与进程之间的相互关系。

因为虽然进程可以提高CPU的利用率,但是进程之间的切换是非常耗费资源和时间的,为了能更进一步的提高操作系统的并发进,引进了线程.这样,进程是分配资源的基本单位,而线程则是系统调度的基本单位.一个进程内部的线程可以共享该进程的所分配到的资源.线程的创建与撤消,线程之间的切换所占用的资源比进程要少很多.总的来说就是为了更进一步提高系统的并发性,提高CPU的利用率. 线程是进程的基础,进程包含多个线程,是线程的载体。

6.死锁的必要条件是什么?

死锁:

当某进程提出资源申请后,使得系统中一些进程处于无休止的阻塞状态,在无外力作用下,永远不能再继续前进。

产生死锁的必要条件:

互斥条件:

某段时间内某资源只能由一个进程使用。

不剥夺条件:

资源在未使用完前,不能被剥夺,由使用进程释放。

部分分配(请求和保持):

进程因请求资源而阻塞时,对已分配给它的资源保持不放。

环路条件:

发生死锁时,有向图必构成一环路。

7.什么是虚拟内存?

虚拟内存是计算机系统内存管理的一种技术。

它使得应用程序认为它拥有连续的可用的内存(一个连续完整的地址空间),而实际上,它通常是被分隔成多个物理内存碎片,还有部分暂时存储在外部磁盘存储器上,在需要时进行数据交换。

8.假脱机技术是什么?

通过共享设备来模拟独享设备所采用的操作是假脱机操作,即在联机情况下外部设备设备同时操作。

所使用的假脱机技术称之为假脱机技术。

9.为银行取款机系统配备的操作系统应归类于什么类型的操作系统?

10.多道程序设计的主要优点是什么?

解:

多道程序设计是指在主存中同时存放多道用户作业,使它们都处于执行的开始点和结束点之间,这些程序共享计算机系统资源。

多道程序设计的主要优点有:

(1)提高CPU的利用率。

在多道程序环境下,多个程序共享计算机资源,当某个程序等待I/O操作时,CPU可以执行其他程序,大大提高了CPU的利用率。

(2)提高设备的利用率。

在多道程序环境下,多个程序共享系统的设备,大大提高系统设备的利用率。

(3)提高系统的吞吐量。

在多道程序环境下,减少了程序的等待时间,提高了系统的吞吐量。

11.请为的下面应用环境的计算机选择适合的操作系统。

(1)飞机的导航

(2)办公室自动化系统(3)航空订票系统(4)复杂的科学计算(5)图书检索系统

12.什么是并发、并行?

并发和并行是即相似又有区别的两个概念,并行是指两个或者多个事件在同一时刻发生;而并发是指两个或多个事件在同一时间间隔内发生。

在多道程序环境下,并发性是指在一段时间内宏观上有多个程序在同时运行,但在单处理机系统中,每一时刻却仅能有一道程序执行,故微观上这些程序只能是分时地交替执行。

倘若在计算机系统中有多个处理机,则这些可以并发执行的程序便可被分配到多个处理机上,实现并行执行,即利用每个处理机来处理一个可并发执行的程序,这样,多个程序便可以同时执行

13.什么是临界区?

一次仅允许一个进程使用的资源称为临界资源,在进程中对于临界资源访问的程序段称为临界区。

14.引入缓冲的目的是什么?

答:

(1)缓和外部设备和CPU的速度差异;

(2)减少CPU被中断的次数;(3)实现CPU和设备、设备和设备之间的并行操作。

15.设备驱动程序的主要任务是什么?

设备驱动程序是请求I/O的进程与设备控制器之间的一个通信程序,主要功能有:

①将用户的要求转换为具体要求。

②检查用户的合法性,了解设备状态,根据要求传递参数,设置设备的工作方式。

③向设备控制器发I/O命令启动设备,完成具体的I/O操作。

④及时响应外设的中断请求,根据中断类型调用相应的中断处理程序。

⑤具有通道的控制系统,还要构造通道程序。

四、综合题

1.信号量的PV操作解决进程的同步问题。

2.银行家算法判断系统状态是否安全。

3.分页系统中逻辑地址和物理地址的转换。

4.页面置换算法,主要掌握先进先出、LRU、最佳置换。

5.磁盘调度算法,包括FCFS、短寻道优先、电梯算法、LOOK算法等。

6.进程调度算法,包括FCFS、短任务优先、最短剩余时间优先、时间片轮转等。

综合题案例:

1.考虑下列进程集,进程占用的CPU区间长度以毫秒来计算:

假设在时刻0以进程P1,P2,P3,P4,P5的顺序到达。

a.画出4个Gantt图分别演示用FCFS、SJF、非抢占优先级(数字小代表优先级高)和RR(时间片=1)算法调度时进程的执行过程。

b.在a里每个进程在每种调度算法下的周转时间是多少?

c.在a里每个进程在每种调度算法下的等待时间是多少?

d.在a里哪一种调度算法的平均等待时间对所有进程而言最小?

答:

a.甘特图(看教材138页)

FCFS:

P1

P2

P3

P4

P5

01011131419

SJF:

P2

P4

P3

P4

P5

0124919

非抢占优先级:

P2

P5

P1

P3

P4

016161719

RR:

P1

P2

P3

P4

P5

P1

P3

P5

P1

P5

P1

P5

P1

P5

P1

P1

P1

P1

P1

019

b.周转时间

FCFS

RR

SJF

非抢占优先级

P1

10

19

19

16

P2

11

2

1

1

P3

13

7

4

18

P4

14

4

2

19

P5

19

14

9

6

c.等待时间

FCFS

RR

SJF

非抢占优先级

P1

0

9

9

6

P2

10

1

0

0

P3

11

5

2

16

P4

13

3

1

18

P5

14

9

4

2

d.SJF

2.考虑一个运行十个I/O限制任务和一个CPU限制任务的系统。

假设,I/O限制任务一次分配给一个I/O操作1毫秒的CPU计算,但每个I/O操作的完成需要10毫秒。

同时,假设间接的上下文切换要0.1毫秒,所有的进程都是长进程。

对一个RR调度来说,以下情况时CPU的利用率是多少:

a.时间片是1毫秒

b.时间片是10毫秒

答:

a.时间片是1毫秒:

不论是哪个进程被调度,这个调度都会为每一次的上下文切换花费一个0.1毫秒的上下文切换。

CPU的利用率是1/1.1*100=92%。

b.时间片是10毫秒:

这I/O限制任务会在使用完1毫秒时间片后进行一次上下文切换。

这个时间片要求在所有的进程间都走一遍,因此,10*1.1+10.1(因为每个I/O限定任务执行为1毫秒,然后承担上下文切换的任务,而CPU限制任务的执行10毫秒在承担一个上下文切换之前)。

因此,CPU的利用率是20/21.1*100=94%。

3.考虑下面的一个系统在某一时刻的状态:

AllocationMaxAvailable

ABCDABCDABCD

P0001200121520

P110001750

P213542356

P306320652

P400140656

使用银行家算法回答下面问题:

a.Need矩阵的内容是怎样的?

b.系统是否处于安全状态?

c.如果从进程P1发出一个请求(0420),这个请求能否被满足?

答:

a.Need矩阵的内容是

P0(0000)

P1(0750)

P2(1002)

P3(0020)

P4(0640)。

b..系统处于安全状态,因为Available矩阵等于(1520),进程P0和P3都可以运行,当进程P3运行完时,它释放它的资源,而允许其它进程运行。

c.可以被满足,满足以后,Available矩阵等于(1100),当以次序P0,P2,P3,P1,P4运行时候,可以完成运行。

4.按顺序给出5个部分的内存,分别是100KB,500KB,200KB,300KB和600KB,用first-fit,best-fit和worst-fit算法,能够怎样按顺序分配进程212KB,417KB,112KB,426KB和426KB?

哪个算法充分利用了内存空间?

答:

a.First-fit:

b.212Kisputin500Kpartition

c.417Kisputin600Kpartition

d.112Kisputin288Kpartition(newpartition288K=500K−212K)

e.426Kmustwait

f.Best-fit:

g.212Kisputin300Kpartition

h.417Kisputin500Kpartition

i.112Kisputin200Kpartition

j.426Kisputin600Kpartition

k.Worst-fit:

l.212Kisputin600Kpartition

m.417Kisputin500Kpartition

n.112Kisputin388Kpartition

o.426Kmustwait

Best-fit:

算法充分利用了内存空间。

5.考虑一个分页系统在内存中存储着一张页表。

a.如果内存的查询需要200毫秒,那么一个分页内存的查询需要多长时间?

b.如果我们加上相关联的寄存器,75%的页表查询可以在相关联的寄存器中找到,那么有效的查询时间是多少?

(假设如果入口存在的话,在相关的寄存器中找到页表入口不花费时间)

答:

a.400毫秒:

200毫秒进入页表,200毫秒进入内存中的字

b.有效进入时间=0.75*200毫秒+0.25*400毫秒=250毫秒

6.假设有一个请求调页存储器,页表放在寄存器中:

处理一个页错误,当有空的帧或被置换的页设有被修改过时要用8ms,当被置换的页被修改过明用20ms,存储器访问时间为100ns。

假设被置换的页中有70%被修改过,有效访问时间不超过200ns时最大可接受的页错误率是多少?

答:

0.2sec=(1−P)×0.1sec+(0.3P)×8millisec+(0.7P)×20millisec

0.1=−0.1P+2400P+14000P

0.1=16,400P

P=0.000006

7.假设一个请求调页系统具有一个平均访问和传输时间为20ms的分页磁盘。

地址转换是通过在主存中的页表来进行的,每次内存访问时间为1µs。

这样,每个通过页表进行的内存引用都要访问内存两次。

为了提高性能,加入一个相关内存,当页表项在相关内存中时,可以减少内存引用的访问次数。

假设80%的访问发生在相关内存中,而且剩下中的10%(总量的2%)会导致页错误。

内存的有效访问时间是多少?

答:

有效访问时间=(0.8)×(1µsec)+(0.1)×(2µsec)+(0.1)×(5002µsec)

=501.2µsec≈0.5millisec

8.某虚拟存储器的用户空间共有32个页面,每页1KB,主存16KB。

试问:

(1)逻辑地址的有效位是多少?

(2)物理地址需要多少位?

(3)假定某时刻系统用户的第0,1,2,3页分别分配的物理块号为5,10,4,7,试将虚地址0A5C和093C变换为物理地址。

(1)程序空间的大小为32KB,因此逻辑地址的有效位数是15位。

(2)内存空间的大小是16KB,因此物理地址至少需要14位。

(3)当页面为1KB时,虚地址0A5C表示页号为00010,页内地址是1001011100。

该页在内存的第4块,即块号为0100,因此0A5C的物理地址是01001001011100,即125CH。

(4)用同样的方法可以求得,093C的物理地址是113CH。

9.若在一分页存储管理系统中,某作业的页表如下所示。

已知页面大小为1024字节,试将逻辑地址1011,2148,3000,5012转化为相应的物理地址(注:

此处块号即为页面号)。

页号

块号

0

1

2

3

2

3

1

6

解本题中,为了描述方便,设页号为P,页内位移为W,逻辑地址为A,内存地址为M,页面大小为L,则

P=int(A/L)

W=AmodL

对于逻辑地址1011

P=int(1011/1024)=0

W=1011mod1024=1011

A=1101=(0,1101)

查页表第0页在第2块,所以物理地址为M=1024*2+1101=3059。

对于逻辑地址为2148

P=2148/1024=2

W=2148mod1024=100

A=2148=(2,100)

查页表第2页在第1块,所以物理地址为M=1024*1+100=1124。

对于逻辑地址为3000

P=3000/1024=2

W=3000mod1024=952

A=3000=(2,952)

查页表第2页在第1块,所以物理地址为M=1024*1+952=1976

对于逻辑地址5012

P=5012/1024=4

W=5012mod1024=916

因页号超过页表长度,该逻辑地址非法。

10.某段式存储管理系统中,有一作业的段表(SMT)如下表所示,求逻辑地址[0,65],[1,55],[2,90],[3,20]对应的主存地址(按十进制)。

(其中方括号中的第一个元素为段号,第二个元素为段内地址)

段号

段长(容量)

主存起始地址

状态

0

1

2

3

200

50

100

150

600

850

1000

1

1

1

0

解逻辑地址[0,65]:

对应的主存地址为600+65=665。

逻辑地址[1,55]:

因段内地址超过段长,所以产生段地址越界中断。

逻辑地址[2,90]:

对应的主存地址为1000+90=1090。

逻辑地址[3,20]:

因为状态位为0,即该段在辅存中,所以产生缺段中断。

11.对页面访问串:

1,2,3,4,1,2,5,1,2,3,4,5,指出在驻留集大为3时,使用FIFO、OPT和LRU替换算法的缺页次数。

(OPT和LRU如果出现多选项时使用FIFO)

答:

FIFO:

缺页11次

页面号

1

2

3

4

1

2

5

 

1

2

3

4

5

1

1

1

4

4

4

4

4

2

2

2

5

2

2

2

1

1

1

1

1

3

3

3

3

3

3

2

5

5

5

5

4

4

OPT:

缺页7次

页面号

1

2

3

4

 

1

 

2

5

 

1

 

2

3

4

 

5

1

1

1

1

1

1

1

1

1

3

3

3

2

2

2

2

2

2

2

2

2

4

4

3

4

4

4

5

5

5

5

5

5

LRU:

缺页10次

页面号

1

2

3

4

1

2

5

 

1

 

2

3

4

5

1

1

1

4

4

4

5

5

5

3

3

3

2

2

2

1

1

1

1

1

1

4

4

3

3

3

2

2

2

2

2

2

5

12.假设一个磁盘驱动器有5000个柱面,从0到4999,驱动器正在为柱面143的一个请求提供服务,且前面的一个服务请求是在柱面125.按FIFO顺序,即将到来的请求队列是

86,1470,913,1774,948,1509,1022,1750,130

从现在磁头位置开始,按照下面的磁盘调度算法,要满足队列中即将到来的请求要求磁头总的移动距离(按柱面数计)是多少?

a.FCFS

b.SSTF

c.SCAN

d.LOOK

e.C-SCAN

答:

a.FCFS的调度是143,86,1470,913,1774,948,1509,1022,1750,130。

总寻求距离是7081。

b.SSTF的调度是143,130,86,913,948,1022,1470,1509,1750,1774。

总寻求距离是1745。

c.SCAN的调度是143,913,948,1022,1470,1509,1750,1774,4999,130,86。

总寻求距离是9769。

d.LOOK的调度是143,913,948,1022,1470,1509,1750,1774,130,86。

总寻求距离是3319。

e.C-SCAN的调度是143,913,948,1022,1470,1509,1750,1774,4999,86,130。

总寻求距离是9813。

f.C-LOOK的调度是143,913,948,1022,1470,1509,1750,1774,86,130。

总寻求距离是3363。

13.假设有两个并发进程P1和P2,程序代码为

P1:

beginP2:

begin

A;C;

B;D;

endend

其中,A,B,C和D均为原语。

请给出P1和P2两个进程所有可能的执行过程。

答:

ABCD,ACBD,ACDB,CDAB,CABD,CADB

 

14.桌上有一空盘,只允许存放一个水果。

爸爸可向盘中放苹果,也可向盘中放桔子。

儿子专等吃盘中的桔子,女儿专等吃盘中的苹果。

规定当盘中空时一次只能放一只水果供吃者取用,请用P、V原语实现爸爸、儿子、女儿三个并发进程的同步。

分析在本题中,爸爸、儿子、女儿共用一个盘子,且盘中一次只能放一个水果。

当盘子为空时,爸爸可将一个水果放入果盘中。

若放入果盘中的是苹果,则允许女儿吃,儿子必须等待;若放入果盘中的是桔子,则允许儿子吃,女儿必须等待。

本题实际上是生产者-消费者问题的一种变形。

这里,生产者放入缓冲区的产品有两类,消费者也有两类,每类消费者只消费其中固定的一类产品。

解在本题中,应设置三个信号量S、So、Sa,信号量S表示盘子是否为空,其初值为1;信号量So表示盘中是否有桔子,其初值为0;信号量Sa表示盘中是否有苹果,其初值为0。

同步描述如下:

intS=1;

intSa=0;

intSo=0;

main()

{

cobegin

father();

son();

daughter();

coend

}

father()

{

while

(1)

{

P(S);

将水果放入盘中;

if(放入的是桔子)V(So);

elseV(Sa);

}

}

son()

{

while

(1)

{

P(So);

从盘中取出桔子;

V(S);

吃桔子;

}

}

daughter()

{

while

(1)

{

P(Sa);

从盘中取出苹果;

V(S);

吃苹果;

}

}

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

当前位置:首页 > 求职职场 > 简历

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

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