当前位置:文档之家› 操作系统习题集

操作系统习题集

第一章习题及答案二、单项选择题三、多项选择题四、是非判断题第二章习题及答案一、填空题六、综合应用题•1.某系统中进程有如下的状态变化图:请回答下列问题:(1)该系统采用了怎样的进程调度算法?说明理由。

(2)把图中发生①-④的状态变化原因填入下表中。

【参考答案】(1)该系统采用的是“时间片轮转调度算法”。

该调度算法让就绪进程按就绪的先后次序排成队列,每次总是选择就绪队列中的第一个进程占用处理器,但规定只能使用一个“时间片”。

如果一个时间片用完,进程工作尚未结束,则它也必须让出处理器而被重新排到就绪队列的末尾,等待再次运行,当再次轮到运行时,重新开始使用一个新的时间片。

这样,就绪队列中的进程就依次轮流地占用处理器运行。

(2)2.设某系统采用可抢占的优先级进程调度算法,系统在某一段时间内有A 、B 、C 三个进程,进程C 优先级最高,进程A 优先级最低,进程B 优先级介于进程A 、C 之间,它们的就绪时刻、计算与I/O 所需时间如下表所示:(1)若系统采用多道方式运行,给出这三个进程运行完成总共所需的时间,并用图示给出三个进程的实际运行过程(忽略进行系统调度所需时间)。

(2)采用多道方式运行比采用单道方式运行节省多少时间。

【参考答案】(1)若系统采用多道方式运行,这三个进程运行完成总共所需的时间为68ms 。

(图示略)(2)采用单道方式运行,这三个进程运行完成总共所需的时间为113ms采用多道方式运行比采用单道方式运行节省时间:113-68=45ms3.设某系统采用可抢占的优先级进程调度算法,在系统的就绪队列中有X 、Y、Z 三个进程,进程Z 优先级最高,进程X 优先级最低,进程Y 优先级介于进程X 、Z 之间,它们的计算与I/O 所需时间如下表所示:(1)若系统采用多道方式运行,给出这三个进程运行完成总共所需的时间,并用图示给出三个进程的实际运行过程(忽略进行系统调度所需时间)。

(2)采用多道方式运行比采用单道方式运行节省多少时间。

【参考答案】(1)若系统采用多道方式运行,这三个进程运行完成总共所需的时间为68ms 。

(图示略)(2)采用单道方式运行,这三个进程运行完成总共所需的时间为113ms采用多道方式运行比采用单道方式运行节省时间:113-68=45ms第三章 习题及答案四、是非判断题 五、简答题六、综合应用题1.有一128行、128列的整数数组A 在系统中按行存放。

系统采用页式存储管理,内存一个页面可放128个整数。

给数组A 赋值分别采用程序段(1)、程序段(2)时,各自产生的缺页中断次数为多少。

程序段(1):for i:=1 to 128 do for j:=1 to 128 do A[i][j]:=0;程序段(2):for j:=1 to 128 do for i:=1 to 128 do A[i][j]:=0;设在内存中给A 分配十个物理页面,并且开始时A 的第一个页面已在内存,当分别完成上述程序后, 【参考答案】采用代码(1)其访问顺序与数组存放顺序一致,由于第一页已在内存中,所以除了访问第一页时不发生缺页,对其余127页的访问均发生缺页,所以共发生128-1次缺页中断。

采用代码(2)其访问顺序是按列访问,与数组存放顺序不一致,经分析可知共发生128*128-1次缺页中断。

2.已知某系统采用虚拟页式存储管理,虚地址为16位,其中第10~15位为页号,0~9位为页内地址。

(1)假定某进程P 包含5页,操作系统为该进程在内存中固定分配了3个物理块,开始时为空。

设该进程运行时对页面的访问顺序为:1,2,1,0,4,1,3,4,2,1,4,1在采用FIFO (先进先出)、LRU (最近最少使用)两种置换算法的情况下,分别会产生多少次缺页?给出各自被淘汰的页。

(2)假定在时刻t ,进程P 只有第0、1、2页在内存中,对应物理块号分别为5、8、10。

下列虚拟地址是否在内存中。

若在给出相应的物理地址。

(a )0A4EH (b )122AH 【参考答案】 (1)FIFO 共发生9次缺页依次被淘汰的页为:1、2、0、4、1、3LRU 共发生7次缺页依次被淘汰的页为:2、0、1、3(2)(a)0A4EH对应的二进制为 0000 10,10 0100 1110该地址表明它对应第2页,根据已知该页在内存,对应物理块为10,所以,物理地址为: 0010 10,10 0100 1110 (十六进制为2A4EH)(b)122AH对应的二进制为 0001 00,10 0010 1010该地址表明它对应第4页, 根据已知该页不在内存中。

3.分页式存储空间的分配由于块的大小是固定的,可以用一张位示图来构成主存分配表。

现设主存有8192块,则可用字长为32位的256个字作为位示图。

若块号、字号、位号(从高位到低位)都是从0开始,试问4999块对应的字号和位号;129字的29位对应哪一块?【参考答案】依题目所给条件,已知位示图如下所示:4999÷32=156,余1。

所以4999块对应的字号为156,位号为1。

129字的29位对应的块号为:129*32+29=4157(块),即对应内存的第4157块。

4.某进程,若它对页面的访问串为: 7 0 1 2 0 3 0 4 2 3 0 3 2 1 2 0 1 7 0•••设运行开始时,内存中没有属于该进程的页面。

当分别用最近最少用(LRU)调度算法、先进先出(FIFO)调度算法实现页面更换时,写出相应的淘汰过程并给出各自依次淘汰页及缺页次数。

