湖南大学操作系统期末考试卷2014

更新时间:2023-11-19 20:08:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

1. 什么是多道程序技术,它带来了什么好处?

答:多道程序技术即是指在内存中存放多道作业,运行结束或出错,自动调度内存中另一道作业运行。多道程序主要优点如下:

(1)资源利用率高。由于内存中装入了多道程序,使它们共享资源,保持系统资源处于忙碌状态,从而使各种资源得以充分利用。

(2)系统吞吐量大。由于CPU和其它系统资源保持“忙碌”状态,而且仅当作业完成或运行不下去时才切换,系统开销小,所以吞吐量大。

2. 系统调用是OS与用户程序的接口,库函数也是OS与用户程序的接口,这句话对吗?为什么?

答:不正确,系统调用可以看成是用户在程序一级请求OS为之服务的一种手段。而库函数则是在程序设计语言中,将一些常用的功能模块编写成函数,放在函数库中供公共选用。函数库的使用与系统的资源分配并无关系,仍属用户程序而非OS程序,其功能的实现并不由OS完成,且运行时仍在用户状态而非系统状态。

3. Which of the following components of program state are shared across threads in a multithreaded process? a. Register values b. Heap memory c. Global variables d. Stack memory

答:b、c 此处要简单说明原因

4. 下面哪种调度算法会导致饥饿?并说明原因。a. 先到先服务调

度 (FCFS) b. 最短作业优先调度(SJF) c. 轮转调度(RR) d. 优先级调度(Priority)

答:b(长作业的可能饥饿)、d(低优先级的可能饥饿) 5. 有结构文件可分为哪几类,其特点是什么?

答:有结构文件可分为以下三类,分别是:

(1)顺序文件。它是指由一系列记录,按某种顺序排列所形成的文件。

(2)索引文件。当记录为可变长度时,通常为之建立一张索引表,并为每个记录设置一表项,以加速对记录的检索速度。

(3)索引顺序文件。这是上述两种文件方式的结合,它为文件建立一张索引表,为每一组记录中的第一个记录设置一表项。 或者:连续、链式、索引。

6. 已知某系统页面长4K字节,页表项4字节,采用多层分页策略映射64位 虚拟地址空间。若限定最高层页表占1页,问它可以采用几层分页策略。

解答:

该系统虚拟地址空间为264字节,页面长212字节,页表每项4字节,即每页可放页表项的个数为210;最高层页表占1页,该页最多存放页表项个数为210;每项指向一页,每页又存放表项个数为210;依次类推,最多可以采用的分页策略的层数为[64/10]=6。

7. 有5个批处理的作业(A,B,C,D,E)几乎同时到达一个计算中心,估计的运行时间分别为2,4,6,8,10分钟,它们的优先数分别为1,2,3,4,5(1为最低优先级)。对下面的每种调度算法,分别计算作业的平均周转时间。

(1)最高优先级优先;

(2)时间片轮转(时间片为2分钟); (3)FIFO(作业到达顺序为C,D,B,E,A); (4)短作业优先。

答:(1)对最高优先级优先算法 作图

平均周转时间=110/5=22分钟; (2)对时间片轮转算法 作图

平均周转时间=90/5=18; (3)对FIFO算法 作图

平均周转时间=96/5=19.2分钟; (4)对短作业优先算法 作图

平均周转时间=70/5=14分钟。

8. Consider the following snapshot of a system:

Allocation Max Available

A B C D A B C D A B C D

P0 0 0 1 2 0 0 1 2 1 5 2 0

P1 1 0 0 0 1 7 3 0

P2 1 3 5 4 2 3 5 6

P3 0 6 3 2 0 6 4 2 P4 0 0 1 4 0 6 5 6 Answer the following questions using the banker’s algorithm:

a. What is the content of the matrix Need? b. Is the system in a safe state?

c. If a request from process P1 arrives for (0,4,2,0), can the request be granted immediately? 解: a. Need矩阵 A B C D P0 0 0 0 0 P1 0 7 3 0 P2 1 0 0 2 P3 0 0 1 0 P4 0 6 4 2

b.系统安全,如可以找到安全执行序列P0 P2 P3 P4 P1(安全序列不唯一)。 c.可以,因为给P1分配请求后,系统仍旧是安全的,如安全序列P0 P2 P3 P4 P1。 9. 在采用分页存贮管理系统中,地址结构长度为18位,其中11至17位表示页号,0至10位表示页内位移量。若有一作业依次被放入2、5、7号物理块中,相对地址1500处有一条指令store 1,2500。请问:

(1)主存容量最大可为多少K?分为多少块?每块有多大?

(2)上述指令和存数地址分别在几号页内?对应的物理地址又分别为多少? 解:(1)主存容量最大为218,即256K

可分为27块,即128块 每块大小为211,即2K

(2)相对地址为1500,没有超出一页的长度,所以指令所在页号为0号,数据存储在2500单元,页号为1号,相对偏移为2500-2048=452。

由题意:页号0、1、2的逻辑块(相对地址)分别放在2、5、7的物理块中,所以:

指令的物理地址为:2×2048+1500=5596 数据的物理地址为:5×2048+452=10692

10. 某寺庙,有小、老和尚若干,有一水缸,由小和尚提水入缸供老和尚饮用。水缸可容10桶水,水取自同一井中。水井径窄,每次只能容一个桶取水。水桶总数为3个。每次入、取缸水仅为1桶,且不可同时进行。试给出有关取水,入水的算法描述(试用信号量写出两个进程的同步算法)。

答:应首先考虑清楚本题需要几个进程。从井中取水后向缸中倒水此为连续动作,可算同一进程,从缸中取水为另一进程。再考虑信号量,有关互斥的资源有水井(一次仅一个水桶进出),水缸(一次入、取水为一桶),分别为之设信号量mutex1,mutex2控制互斥;另有同步问题存在:三个水桶无论从井中取水还是入出水缸都是一次一个,应为之设信号量count,抢不到水桶的进程只好等待;还有水缸满时,不可入水,设信号量empty,控制入水量,水缸空时不可出水,设信号量full,控制出水量。

semaphore mutex1= 1, mutex2 = 1; semaphore empty = 10, full = 0, count = 3; 从井中打水入缸中:

do {

P(empty); P(count); P(mutex1); 从井中取水; V(mutex1); P(mutex2); 送入水缸; V(mutex2); V(count); V(full); while(1);

从缸中取水: do {

P(full); P(count); P(mutex2); 从缸中取水;

V(mutex2); V(count); V(empty);

while(1);

注:P、V可以分别写为wait、signal

本文来源:https://www.bwwdw.com/article/5fov.html

Top