(设允许进程在内存中最多占三个页面)【参考答案】LRU更换算法:共发生12次缺页,依次淘汰页为:7 1 2 3 0 4 0 3 2FIFO更换算法:共发生14次缺页,依次淘汰页为:7 0 1 2 3 0 4 2 3 0 15.描述采用虚拟页式存储管理机制的系统,当发生缺页中断时系统的处理过程。

【参考答案】空闲页吗?页修改过吗?护现场择一页淘汰写回外存修改页表将该页调入内存,修改页表相应表目复现场,返回缺页中断6.某进程,若它对页面的访问串为:7 0 1 2 0 3 0 4 2 3 0 3 2 1 2 0 1 7 0 试用LRU、FIFO两种算法实现页面更换,并给出各自的缺页次数。

(设该进程在内存中占四个页架)【参考答案】M=4时,采用LRU算法,系统的淘汰过程:即F=8(次缺页)M=4时,采用FIFO算法,系统的淘汰过程:即F=10(次缺页)第四章习题及答案六、综合应用题1.说明文件的保护和保密各自的含义【参考答案】文件系统在实现文件共享时,应考虑文件的安全性,安全性体现在文件的保护和保密两个方面。

(一)文件的保护文件的保护是指防止文件被破坏。

造成文件可能被破坏的原因有时是硬件故障、软件失误引起的,有时是由于共享文件时引起错误,应根据不同的情况采用不同的保护措施。

(1)防止系统故障造成的破坏为了防止各种意外破坏文件,可以采用建立副本和定时转储的方法来保护文件。

(2)防止用户共享文件时造成的破坏为了防止不同用户使用文件时破坏文件,可规定各用户对文件的使用权限。

例如:只读、读/写、执行、不能删除等。

对多用户可共享的文件采用树形目录结构,能得到某级目录权限就可得到该级目录所属的全部目录和文件,按规定的存取权限去使用目录或文件。

(二)文件的保密文件的保密是指防止他人窃取文件。

“口令”和“密码”是两种常见的方法。

一旦为文件在目录中设置口令后,文件使用者必须提供口令,只有提供的口令与设置的口令一致时才可使用该文件,否则无法使用。

“密码”是把文件信息翻译成密码形式保存,使用时再解密。

密码的编码方式只限文件主及允许使用该文件的用户知道,但这种方法增加了文件编码和译码的开销。

第五章习题及答案五、简答题六、综合应用题1.假定磁盘的移动臂现在正处在第8柱面,有如下6个请求者等待访问磁盘,请你列出最省时间的响应次序:【参考答案】做这一题的基本思路是优先考虑柱面号,也就是先考虑对磁盘的查找优化,然后再考虑磁头号、扇区号的因素。

由于目前磁盘的移动臂正处在第8柱面,因此先响应(2)、(6)请求(因为,它们处于第7柱面),然后响应(1)、(4)请求(因为,它们处于第9柱面),再响应(3)请求,最后响应(5)请求。

最省时间的响应次序为:(2)、(6)、(1)、(4)、(3)、(5)其中,(2)、(6)顺序可颠倒,(1)、(4)顺序也可颠倒。

第六章习题及答案6.87六、综合应用题1.在一个多道程序设计系统中,不采用移动技术的可变分区方式管理内存。

设用户空间为100K,主存空间采用最先适应分配算法,采用计算机时间短的作业优先算法管理作业。

今有如所示的作业序列,请分别列出各个作业的开始执行时间、完成时间和周转时间(忽略系统开销)。

【参考答案】分析:由于JOB1、JOB2、JOB3、JOB4是依次到达输入井的,所以JOB1、JOB2进入内存;但在8.4时,由于JOB3主存需求量25K,系统不能满足其需求,因此不能进入内存;在8.6时,JOB4进入内存。

作业JOB1,8.0时进入内存后便开始执行,执行结束时间为9.0时,释放内存,但仍然不能满足JOB3主存需求量;接下来JOB2开始执行,从9.0时至9.6时,然后释放内存,此时JOB3进入内存;JOB4自9.6时开始执行至10.0时结束;最后JOB3从10.0时开始执行至10.5时结束。

每个作业的周转时间=“执行结束时间”―“进入输入井时间”平均周转时间=(1+1.4+2.1+1.4)/4=1.975(小时)第七章习题及答案六、综合应用题1.设有3个并发执行的进程:输入进程Pi、计算进程Pc和输出进程Po。

其中进程Pi不断地从键盘读入整数,放入缓冲区Buf1,Pc按输入顺序从Buf1中取数据,每次取出2个整数,计算其和,将结果放入缓冲区Buf2。

Po负责将Buf2中的数据按顺序输出。

设缓冲区Buf1、Buf2可存放的整数个数分别为m、n(m、n>0)。

要求利用信号量的P、V操作写出进程Pi、Pc、Po的算法。

【参考答案】设信号量e1,f1,e2,f2,其初值分别为:e1=m,f1=0,e2=n,f2=03个并发进程分别为:读者还可以考虑,通过引入下标变量对缓冲区进行存取。

2.今有3个并发进程R、M、P,它们共享一个缓冲器B。

进程R负责向B中输入数据;进程R每输入一数据,进程M对其进行加工;进程M加工完成后,进程P负责打印输出。

缓冲器B中每次只能存放一个数据,数据一旦被打印,进程R又可存放下一个数据,……。

它们之间的关系如图所示。

用PV操作机制进行控制,写出三个进程的工作流程。

【参考答案】设信号量e,f1,f2:semaphore;初值 e=1;f1=f2=0;四。

相关主题