文档库 最新最全的文档下载
当前位置:文档库 › 计算机操作系统答案

计算机操作系统答案

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

第一章os引论

1. 设计现代OS的主要目标是什么?方便性,有效性,可扩充性和开放性.

2. OS的作用可表现为哪几个方面?a. OS作为用户与计算机硬件系统之间的接口;b. OS作为计算机系统资源的管理者;c. OS作为扩充机器.

4. 试说明推动多道批处理系统形成和发展的主要动力是什么?不断提高计算机资源利用率和系统吞吐量的需要;

5.何谓脱机I/O和联机I/O?a. 脱机输入输出方式(Off-Line I/O)是为了解决人机矛盾及CPU和I/O设备之间速度不匹配而提出的.

它减少了CPU的空闲等待时间,提高了I/O速度.具体内容是将用户程序和数据在一台外围机的控制下,预先从低速输入设备输入到磁带上,当CPU需要这些程序和数据时,在直接从磁带机高速输入到内存,从而大大加快了程序的输入过程,减少了CPU等待输入的时间,这就是脱机输入技术;当程序运行完毕或告一段落,CPU需要输出时,无需直接把计算结果送至低速输出设备,而是高速把结果输出到磁带上,然后在外围机的控制下,把磁带上的计算结果由相应的输出设备输出,这就是脱机输出技术.

b. 若这种输入输出操作在主机控制下进行则称之为联机输入输出方式.

6.试说明推动分时系统形成和发展的主要动力是什么?

用户的需要.即对用户来说,更好的满足了人-机交互,共享主机以及便于用户上机的需求.

7. 实现分时系统的关键问题是什么?应如何解决?

a. 关键问题:及时接收,及时处理;

b. 对于及时接收,只需在系统中设置一多路卡,多路卡作用是使主机能同时接收用户从各个终端上输入的数据;

---对于及时处理,应使所有的用户作业都直接进入内存,在不长的时间内,能使每个作业都运行一次. 8为什么要引入实时操作系统?

更好地满足实时控制领域和实时信息处理领域的需要.

12 试从交互性,及时性和可靠性方面,将分时系统与实时系统进行比较.

a. 分时系统是一种通用系统,主要用于运行终端用户程序,因而它具有较强的交互能力;而实时系统

虽然也有交互能力,但其交互能力不及前者.

b. 实时信息系统对实用性的要求与分时系统类似,都是以人所能接收的等待时间来确定;而实时控制

系统的及时性则是以控制对象所要求的开始截止时间和完成截止时间来确定的.

c. 实时系统对系统的可靠性要求要比分时系统对系统的可靠性要求高.

13 OS具有哪几大特征?它的最基本特征是什么?

a. 并发(Concurrence),共享(Sharing),虚拟(Virtual),异步性(Asynchronism).

b. 其中最基本特征是并发和共享.

14 处理机管理具有哪些功能?它们的主要任务是什么?

a. 进程控制,进程同步,进程通信和调度.

b. 进程控制的主要任务是为作业创建进程,撤销已结束的进程,以及控制进程在运行过程中的状态转换.

---进程同步的主要任务是对诸进程的运行进行调节.

---进程通信的任务是实现在相互合作进程之间的信息交换.

---调度分为作业调度和进程调度.作业调度的基本任务是从后备队列中按照一定的算法,选择出若干个作业,为它们分配必要的资源;而进程调度的任务是从进程的就绪队列中,按照一定的算法选出一新进程,把处理机分配给它,并为它设置运行现场,是进程投入运行.

15 内存管理有哪些主要功能?它们的主要任务是什么?

a. 主要功能: 内存分配,内存保护,地址映射和内存扩充等.

b. 内存分配的主要任务是为每道程序分配内存空间,提高存储器利用率,以减少不可用的内存空间,

允许正在运行的程序申请附加的内存空间,以适应程序和数据动态增长的需要.

---内存保护的主要任务是确保每道用户程序都在自己的内存空间中运行,互不干扰.

---地址映射的主要任务是将地址空间中的逻辑地址转换为内存空间中与之对应的物理地址.

---内存扩充的主要任务是借助虚拟存储技术,从逻辑上去扩充内存容量.

16 设备管理有哪些主要功能?其主要任务是什么?

a. 主要功能: 缓冲管理,设备分配和设备处理,以及虚拟设备等.

b. 主要任务: 完成用户提出的I/O请求,为用户分配I/O设备;提高CPU和I/O设备的利用率;提高I/O 速度;以及方便用户使用I/O设备.

17 文件管理有哪些主要功能?其主要任务是什么?

a. 主要功能: 对文件存储空间的管理,目录管理,文件的读,写管理以及文件的共享和保护.

b. 主要任务: 对用户文件和系统文件进行管理,以方便用户使用,并保证文件的安全性.

18 是什么原因使操作系统具有异步性特征?

a. 程序执行结果是不确定的,即程序是不可再现的.

b. 每个程序在何时执行,多个程序间的执行顺序以及完成每道程序所需的时间都是不确定的,即不可预知性.

第二章

2. 试画出下面条语句的前趋图:

S1: a=5-x; S2: b=a*x; S3: c=4*x; S4: d=b+c; S5: e=d+3.

S1->S2->S4->S5

......../

......S3

3. 程序并发执行为什么会产生间断性?

因为程序在并发执行过程中存在相互制约性.

4. 程序并发执行为什么会失去封闭性和可再现性?

因为程序并发执行时,多个程序共享系统中的各种资源,资源状态需要多个程序来改变,即存在资源共享性使程序失去封闭性;而失去了封闭性导致程序失去可再现性.

5. 在操作系统中为什么要引入进程概念?它会产生什么样的影响?

为了使程序在多道程序环境下能并发执行,并能对并发执行的程序加以控制和描述,而引入了进程概念. 影响: 使程序的并发执行得以实行.

6. 试从动态性,并发性和独立性上比较进程和程序?

a. 动态性是进程最基本的特性,可表现为由创建而产生,由调度而执行,因得不到资源而暂停执行,

以及由撤销而消亡,因而进程由一定的生命期;而程序只是一组有序指令的集合,是静态实体.

b. 并发性是进程的重要特征,同时也是OS的重要特征.引入进程的目的正是为了使其程序能和其它进程的程序并发执行,而程序是不能并发执行的.

c. 独立性是指进程实体是一个能独立运行的基本单位,同时也是系统中独立获得资源和独立调度的基本单位.而对于未建立任何进程的程序,都不能作为一个独立的单位参加运行.

7. 试说明PCB的作用?为什么说PCB是进程存在的唯一标志?

a. PCB是进程实体的一部分,是操作系统中最重要的记录型数据结构.PCB中记录了操作系统所需的用于描述进程情况及控制进程运行所需的全部信息.因而它的作用是使一个在多道程序环境下不能独立运行

的程序(含数据),成为一个能独立运行的基本单位,一个能和其它进程并发执行的进程.

b. 在进程的整个生命周期中,系统总是通过其PCB对进程进行控制,系统是根据进程的PCB而不是任何别的什么而感知到该进程的存在的,所以说,PCB是进程存在的唯一标志.

8. 试说明进程在三个基本状态之间转换的典型原因.

a. 处于就绪状态的进程,当进程调度程序为之分配了处理机后,该进程便由就绪状态变为执行状态.

b. 当前进程因发生某事件而无法执行,如访问已被占用的临界资源,就会使进程由执行状态转变为阻

塞状态.

c. 当前进程因时间片用完而被暂停执行,该进程便由执行状态转变为就绪状态.

9. 为什么要引入挂起状态?该状态具有哪些性质?

a. 引入挂起状态处于5中需要: 终端用户的需要,父进程的需要,操作系统的需要,对换的需要和负荷调节的需要.

b. 处于挂起状态的进程不能接收处理机调度.

10 在进行进程切换时,所要保存的处理机状态信息主要有哪些?

a. 进程当前暂存信息;

b. 下一条指令地址信息;

c. 进程状态信息;

d. 过程和系统调用参数及调用地址信息.

11 试说明引起进程创建的主要事件.

a. 用户登陆;

b. 作业调度;

c. 提供服务;

d. 应用请求.

12 试说明引起进程撤消的主要事件.

a. 正常结束;

b. 异常结束;

c. 外界干预;

13 在创建一个进程时,需完成的主要工作是什么?

a. 操作系统发现请求创建新进程事件后,调用进程创建原语Creat();

b. 申请空白PCB;

c. 为新进程分配资源;

d. 初始化进程控制块;

e. 将新进程插入就绪队列.

14 在撤消一个进程时,需完成的主要工作是什么?

a. OS调用进程终止原语;

b. 根据被终止进程的标志符,从PCB集合中检索出该进程的PCB,从中读出该进程的状态;

c. 若被终止进程正处于执行状态,应立即中止该进程的执行,并设置调度标志为真;

d. 若该进程还有子孙进程,还应将其所有子孙进程予以终止;

e. 将该进程所拥有的全部资源,或者归还给其父进程,或者归还给系统;

f. 将被终止进程(它的PCB)从所在队列(或链表)中移出,等待其它程序来搜集信息.

15 试说明引起进程阻塞或被唤醒的主要事件是什么?

a. 请求系统服务;

b. 启动某种操作;

c. 新数据尚未到达;

d. 无新工作可做.

17. 为什么进程在进入临界区之前,应先执行"进入区"代码,在退出临界区后又执行"退出区"代码?

为了实现多个进程对临界资源的互斥访问,必须在临界区前面增加一段用于检查欲访问的临界资源是否正被访问的代码,如果未被访问,该进程便可进入临界区对资源进行访问,并设置正被访问标志,如果正被访问,则本进程不能进入临界区,实现这一功能的代码成为"进入区"代码;在退出临界区后,必须执行"退出区"代码,用于恢复未被访问标志.

18. 同步机构应遵循哪些基本准则?为什么?

a. 空闲让进.

b. 忙则等待.

c. 有限等待.

d. 让权等待.

20. 你认为整型信号量机制和记录型信号量机制,是否完全遵循了同步机构的四条准则?

a. 在整型信号量机制中,未遵循"让权等待"的准则.

b. 记录型信号量机制完全遵循了同步机构的"空闲让进,忙则等待,有限等待,让权等待"四条准则.

23. 在生产者-消费者问题中,如果缺少了signal(full)或signal(empty),对执行结果会有何影响?

生产者-消费者问题可描述如下:

var mutex,empty,full: semaphore:=1,n,0;

buffer: array[0,...,n-1] of item;

in,out: integer:=0,0;

begin

parbegin

producer: begin

repeat

.

produce an item in nextp;

.

.

wait(empty);

wait(mutex);

buffer(in):=nextp;

in:=(in+1) mod n;

signal(mutex);

/* ************** */

signal(full);

/* ************** */

until false;

end

consumer: begin

repeat

wait(full);

wait(mutex);

nextc:=buffer(out);

out:=(out+1) mod n;

signal(mutex);

/* ************** */

signal(empty);

/* ************** */

consume the item in nextc;

until false;

end

parend

end

可见,生产者可以不断地往缓冲池送消息,如果缓冲池满,就会覆盖原有数据,造成数据混乱.而消费者始终因wait(full)操作将消费进程直接送入进程链表进行等待,无法访问缓冲池,造成无限等待.

24. 在生产者-消费者问题中,如果将两个wait操作即wait(full)和wait(mutex)互换位置;或者是将signal(mutex)与signal(full)互换位置结果会如何?

var mutex,empty,full: semaphore:=1,n,0;

buffer: array[0,...,n-1] of item;

in,out: integer:=0,0;

begin

parbegin

producer: begin

repeat

.

.

produce an item in nextp;

.

wait(empty);

wait(mutex);

buffer(in):=nextp;

in:=(in+1) mod n;

/* ***************** */

signal(full);

signal(mutex);

/* ***************** */

until false;

end

consumer: begin

repeat

/* **************** */

wait(mutex);

wait(full);

/* **************** */

nextc:=buffer(out);

out:=(out+1) mod n;

signal(mutex);

signal(empty);

consume the item in nextc;

until false;

end

parend

end

wait(full)和wait(mutex)互换位置后,因为mutex在这儿是全局变量,执行完wait(mutex),则mutex 赋值为0,倘若full也为0,则该生产者进程就会转入进程链表进行等待,而生产者进程会因全局变量mutex 为0而进行等待,使full始终为0,这样就形成了死锁.

而signal(mutex)与signal(full)互换位置后,从逻辑上来说应该是一样的.

25. 我们为某临界区设置一把锁W,当W=1时,表示关锁;W=0时,表示锁已打开.试写出开锁原语和关锁原语,并利用它们去实现互斥.

开锁原语:

unlock(W):

W=0;

关锁原语:

lock(W);

if(W==1) do no_op;

W=1;

利用开关锁原语实现互斥:

var W: semaphore:=0;

begin

parbegin

process :

repeat

lock(W);

critical section

unlock(W);

remainder section

until false;

end

parend

26. 试修改下面生产者-消费者问题解法中的错误:

producer:

begin

repeat

.

.

producer an item in nextp;

wait(mutex);

wait(full); /* 应为wait(empty),而且还应该在wait(mutex)的前面 */

buffer(in):=nextp;

/* 缓冲池数组游标应前移: in:=(in+1) mod n; */

signal(mutex);

/* signal(full); */

until false;

end

consumer:

begin

repeat

wait(mutex);

wait(empty); /* 应为wait(full),而且还应该在wait(mutex)的前面 */

nextc:=buffer(out);

out:=out+1; /* 考虑循环,应改为: out:=(out+1) mod n; */

signal(mutex);

/* signal(empty); */

consumer item in nextc;

until false;

end

27. 试利用记录型信号量写出一个不会出现死锁的哲学家进餐问题的算法.

设初始值为1的信号量c[I]表示I号筷子被拿(I=1,2,3,4,...,2n),其中n为自然数. send(I):

Begin

if I mod 2==1 then

{

P(c[I]);

P(c[I-1 mod 5]);

V(c[I-1 mod 5]);

V(c[I]);

}

else

{

P(c[I-1 mod 5]);

P(c[I]);

Eat;

V(c[I]);

V(c[I-1 mod 5]);

}

End

28. 在测量控制系统中的数据采集任务,把所采集的数据送一单缓冲区;计算任务从该单缓冲中取出数据进行计算.试写出利用信号量机制实现两者共享单缓冲的同步算法.

int mutex=1;

int empty=n;

int full=0;

int in=0;

int out=0;

main()

{

cobegin

send();

obtain();

coend

}

send()

{

while(1)

{

.

.

collect data in nextp;

.

.

wait(empty);

wait(mutex);

buffer(in)=nextp;

in=(in+1) mod n;

signal(mutex);

signal(full);

}

}//send

obtain()

{

while(1)

{

wait(full);

wait(mutex);

nextc:=buffer(out);

out:=(out+1) mod n;

signal(mutex);

signal(empty);

culculate the data in nextc;

}//while

}//obtain

29 画图说明管程由哪几部分组成?为什么要引入条件变量?

管程由三部分组成:局部于管程的共享变量说明;对该数据结构进行操作的一组过程;对局部于管程的

数据设置初始值的语句. (图见P59)因为调用wait原语后,使进程等待的原因有多种,为了区别它们,引入了条件变量.

30.如何利用管程来解决生产者-消费者问题?

(见P60)

31.什么是AND信号量?试利用AND信号量写出生产者-消费者问题的解法.

为解决并行所带来的死锁问题,在wait操作中引入AND条件,其基本思想是将进程在整个运行过程中所需要的所有临界资源,一次性地全部分配给进程,用完后一次性释放.

解决生产者-消费者问题可描述如下:

var mutex,empty,full: semaphore:=1,n,0;

buffer: array[0,...,n-1] of item;

in,out: integer:=0,0;

begin

parbegin

producer: begin

repeat

.

.

produce an item in nextp;

.

.

wait(empty);

wait(s1,s2,s3,...,sn); //s1,s2,...,sn为执行生产者进程除empty外其余的条件

wait(mutex);

buffer(in):=nextp;

in:=(in+1) mod n;

signal(mutex);

signal(full);

signal(s1,s2,s3,...,sn);

until false;

end

consumer: begin

repeat

wait(full);

wait(k1,k2,k3,...,kn); //k1,k2,...,kn为执行消费者进程除full外其余的条件

wait(mutex);

nextc:=buffer(out);

out:=(out+1) mod n;

signal(mutex);

signal(empty);

signal(k1,k2,k3,...,kn);

consume the item in nextc;

until false;

end

parend

end

33.试比较进程间的低级通信工具与高级通信工具.

用户用低级通信工具实现进程通信很不方便,因为其效率低,通信对用户不透明,所有的操作都必须由程序员来实现. 而高级通信工具则可弥补这些缺陷,用户可直接利用操作系统所提供的一组通信命令,高效地传送大量的数据.

第三章

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

a. 作业调度又称宏观调度或高级调度,其主要任务是按一定的原则对外存上处于后备状态的作业进行选择,给选中的作业分配内存,输入输出设备等必要的资源,并建立相应的进程,以使该作业的进程获得竞争处理机的权利.

b. 进程调度又称微观调度或低级调度,其主要任务是按照某种策略和方法选取一个处于就绪状态的进程,将处理机分配给它.

c. 为了提高内存利用

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

a. 面向用户的准则有周转时间短,响应时间快,截止时间的保证,以及优先权准则.

b. 面向系统的准则有系统吞吐量高,处理机利用率好,各类资源的平衡利用.

11.在时间片轮转法中,应如何确定时间片的大小?

a.系统对响应时间的要求;

b.就绪队列中进程的数目;

c.系统的处理能力。

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

a. 对于终端型作业用户,由于终端型作业用户所提交的作业,大都属于交互型作业,系统只要能使这些作业(进程)在第一队列所规定的时间片内完成,便可使终端型作业用户都感到满意.

b. 对于短批处理作业用户,很短的批处理型作业如果仅在第一队列中执行一个时间片即可完成,便可获得与终端型作业一样的相应时间.对于稍长的作业,通常也只需在第二队列和第三队列中各执行-一个时间片即可完成,其周转时间仍然很短.

c. 对于长批处理作业用户,用户也不必担心其作业长期得不到处理.

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

a. 死锁是指多个进程因竞争资源而造成的一种僵局,若无外力作用,这些进程都将永远不能再向前推进;

b. 产生死锁的原因有二,一是竞争资源,二是进程推进顺序非法;

c. 必要条件是: 互斥条件,请求和保持条件,不剥夺条件和环路等待条件.

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

a. 解决死锁可归纳为四种方法: 预防死锁,避免死锁,检测死锁和解除死锁;

b. 其中,预防死锁是最容易实现的;

c. 避免死锁使资源的利用率最高.

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

a. 摈弃"请求和保持"条件,就是如果系统有足够的资源,便一次性地把进程所需的所有资源分配给它;

b. 摈弃"不剥夺"条件,就是已经保持了资源的进程,当它提出新的资源请求而不能立即得到满足时,必须释放它已经保持的所有资源,待以后需要时再重新申请;

c. 摈弃"环路等待"条件,就是将所有资源按类型排序标号,所有进程对资源的请求必须严格按序号递增的次序提出.

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

可以.首先,Request0(0,1,0)<=Need0(7,4,3), Request0(0,1,0)<=Available(2,3,0);

分配后可修改得一资源数据表(表略),进行安全性检查,可以找到一个安全序列{P1,P4,P3,P2,P0},

或{P1,P4,P3,P0,P2},因此,系统是安全的,可以立即将资源分配给P0.

第四章

2. 可采用哪几种方式将程序装入内存?它们分别适用于何种场合?

a. 首先由编译程序将用户源代码编译成若干目标模块,再由链接程序将编译后形成的目标模块和所需的库函数链接在一起,组成一个装入模块,再由装入程序将装入模块装入内存;

b. 装入模块的方式有: 绝对装入方式,可重定位方式和动态运行时装入方式;

c. 绝对装入方式适用于单道程序环境下;

d. 可重定位方式适用于多道程序环境下;

e. 动态运行时装入方式也适用于多道程序环境下.

3. 何谓静态链接?何谓装入时动态链接和运行时的动态链接?

a. 静态链接是指事先进行链接形成一个完整的装入模块,以后不再拆开的链接方---式;

b. 装入时动态链接是指目标模块在装入内存时,边装入边链接的链接方式;

c. 运行时的动态链接是将某些目标模块的链接推迟到执行时才进行.

4. 在进行程序链接时,应完成哪些工作?a. 对相对地址进行修改;b. 变换外部调用符号.

5. 在动态分区分配方式中,应如何将各空闲分区链接成空闲分区链?

应在每个分区的起始地址部分,设置一些用于控制分区分配的信息,以及用于链接各分区的前向指针;

在分区尾部则设置一后向指针,通过前,后向指针将所有的分区链接成一个双向链.

6. 为什么要引入动态重定位?如何实现?

a. 为了在程序执行过程中,每当访问指令或数据时,将要访问的程序或数据的逻辑地址转换成物理地址,引入了动态重定位.

b. 可在系统中增加一个重定位寄存器,用它来装入(存放)程序在内存中的起始地址,程序在执行时,真正访问的内存地址是相对地址与重定位寄存器中的地址相加而形成的,从而实现动态重定位.

7. 在采用首次适应算法回收内存时,可能出现哪几种情况?应怎样处理这些情况?

a. 回收区与插入点的前一个分区相邻接,此时可将回收区与插入点的前一分区合并,不再为回收分区分配新表项,而只修改前邻接分区的大小;

b. 回收分区与插入点的后一分区相邻接,此时合并两区,然后用回收区的首址作为新空闲区的首址,大小为两者之和;

c. 回收区同时与插入点的前后两个分区邻接,此时将三个分区合并,使用前邻接分区的首址,大小为-三区之和,取消后邻接分区的表项;

d. 回收区没有邻接空闲分区,则应为回收区单独建立一个新表项,填写回收区的首址和大小,并根据其首址,插入到空闲链中的适当位置.

10. 在系统中引入对换后带有哪些好处?

能将内存中暂时不运行的进程或暂时不用的程序和数据,换到外存上,以腾出足够的内存空间,把已具备运行条件的进程或进程所需的程序和数据换入内存,从而大大地提高了内存的利用率.

11. 为实现对换,系统应具备哪几方面功能?

a. 对对换空间的管理;

b. 进程的换出;

c. 进程的换入.

12.在以进程为单位进行对换时,每次是否都将整个进程换出?为什么?a. 以进程为单位进行对换时,每次都将整个进程换出;b. 目的为了解决内存紧张的问题,提高内存的利用率.

14 较较详细地说明引入分段存储管理是为了满足用户哪几方面的需要?a. 方便了编程;b. 实现了分段共享;c. 实现了分段保护;d. 实现了动态链接;e. 实现了动态增长.

15 在具有快表的段页式存储管理方式中,如何实现地址变换?

首先,必须配置一段表寄存器,在其中存放段表始址和段长TL. 进行地址变换时,先利用段号S,与段长TL进行比较,若S=TL,表示段号太大,访问越界,产生越界中断信号)于是利用段表始址和段号来求出该段对应的段表项在段表中的位置,从中求出该段的页表始址,并利用逻辑地址中的段内页号P来获得对应页的页表项位置,从中读出该页所在的物理块号b,再用块号b和页内地址构成物理地址.

16.为什么说分段系统较之分页系统更易于实现信息共享和保护?

a. 对于分页系统,每个页面是分散存储的,为了实现信息共享和保护,则页面之间需要一一对应起来,为此需要建立大量的页表项;

b. 而对于分段系统,每个段都从0开始编址,并采用一段连续的地址空间,这样在实现共享和保护时,只需为所要共享和保护的程序设置一个段表项,将其中的基址与内存地址一一对应起来即可.

17 分页和分段有何区别?a. 分页和分段都采用离散分配的方式,且都要通过地址映射机构来实现地址变换,这是它们的共同点;

b. 对于它们的不同点有三,第一,从功能上看,页是信息的物理单位,分页是为实现离散分配方式,以消减-内存的外零头,提高内存的利用率,即满足系统管理的需要,而不是用户的需要;而段是信息的逻辑单位,它含有一组其意义相对完整的信息,目的是为了能更好地满足用户的需要;

c. 页的大小固定且由系统确定,而段的长度却不固定,决定于用户所编写的程序;

d. 分页的作业地址空间是一维的,而分段的作业地址空间是二维的.

18 试全面比较连续分配和离散分配方式.

a. 连续分配是指为一个用户程序分配一个连续的地址空间,包括单一连续分配方式和分区式分配方式,前者将内存分为系统区和用户区,系统区供操作系统使用,用户区供用户使用,是最简单的一种存储方式,-但只能用于单用户单任务的操作系统中;分区式分配方式分为固定分区和动态分区,固定分区是最简单的多道程序的存储管理方式,由于每个分区的大小固定,必然会造成存储空间的浪费;动态分区是根据进程的实际需要,动态地为之分配连续的内存空间,常用三种分配算法: 首次适应算法FF,该法容易留下许多难以利用的小空闲分区,加大查找开销;循环首次适应算法,该算法能使内存中的空闲分区分布均匀,但会致使缺少大的空闲分区;最佳适应算法,该算法也易留下许多难以利用的小空闲区;

b. 离散分配方式基于将一个进程直接分散地分配到许多不相邻的分区中的思想,分为分页式存储管理,分段存储管理和段页式存储管理. 分页式存储管理旨在提高内存利用率,满足系统管理的需要,分段式存储管理则旨在满足用户(程序员)的需要,在实现共享和保护方面优于分页式存储管理,而段页式存储管理则是将两者结合起来,取长补短,即具有分段系统便于实现,可共享,易于保护,可动态链接等优点,又能像分页系统那样很好的解决外部碎片的问题,以及为各个分段可离散分配内存等问题,显然是一种比较有效的存储管理方式;

c. 综上可见,连续分配方式和离散分配方式各有各自的特点,应根据实际情况加以改进和利用.

19. 虚拟存贮器有那些特征? 其中最本质的特征是什么?a. 虚拟存储器具有离散性,多次性,对换性和虚拟性的特征;b. 其中最本质的特征是离散性,在此基础上又形成了多次性和对换性,所表现出来的最重要的特征是虚拟性.

20. 实现虚拟存储器要那些硬件支持?

a. 对于为实现请求分页存储管理方式的系统,除了需要一台具有一定容量的内存及外存的计算机外,还需要有页表机制,缺页中断机构以及地址变换机构;

b. 对于为实现请求分段存储管理方式的系统,除了需要一台具有一定容量的内存及外存的计算机外,还需要有段表机制,缺段中断机构以及地址变换机构

22. 在请求分页系统中,其页表项中包含那些数据项? 每项的作用是什么?a. 在请求分页系统中,其页表项中包含的数据项有页号,物理块号,状态位P,访问字段A,修改位M和外存地址;b. 其中状态位P指示该页是否调入内存,供程序访问时参考;

c. 访问字段A用于记录本页在一段时间内被访问的次数,或最近已有多长时间未被访问,提供给置换算法-选择换出页面时参考;

d. 修改位M表示该页在调入内存后是否被修改过;

e. 外存地址用于指出该页在外存上的地址,通常是物理块号,供调入该页时使用.

23. 在请求分页系统中,应从何处将所需页面调入内存?

a. 在进行地址变换时,首先去检索快表,试图从中找出所要访问的页,若找到,便修改页表项中的访问位,对于写指令,还须将修改位置1,然后利用页表项中给出的物理块号和页内地址,形成物理地址;

b. 如果在快表中未找到该页的页表项,则应再到内存中去查找页表,再从找到的页表项中的状态位来了解该页是否已调入内存,如果该页已调入内存,应将此页的页表项写入快表,当快表已满时,应先调出按某种算法所确定的页的页表项,然后再写入该页的页表项;

c. 如果该页尚未调入内存,这时便应产生缺页中断,请求OS从外存中把该页调入内存;

d. 外存分为文件区和对换区,若系统有足够的对换区空间,可在进程运行前,将与该进程有关的文件-拷贝到对换区,需要时从对换区调入;

e. 若系统缺少足够的对换区空间,则凡是不会被修改的文件,可直接从文件区调入,需换出时可不必写入外存,但对于可能被修改的部分,在将它们换出时,便须调到对换区,以后需要时再从对换区-调入.

24. 在请求分页系统中,常采用哪几种页面置换算法?

a. 最佳置换算法;

b. 先进先出算法;

c. 最近最久未使用LRU置换算法;

d. Clock置换算法;

e. 此外,还有最少使用置换算法和页面缓冲算法

25.在请求分页系统中,通常采用那种页面分配方式?为什么?

a. 在请求分页系统中,有固定和可变分配两种分配方式;

b. 采用固定分配方式是基于进程的类型(交互型)或根据程序员,系统管理员的建议,为每个进程分配固定页数的内存空间,在整个运行期间不再改变;

c. 采用可变分配方式有全局置换和局部置换两种,前者易于实现,后者效率高.

26. 在一个请求分页系统中,采用LRU页面置换算法时,假如一个作业的页面走向为4,3,2,1,4,3,5,4,3,2,1,5,当分配给该作业的物理块数M分别为3和4时,试计算访问过程中所发生的缺页次数和缺页率?比较所得结果?

a. 当分配给该作业的物理块数M为3时,所发生的缺页率为7,缺页率为: 7/12=0.583;

b. 当分配给该作业的物理块数M为4时,所发生的缺页率为4,缺页率为: 4/12=0.333.

27.实现LRU算法所需的硬件支持是什么?

a. 寄存器,用于记录某进程在内存中各页的使用情况;

b. 栈,用于保存当前使用的各个页面的页面号.

28. 试说明改进型Clock置换算法的基本原理.

a. 因为对于修改过的页面在换出时所付出的开销将比未被修改过的页面的开销大,所以在改进型Clock算法中,出了须考虑到页面的使用情况外,还须再增加一个置换代价这一因素;

b. 在选择页面作为淘汰页面时,把同时满足未使用过和未被修改作为首选淘汰页面.

30.如何实现分段共享?

a. 可在每个进程的段表中,用相应的表项来指向共享段在内存中起始地址;

b. 配置相应的数据结构作为共享段表,可在段表项中设置共享进程计数Count,每调用一次该共享段,Count 指增1,每当一个进程释放一个共享段时,Count执行减1操作,若减为0,则由系统回收该共享段的物理内存,以及取消在共享段表中该段所对应的表项;

c. 对于一个共享段,应给不同的进程以不同的存取权限;

d. 不同的进程可以使用不同的段号去共享该段.

第五章

1.试说明设备控制器的构成。

设备控制器的构成如图所示:

由上图可见,设备控制器由以下三部分组成:(1)设备控制器与处理机的接口,该接口用于实现CPU与设备控制器之间的通信,提供有三类信号线:数据线、地址线和控制线。(2)设备控制器与设备的接口,可以有一个或多个接口,且每个接口连接一台设备。每个接口都存在数据、控制和状态三种类型的信号。(3)I/O逻辑,用于实现对设备的控制。其通过一组控制线与处理机交互,处理机利用该逻辑向控制器发送I/O 命令,I/O逻辑对收到的命令进行译码。

2.为了实现CPU与设备控制器之间的通信,设备控制器应具有哪些功能?

为了实现CPU与设备控制器之间的通信,设备控制器应具有如下功能:(1)接受和识别命令。CPU可以向控制器发送多种不同的命令,设备控制器应能接收并识别这些命令。设置控制寄存器来存放所接收的命令和参数。(2)数据交换,指实现CPU与控制器之间、控制器与设备之间的数据交换。设置数据寄存器来存放有关数据。(3)设备状态的了解和报告。控制器记录下所连接设备的状态以供CPU了解。为此,要在控制器中设置一状态寄存器,用其中的每一位反映设备的某一状态。(4)地址识别。配置地址译码器以便于正确识别设备地址。

3.什么是字节多路通道?什么是数组选择通道和数组多路通道?

①字节多路通道含有许多非分配型子通道分别连接在低、中速I/O设备上,子通道按时间片轮转方式共享主通道,按字节方式进行数据传送。具体而言,当第一个子通道控制其I/O设备完成一个字节的交换后,便立即腾出字节多路通道(主通道),让给第二个子通道使用;当第二个子通道也交换完一个字节后,又依样把主通道让给第三个子通道使用,以此类推。转轮一周后,重又返回由第一个子通道去使用主通道。②数组选择通道只含有一个分配型子通道,一段时间内只能执行一道通道程序、控制一台设备按数组方式进行数据传送。通道被某台设备占用后,便一直处于独占状态,直至设备数据传输完毕释放该通道,故而通道利用率较低,主要用于连接多台高速设备。③数组多路通道是将数组选择通道传输速率高和字节多路通道能使各子通道分时并行操作的优点相结合而形成的一种新通道。其含有多个非分配型子通道分别连接在高、中速I/O设备上,子通道按时间片轮转方式共享主通道,按数组方式进行数据传送,因而既具有很高的数据传输速率,又能获得令人满意的通道利用率。

4.如何解决因通道不足而产生的瓶颈问题?

解决因通道不足而产生的瓶颈问题的最有效方法是增加设备到主机间的通路而不是增加通道。换言之,就是把一个设备连接到多个控制器上,而一个控制器又连接到多个通道上。这种多通路方式不仅可以解决该瓶颈问题,而且能够提高系统的可靠性,也即不会因为个别通道或控制器的故障而使设备与存储器之间无法建立通路进行数据传输。

6.试说明I/O控制发展的主要推动因素是什么?

推动I/O控制发展的主要动力在于尽量减少主机对I/O控制的干预,把主机从繁杂的I/O控制事务中解脱出来,以有更多的时间和精力去完成其数据处理任务。同时,中断机制在计算机系统中的引入、DMA控制器的出现和通道研制的成功使I/O控制的发展具备了技术支持和成为可能。

7.有哪几种I/O控制方式?

有四种I/O控制方式,即程序I/O控制方式、中断驱动I/O控制方式、直接存储器访问DMA控制方式及I/O 通道控制方式。

8.试说明DMA的工作流程。

以从磁盘读入数据为例来说明DMA方式的工作流程:当CPU要从磁盘读入一数据块时,便向磁盘控制器发送一条读命令,该命令被送入DMA控制器的命令寄存器CR中。同时,还需发送本次要将数据读入的内存起始目标地址,该地址被送入DMA控制器的内存地址寄存器MAR中;本次要读的字(节)数则送至DMA控制器的数据计数器DC中。另外,还需将磁盘中数据读取的源地址直接送到DMA控制器的I/O控制逻辑上。然后,启动DMA控制器进行数据传送。此后,CPU便可去处理其它任务,而整个的数据传送便由DMA控制器负责控制。当DMA控制器已从磁盘中读入一个字(节)的数据,并送入DMA控制器的数据寄存器DR后,再挪用一个存储器周期,将该字(节)传送到MAR所指示的内存单元中。接着,便对MAR内容加1和将DC内容减1。若DC内容减1后不为0,表示传送未完,便准备再传送下一个字(节),否则,由DMA控制器发出中断请求。参图所示:

9.引入缓冲的主要原因是什么?

操作系统引入缓冲机制的主要原因可归结为以下几点:(1)缓和CPU与I/O设备间速度不匹配的矛盾;(2)减少对CPU的中断频率,放宽对中断响应时间的限制;(3)提高CPU与I/O设备之间的并行性。

10.在单缓冲情况下,为什么系统对一块数据的处理时间为max(C, T)+M ?

在块设备输入时,先从磁盘把一块数据输入到缓冲区,耗时为T;然后由操作系统将缓冲区数据传送给用户区,耗时为M;接下来便由CPU对这一块数据进行计算,耗时为C。在单缓冲情况下,磁盘把数据输入到缓冲区的操作和CPU对数据的计算过程可以并行展开,所以系统对每一整块数据的处理时间为max(C, T) + M。

11.为什么在双缓冲情况下,系统对一块数据的处理时间为max(C, T)

该方式又称缓冲对换方式。写入者花费时间T将数据写满一个缓冲区后再写另一个缓冲区;读出者花费时间M将一个缓冲区数据送到用户区后再传送另一个缓冲区数据,运算者读出用户区进行处理。由于将数据从缓冲区传送到用户区操作必须与读用户区数据进行处理串行进行,而且它们又可以与从外存传送数据填满缓冲区的操作并行。因此耗时大约为max(C+M,T)。考虑到M是内存中数据块的“搬家”耗时,非常短暂可以省略,因此近似地认为是:max(C,T)。

12.试绘图说明把多缓冲用于输出时的情况。

把多缓冲用于输出时的情况如图所示:

13.试说明收容输入工作缓冲区和提取输出工作缓冲区的工作情况。

①收容输入工作缓冲区的工作情况为:在输入进程需要输入数据时,调用GetBuf(EmptyQueue)过程,从EmptyQueue队列的队首摘下一个空缓冲区,把它作为收容输入工作缓冲区Hin。然后,把数据输入其中,装满后再调用PutBuf(InputQueue, Hin)过程,将该缓冲区挂在输入队列InputQueue的队尾。②提取输出工作缓冲区的工作情况为:当要输出数据时,调用GetBuf(OutputQueue)过程,从输出队列的队首取得一装满输出数据的缓冲区作为提取输出的工作缓冲区Sout。在数据提取完后,再调用PutBuf(EmptyQueue, Sout)过程,将该缓冲区挂到空缓冲队列EmptyQueue的队尾。

14.何谓是安全分配方式和不安全分配方式?

①所谓安全分配方式,是指每当进程发出I/O请求后,便进入阻塞状态,直到其I/O操作完成时才被唤醒。在采用这种分配策略时,一旦进程已经获得某种设备(资源)后便阻塞,使它不可能再请求任何资源,而在它运行时又不保持任何资源。因此,这种分配方式已经摒弃了造成死锁的四个必要条件之一的“请求和保持”条件,所以分配是安全的。其缺点是进程进展缓慢,即CPU与I/O设备是串行工作的。②所谓不安全分配方式,是指进程发出I/O请求后仍继续执行,需要时又可发出第二个I/O请求、第三个I/O请求。仅当进程所请求的设备已被另一个进程占有时,进程才进入阻塞状态。其优点是一个进程可同时操作多个设备,从而使进程推进迅速。而缺点是分配不安全,因为它可能具有“请求和保持”条件,所以可能造成死锁。因此,在设备分配程序中还需增加一个功能,用于对本次的设备分配是否会发生死锁进行安全性计算,仅当计算结果说明分配是安全的情况下才进行分配。

15.为何要引入设备独立性?如何实现设备独立性?

在现代操作系统中,为了提高系统的可适应性和可扩展性,都毫无例外地实现了设备独立性,也即设备无

关性。其基本含义是,应用程序独立于具体使用的物理设备,即应用程序以逻辑设备名称来请求使用某类设备。进一步说,在实现了设备独立性的功能后,可带来两方面的好处:(1)设备分配时的灵活性;(2)易于实现I/O重定向(指用于I/O操作的设备可以更换即重定向,而不必改变应用程序)。

为了实现设备的独立性,应引入逻辑设备和物理设备两个概念。在应用程序中,使用逻辑设备名称来请求使用某类设备;而系统执行时,是使用物理设备名称。鉴于驱动程序是一个与硬件(或设备)紧密相关的软件,必须在驱动程序之上设置一层软件,称为设备独立性软件,以执行所有设备的公有操作、完成逻辑设备名到物理设备名的转换(为此应设置一张逻辑设备表)并向用户层(或文件层)软件提供统一接口,从而实现设备的独立性。

16.在考虑到设备的独立性时,应如何分配独占设备?

在考虑到设备的独立性时,应按如下步骤来分配独占设备:(1)进程以逻辑设备名提出I/O请求。(2)根据逻辑设备表相应表项获得I/O请求的逻辑设备对应类型的物理设备在系统设备表中的指针。(3)从指针所指位置起顺序检索系统设备表,直到找到一个属于对应I/O请求所用类型、空闲可用且基于设备分配安全性算法验证为安全分配的设备的设备控制表,将对应设备分配给请求进程;如果未找到安全可用的空闲设备,则把请求进程的进程控制块挂到相应类型设备的等待队列上等待唤醒和分配。(4)系统把设备分配给I/O请求进程后,再到该设备的设备控制表中找出与其相连接的控制器的控制器控制表,根据其状态字段判断该控制器是否忙碌,若忙则把请求进程的进程控制块挂到该控制器的等待队列上;否则将该控制器分配给进程。(5)系统把控制器分配给I/O请求进程后,再到该控制器的控制器控制表中找出与其相连接的通道的通道控制表,根据其状态字段判断该通道是否忙碌,若忙则把请求进程的进程控制块挂到该通道的等待队列上;否则将该通道分配给进程。(6)只有在设备、控制器和通道三者都分配成功时,这次的设备分配才算成功,然后便可启动设备进行数据传送。

17.何谓虚拟设备?其实现所依赖的关键技术有哪些?

通过虚拟技术可将一台独占设备变换成若干台逻辑设备,供若干个用户(进程)同时使用,通常把这种经过虚拟技术处理后的设备称为虚拟设备。其实现所依赖的关键技术是SPOOLING技术。

18.试说明SPOOLING系统的组成。

SPOOLing系统是对脱机I/O工作的模拟,其必须有高速随机外存(通常采用磁盘)的支持。SPOOLING系统主要有以下四个部分:(1)输入井和输出井,为磁盘上开辟的两大存储空间,分别模拟脱机输入/出时的磁盘,并用于收容I/O设备输入的数据和用户程序的输出数据;(2)输入缓冲区和输出缓冲区,在内存中开辟,分别用于暂存由输入设备和输出井送来的数据;(3)输入进程SPi和输出进程SPo,分别模拟脱机输入/出时的外围控制机,用于控制I/O过程;(4)I/O请求队列,由系统为各个I/O请求进程建立的I/O请求表构成的队列。

19.在实现后台打印时,SPOOLING系统应为请求I/O的进程提供哪些服务?

在实现后台打印时,SPOOLING系统应为请求I/O的进程提供以下服务:(1)由输出进程在输出井中为之申请一空闲盘块区,并将要打印的数据送入其中;(2)输出进程再为用户进程申请一张空白的用户打印表,并将用户的打印要求填入其中,再将该表挂到请求打印队列上。(3)一旦打印机空闲,输出进程便从请求打印队列的队首取出一张请求打印表,根据表中的要求将要打印的数据从输出井传送到内存缓冲区,再由打印机进行打印。

20.试说明设备驱动程序具有哪些特点?

设备驱动程序具有如下特点:(1)驱动程序主要是在请求I/O的进程与设备控制器之间的一个通信程序;(2)驱动程序与I/O设备的特性紧密相关;(3)驱动程序与I/O控制方式紧密相关;(4)驱动程序与硬件紧密相关,因而其中的一部分程序必须用汇编语言书写,且基本部分往往已被固化在ROM中。

21.试说明设备驱动程序应具有哪些功能?

设备驱动程序的主要功能包括:(1)将接收到的抽象要求转为具体要求;(2)检查用户I/O请求的合法性,了解I/O设备的状态,传递有关参数,设置设备的工作方式;(3)发出I/O命令,启动分配到的I/O设备,完成指定的I/O操作;(4)及时响应由控制器或通道发来的中断请求,并根据其中断类型调用相应的中断

处理程序进行处理;(5)对于设置有通道的计算机系统,驱动程序还应该能够根据用户的I/O请求,自动地构成通道程序。

22.设备驱动程序通常要完成哪些工作?

设备驱动程序通常要完成以下工作:(1)将抽象要求转换为具体要求;(2)检查I/O请求的合法性;(3)读出和检查设备的状态;(4)传送必要的参数;(5)设置工作方式;(6)启动I/O设备。

23.设备中断处理程序通常需完成哪些工作?

设备中断处理程序通常需完成如下工作:(1)唤醒被阻塞的驱动程序进程;(2)保护被中断进程的CPU环境;(3)分析中断原因、转入相应的设备中断处理程序;(4)进行中断处理;(5)恢复被中断进程的现场第六章

1.何谓数据项、记录和文件?。

数据项可分为基本数据项和组合数据项。基本数据项是用于描述一个对象某种属性的字符集,是数据组织中可以命名的最小逻辑数据单位,又称为原子数据、数据元素或字段,其具有数据名、数据类型及数据值三个特性。组合数据项则由若干数据项构成。记录是一组相关数据项的集合,用于描述一个对象某方面的属性。文件是具有文件名的一组相关信息的集合。

2.文件系统的模型可分为三层,试说明其每一层所包含的基本内容。

答:文件系统模型如图所示:

(1)最低层为对象及其属性说明,主要包括文件、目录、磁盘存储空间等三类对象。(2)最高层是文件系统提供给用户的接口,分为命令接口、程序接口和图形化用户接口等三种类型。(3)中间层是对对象进行操纵和管理的软件集合,是文件系统的核心部分,拥有文件存储空间管理、文件目录管理、地址映射、文件读写管理及文件共享与保护等诸多功能。具体又可分为四个子层:①I/O控制层(又称为设备驱动程序层),主要由磁盘驱动程序和磁带驱动程序组成,负责启动I/O设备和对设备发来的中断信号进行处理;②基本文件系统层(又称为物理I/O层),主要用于处理内存与磁盘或磁带机系统之间数据块的交换,通过向I/O控制层发送通用指令及读写的物理盘块号与缓冲区号等I/O参数来完成;③基本I/O管理程序层(即文件组织模块层),负责完成与磁盘I/O有关的大量事务,包括文件所在设备的选定、文件逻辑块号到物理块号的转换、空闲盘块的管理及I/O缓冲的指定等;④逻辑文件系统层,负责所读写的文件逻辑块号的确定、目录项的创建与修改、文件与记录的保护等。

文件系统接口

对对象操纵和管理的软件集合逻辑文件系统

基本I/O管理程序(文件组织模块)

基本文件系统(物理I/O层)

I/O控制层(设备驱动程序)

对象及其属性说明

6.试说明关于索引文件和索引顺序文件的检索方法。

答:①对索引文件进行检索时,首先根据用户(程序)提供的关键字,并利用折半查找法检索索引表,从中找到相应的表项;再利用该表项中给出的指向记录的指针值,去访问对应的记录。②对索引顺序文件进行检索时,首先利用用户(程序)提供的关键字以及某种查找方法,去检索索引表,找到该记录所在记录组中的第一条记录的表项,从中得到该记录组第一个记录在主文件中的位置;然后再利用顺序查找法去查找主文件,从而找到所要求的记录。

索引文件的检索:首先是根据用户(程序)提供的关键字,并利用折半查找法,去检索索引表,从中找到相应的项,再利用该表项中给出的指向记录的指针值,去访问所需的记录。

索引顺序文件检索:首先利用用户(程序)提供的关键字以及某种查找方法,去检索索引表,找到该记录所在记录组中第一个记录的表项,从中得到该记录组第一个记录在主文件中的位置;然后,再利用顺序查找法去查找主文件,从中找到所要求的记录。

7.试从检索速度和存储费用两方面来比较两级索引文件和索引顺序文件。

假设主文件拥有N条记录。对于索引文件,主文件的每条记录均需配置一个索引项,故存储开销为N;而为检索到具有指定关键字的记录,平均需要查找N/2条记录。对于索引顺序文件,应为每个记录分组配置一个索引项,故存储开销为N1/2;而为检索到具有指定关键字的记录,平均需要查找N 1/ 2条记录。对于两级索引顺序文件,存储开销为N2/3+N1/3;而为检索到具有指定关键字的记录,平均需要查找1.5N1/3条记录。

17.对目录管理的主要要求是什么?

答:对文件目录的管理有以下要求:

a) 实现“按名存取”b) 提高对目录的检索速度c) 文件共享d) 允许文件重名

18.采用单级目录能否满足目录管理的主要要求?

采用单级目录只能实现目录管理的基本功能(即文件的按名存取),而对于其它三项要求则不能满足。19.目前广泛采用的目录结构形式是什么?它有什么优点?

目前广泛采用的目录结构形式是树型目录结构,其具有检索效率高、允许重名、便于实现文件共享等一系列优点。

20.Hash检索法有何优点?有何局限性?

又称杂凑结构或散列结构。这种结构只适用于定长记录文件和按记录随机查找的访问方式。

Hash结构的思想是通过计算来确定一个记录在存储设备上的存储位置,依次先后存入的两个记录在物理设备上不一定相邻。按Hash结构组织文件的两个关键问题是:?

定义一个杂凑函数;?

解决冲突;?

16.基于索引结点的共享方式有哪些优缺点?

就基于索引结点的共享方式而言,其优点在于“建立新的共享链接,并不改变文件拥有者的关系,仅把索引结点共享计数器加1,所以系统可方便获悉由多少个目录项指向该文件”。同时,该方式也存在所谓“悬空指针”的问题和缺点。具体而言,文件拥有者不能删除自己的文件,否则将留下指向该结点的悬空指针,造成该结点再分配时,系统出错;为此,拥有者只能清除自己的目录项,且要为其它共享者无端付费,直至其它共有者清除该文件?

25.对空闲磁盘空间的管理常采用哪几种方式?UNIX系统采用的是何种方式?

空闲磁盘空间的管理常采用以下几种方法:(1)空闲表法,属于连续分配方式,它与内存管理中的动态分区分配方式相似。(2)空闲链表法,将所有空闲盘区链接成一条空闲链。根据构成链的基本元素不同,可分为空闲盘块链和空闲盘区链。(3)位示图法,利用二进制的一位来表示磁盘中每一个盘块的使用情况,磁盘上的所有盘块都有一个二进制位与之对应,从而由所有盘块所对应的位构成一个集合,即位示图。(4)成组链接法,结合空闲表法和空闲链表法而形成。UNIX系统采用的是成组链接法

27.基于符号链的文件共享方式有何优缺点?

就基于符号链的文件共享方式来说,只有文件主才拥有指向其索引结点的指针,而共享该文件的其它用户只有该文件的路径名且没有指向索引结点的指针,所以也就不会发生在文件主删除共享文件后留下所谓“悬空指针”的问题。当文件拥有者把一个共享文件删除后,其它用户试图通过符号链来访问一个被删除的共享文件时将因系统找不到该文件而使访问失败,于是将符号链删除,此时不会有任何其它负面效应。当然,这种方式也存在自己的问题。在其它用户访问共享文件时,系统是根据给定的文件路径名,逐个分量地去查找目录,直至找到该文件的索引结点。因此,在访问共享文件时要多次读盘,使每次访问文件的系统开销加大,且增加了启动磁盘的频率。此外,要为每个共享用户建立一条符号链,而该链实际上是一个文件,尽管该文件非常简单,却仍需为之配置一个索引结点,故而也要消耗一定的磁盘空间。需要指出的是,本共享方式还有一个特殊的优点,即它能够用于链接(通过计算机网络)世界上任何地方的机器中的文件,此时只需提供该文件所在机器的网络地址以及在该机器中的文件路径。

28.在第一级磁盘容错技术中,包括那些容错措施?什么是写后读校验?

在第一级磁盘容错技术中,包括以下容错措施:(1)双份目录和双份文件分配表。在磁盘上存放的文件目

录和文件分配表FAT均为文件管理所用的重要数据结构,所以为之建立备份。在系统每次加电启动时,都要对两份目录和两份FAT进行检查,以验证它们的一致性。(2)热修复重定向和写后读校验,二者均用于防止将数据写入有缺陷的盘块中。就热修复重定向而言,系统将一定的磁盘容量作为热修复重定向区,用于存放当发现盘块有缺陷时的待写数据,并对写入该区的所有数据进行登记,方便将来对数据进行访问。而写后读校验则是为了保证所有写入磁盘的数据都能写入到完好的盘块中,故在每次从内存缓冲区向磁盘中写入一个数据块后,应立即从磁盘上读出该数据块并送至另一缓冲区中,再将该缓冲区中内容与原内存缓冲区中在写后仍保留的数据进行比较,若两者一致,便认为此次写入成功,可继续写入下一个盘块;否则,则重写。若重写后两者仍不一致,则认为该盘块有缺陷,此时便将应写入该盘块的数据写入热修复重定向区中,并将该损坏盘块的地址,记录在坏盘块表中。

29.在第二级磁盘容错技术中,包括那些容错措施?

在第二级磁盘容错技术中,包括以下容错措施:(1)磁盘镜像。在同一磁盘控制器下增设一个完全相同的磁盘驱动器,在每次向文件服务器的主磁盘写入数据后,都要采用写后读校验方式,将数据再同样地写到备份磁盘上,使二者具有完全相同的位像图。(2)磁盘双工。将两台磁盘驱动器分别接到两个磁盘控制器上,同样使这两台磁盘机镜像成对,从而在磁盘控制器发生故障时,起到数据保护作用。在磁盘双工时,由于每一个磁盘都有着自己的独立通道,故可以同时(并行)地将数据写入磁盘。在读入数据时,可采用分离搜索技术,从响应快的通道上取得数据,因而加快了对数据的读取速度。

第七章

1.操作系统包括哪几种类型的用户接口?它们分别适用于哪种情况?

操作系统包括三种类型的用户接口:命令接口(具体又可分为联机命令接口与脱机命令接口)、程序接口及图形化用户接口。其中,命令接口和图形化用户接口支持用户直接通过终端来使用计算机系统,而程序接口则提供给用户在编制程序时使用。

2.联机命令接口由哪些部分构成?

联机命令接口由一组联机命令、终端处理程序和命令解释程序构成。

3.联机命令通常包含哪些类型?每种类型又包含哪些主要命令?

联机命令通常包含哪些类型?每种类型又包含哪些主要命令?联机命令通常包含如下类型:(1)系统访问类,主要是注册命令;(2)磁盘操作类,包括磁盘格式化、软盘复制、软盘比较及备份等命令;(3)文件操作类,包括文件内容显示、文件拷贝、文件比较、文件重命名、文件删除等命令;(4)目录操作类,包括子目录建立、目录显示、子目录删除、目录结构显示、当前目录改变等命令;(5)通信类命令;(6)其它命令,包括输入输出重定向、管道联接、过滤命令及批处理命令等。

4.什么是输入输出重定向?试举例说明。

通常,命令的输入取自标准输入设备即键盘,而命令的输出则送往标准输出设备即显示终端。如果在命令中设置输出定向“〉”,其后接文件名或设备名,则表示命令的输出改向,并送到指定文件或设备上;类似地,在命令中设置输入重定向“〈”,则不再是从键盘而是从重定向符左边的参数指定的文件或设备上取得输入信息。这便是输入输出的重定向。

5.什么是管道联接?试举例说明。

管道联接是指把第一个命令的输出作为第二个命令的输入,类似地又把第二个命令的输出作为第三条命令的输入,以此类推,这样由两条以上的命令可形成一条管道。在MS-DOS和UNIX中,都用"|"作为管道符号。其一般格式为:command1 |command2 | … |commandn

6.终端设备处理程序的主要作用是什么?它应具备哪些功能?

终端设备处理程序主要用于实现人机交互,它应具备以下功能:(1)接收用户从终端上键入的字符;(2)管理字符缓冲,以暂存所接收的字符;(3)将用户键入字符回送屏幕显示;(4)提供屏幕编辑(编辑键);(5)特殊字符处理(中断/停止或恢复上卷)。

7.命令解释程序的主要作用是什么?

命令解释程序的主要作用是:在屏幕上产生提示符,请用户输入命令,然后读入命令、识别命令,并转至

相应的命令处理程序入口地址,把控制权交给该处理程序去执行,最后将有关处理结果(包括出错信息)送屏幕显示。

8.试说明MS-DOS的命令解释程序https://www.wendangku.net/doc/2b5257097.html,的工作流程。

MS-DOS命令解释程序https://www.wendangku.net/doc/2b5257097.html,的主要工作流程如下:(1)系统接通电源或复位,初始化部分获得控制权,对整个系统完成初始化工作,并自动执行Autoexec.bat文件,然后把控制权交给暂存部分,后者给出提示符并等待和接收用户键入命令;(2)暂存部分读入键盘缓冲区中的命令,判别其文件名、扩展名及驱动器名是否正确,若有错则给定出错信息后返回;无错的情况下才查找和识别该命令;(3)若该命令为内部命令,暂存部分定会在命令表格中找到该命令,便可从对应表项中获得该命令处理程序的入口地址,并把控制权交给该程序去执行;若键入命令为外部指令,则暂存部分应为之建立命令行,通过执行系统调用exec装入其命令处理程序,并得到对应基地址,把控制权交由该程序执行;若键入命令非法,则出错返回;(4)命令完成后,控制权重新交给暂存部分给出提示符并等待和接收用户键入命令,然后转(2)。13.试比较一般的过程调用和系统调用。

系统调用本质上是一种过程调用,但它是一种特殊的过程调用,与一般的过程调用存在以下几方面的差别:(1)运行在不同的系统状态。一般的过程调用,其调用过程和被调用过程或者均为用户程序,或者均为系统程序,所以都运行在同一系统执行状态(用户态或系统态)下;而系统调用的调用过程是运行在用户态下的用户程序,被调用过程是运行在系统态下的系统程序。(2)软中断进入机制。一般的过程调用可直接由调用过程转向被调用过程;而执行系统调用时,由于调用过程和被调用过程是处于不同的系统状态,所以不允许由调用过程直接转向被调用过程,而通常是通过软中断机制,先进入操作系统内核,经内核分析后,才能转向相应的命令处理程序。(3)返回及重新调度问题。对于一般的过程调用,在被调用过程执行完后,将返回到调用过程继续执行;对于系统调用则不是这样,在被调用过程执行完后,要对系统中所有要求运行的进程进行重新调度。特别地,在采用了抢占式剥夺调度的系统中,重新调度将基于优先权分析来进行,于是只有当调用进程仍具有最高优先权时,才会返回到调用过程继续执行;否则其将会被放入就绪队列,而执行权利交由具最高优先权的过程优先执行。(4)嵌套调用。与一般过程类似,系统调用也允许嵌套调用,即在一个被调用过程执行期间,还可以再利用系统调用命令去调用另一个系统过程,注意是系统过程而不是用户过程。

14.什么是系统调用?它都有哪些类型?(部分超过书上的问题,请自己截取)

通常,在操作系统内核设置有一组用于实现各种系统功能的子程序(过程),并将它们提供给用户程序调用。每当用户在程序中需要操作系统提供某种服务时,便可利用一条系统调用命令,去调用所需的系统过程。这即所谓的系统调用。系统调用的主要类型包括:(1)进程控制类,主要用于进程的创建和终止、对子进程结束的等待、进程映像的替换、进程数据段大小的改变以及关于进程标识符或指定进程属性的获得等;(2)文件操纵类,主要用于文件的创建、打开、关闭、读/写及文件读写指针的移动和文件属性的修改,目录的创建及关于目录、特别文件或普通文件的索引结点的建立等;(3)进程通信类,用于实现各种类型的通信机制如消息传递、共享存储区及信息量集机制等;(4)信息维护类,用于实现关于日期和时间及其它系统相关信息的设置和获得。

15.如何设置系统调用所需的参数?

设置系统调用所需参数包括两种方式:(1)直接将参数送入相应的寄存器中,这是一种最简单的方式。其主要问题是由于寄存器数量有限,从而限制了设置参数的数目。(2)参数表方式,也即将系统调用所需的参数,放入一张参数表中,再将指向该参数表的指针放在某个规定的寄存器中。本方式具体又可分为直接方式和间接方式两类。

计算机操作系统习题答案

计算机操作系统习题答 案 Company Document number:WUUT-WUUY-WBBGB-BWYTT-1982GT

第一章操作系统概论 1.单项选择题 ⑴ B; ⑵ B; ⑶ C; ⑷ B; ⑸ C; ⑹ B; ⑺ B;⑻ D;⑼ A;⑽ B; 2.填空题 ⑴操作系统是计算机系统中的一个最基本的系统软件,它管理和控制计算机系统中的各种系统资源; ⑵如果一个操作系统兼有批处理、分时和实时操作系统三者或其中两者的功能,这样的操作系统称为多功能(元)操作系统; ⑶没有配置任何软件的计算机称为裸机; ⑷在主机控制下进行的输入/输出操作称为联机操作; ⑸如果操作系统具有很强交互性,可同时供多个用户使用,系统响应比较及时,则属于分时操作系统类型;如果OS可靠,响应及时但仅有简单的交互能力,则属于实时操作系统类型;如果OS在用户递交作业后,不提供交互能力,它所追求的是计算机资源的高利用率,大吞吐量和作业流程的自动化,则属于批处理操作系统类型; ⑹操作系统的基本特征是:并发、共享、虚拟和不确定性; ⑺实时操作系统按应用的不同分为过程控制和信息处理两种; ⑻在单处理机系统中,多道程序运行的特点是多道、宏观上并行和微观上串行。 第二章进程与线程 1.单项选择题

⑴ B;⑵ B;⑶ A C B D; ⑷ C; ⑸ C; ⑹ D; ⑺ C; ⑻ A; ⑼ C; ⑽ B; ⑾ D; ⑿ A; ⒀ D; ⒁ C; ⒂ A; 2.填空题 ⑴进程的基本状态有执行、就绪和等待(睡眠、阻塞); ⑵进程的基本特征是动态性、并发性、独立性、异步性及结构性; ⑶进程由控制块(PCB)、程序、数据三部分组成,其中PCB是进程存在的唯一标志。而程序部分也可以为其他进程共享; ⑷进程是一个程序对某个数据集的一次执行; ⑸程序并发执行与顺序执行时相比产生了一些新特征,分别是间断性、失去封闭性和不可再现性; ⑹设系统中有n(n>2)个进程,且当前不在执行进程调度程序,试考虑下述4种情况: ①没有运行进程,有2个就绪进程,n个进程处于等待状态; ②有一个运行进程,没有就绪进程,n-1个进程处于等待状态; ③有1个运行进程,有1个等待进程,n-2个进程处于等待状态; ④有1个运行进程,n-1个就绪进程,没有进程处于等待状态; 上述情况中不可能发生的情况是①; ⑺在操作系统中引入线程的主要目的是进一步开发和利用程序内部的并行性; ⑻在一个单处理系统中,若有5个用户进程,且假设当前时刻为用户态,则处于就绪状态的用户进程最多有4个,最少0个;

计算机操作系统作业2(含答案)

一、选择题 1.在进程的组成部分之中,进程在运行中不可修改的部分是______。 A.私用程序段B.共享程序段 C.数据段D.进程控制块 2.响应比高者优先作业调度算法是以计算时间和______来考虑的。 A.输入时间B.完成时间C.周转时间D.等待时间 3.在消息缓冲通信中,消息队列属于______资源。 A.临界B.共享C.永久D.可剥夺 4.进程间的同步是指进程间在逻辑上的相互______关系。 A.联接B.制约C.继续D.调用 5.最适合于分时系统的进程调度算法是______。 A.先来先服务(FCFS)B.最短作业优先(SSJF) C.优先数法D.轮转法(RR) 6.进程A和进程B通过共享缓冲区协作完成数据处理,进程A负责生产数据并放入缓冲区,进程B从缓冲区中读数据并输出。进程A和进程B之间的关系是______。 A.互斥关系B.同步关系C.互斥和同步D.无制约关系 7.在优先级调度中,______类进程可能被“饿死”,即长时间得不到调度。 A.短进程B.长进程C.低优先级进程D.大内存进程 8.进程从运行状态到阻塞状态可能是由于______。 A.进程调度程序的调度B.现运行进程的时间片耗尽 C.现运行进程执行了wait操作D.现运行进程执行了signal操作 9.银行家算法在解决死锁问题中是用于______的。 A.预防死锁B.避免死锁C.检测死锁D.解除死锁 10.______不是进程调度算法。 A.时间片轮转法B.先来先服务方法 C.响应比高者优先法D.均衡调度算法 11.下面关于线程的叙述中正确的是______。 A.线程包含CPU现场,可以独立执行程序B.每个线程有自己独立的地址空间C.线程之间的通信必须使用系统调用函数D.进程只能包含一个线程 12.并发进程之间______。 A.彼此无关B.必须同步C.必须互斥D.可能需要同步或互斥 13.当一个进程运行时,系统可能基于某种原则强行将其撤下,把处理器分配给其他进程,这种调度方式是______。 A.非剥夺方式B.剥夺方式C.中断方式D.查询方式 14.信号量S不能用于______操作。 A.signal B.wait C.赋初值D.运算表达式 15.______是一种只能进行wait操作和signal操作的特殊变量 A.调度B.进程C.同步D.信号量 16.分配给进程占用处理机的时间到而强迫进程P让出处理器,或有更高优先级的进程要运行,迫使正在运行的进程P让出处理器,则进程P状态变化的情况为______ A.运行态->就绪态B.运行态->等待态 C.就绪态->运行态D.等待态->就绪态 17.下面关于进程的叙述中正确的是______。

计算机操作系统3套期末考试题及答案

计算机专业计算机操作系统试题 2003年7月 一、选择题(选择一个正确的答案的代号填入括号中,共38分) 1.操作系统核心部分的主要特点是( )。 A.一个程序模块B.主机不断电时常驻内存 C.有头有尾的程序D.串行顺序执行 2.操作系统中用得最多的数据结构是( )。 A.堆栈B.队列 C.表格D.树 3. 索引式(随机)文件组织的一个主要优点是( )o A.不需要链接指针B.能实现物理块的动态分配 C.回收实现比较简单D.用户存取方便 4.文件目录的主要作用是( )。 A.按名存取B.提高速度 C.节省空间D.提高外存利用率 5.在操作系统管理中,面向用户的管理组织机构称为( )。 A.用户结构B.实际结构 C.物理结构D.逻辑结构 6.单机操作系统的共享资源主要是指( )。 A.内存、CPU和基本软件B.键盘、鼠标、显示器 C.打印机、扫描仪D.软盘、硬盘、光盘 7.为方便用户,操作系统负责管理和控制计算机系统的( )。 A.软件资源B.硬件和软件资源 C.用户有用资源D.硬件资源 8.设备I/O方式有如下三种:( )、( )和( )。 A.假脱机B.询问 C.联机D.中断 E.通道F.脱机 9.操作系统五大功能中作业管理包含( )和( );文件管理又称( );存储管理主要讲解( );设备管理是最原始的( );进程管理实质上是( )。 A.CPU的执行调度管理B.用户任务管理 C. 信息管理D.监控程序管理 E.人机交互界面管理F.内存管理 10.计算机在接受用户请求后处理数据以及在数据处理结束时,将结果送到终端显示器。例如,导弹控制系统应选择安装( );计算机订票系统应选择安装( );计算机语言学习系统应选择安装( )。A.批处理操作系统B.分时操作系统 C.实时操作系统D.网络操作系统 E.分布式操作系统 二、是非题(正确的划√,错的划×,其它符号按错论。共20分) ( )1.系统调用是操作系统和用户进程的接口,库函数也是操作系统和用户的接口。 ( )2.UNIX的i节点(内码)是文件系统的主要数据结构(表格)部分。 ( )3.虚地址即程序执行时所要访问的内存地址。

计算机操作系统习题及答案.

第5章死锁 1)选择题 (1)为多道程序提供的可共享资源不足时,可能出现死锁。但是,不适当的_C__ 也可能产生死锁。 A. 进程优先权 B. 资源的线性分配 C. 进程推进顺序 D. 分配队列优先权 (2)采用资源剥夺法可以解除死锁,还可以采用_B___ 方法解除死锁。 A. 执行并行操作 B. 撤消进程 C. 拒绝分配新资源 D. 修改信号量 (3)发生死锁的必要条件有四个,要防止死锁的发生,可以通过破坏这四个必要条件之一来实现,但破坏_A__ 条件是不太实际的。 A. 互斥 B. 不可抢占 C. 部分分配 D. 循环等待 (4)为多道程序提供的资源分配不当时,可能会出现死锁。除此之外,采用不适当的_ D _ 也可能产生死锁。 A. 进程调度算法 B. 进程优先级 C. 资源分配方法 D. 进程推进次序 (5)资源的有序分配策略可以破坏__D___ 条件。 A. 互斥使用资源 B. 占有且等待资源 C. 非抢夺资源 D. 循环等待资源 (6)在__C_ 的情况下,系统出现死锁。 A. 计算机系统发生了重大故障 B. 有多个封锁的进程同时存在 C. 若干进程因竞争资源而无休止地相互等待他方释放已占有的资源 D. 资源数大大小于进程数或进程同时申请的资源数大大超过资源总数 (7)银行家算法在解决死锁问题中是用于_B__ 的。 A. 预防死锁 B. 避免死锁 C. 检测死锁 D. 解除死锁 (8)某系统中有3个并发进程,都需要同类资源4个,试问该系统不会发生死锁的最少资源数是_C__ 。 A. 12 B. 11 C. 10 D. 9 (9)死锁与安全状态的关系是_A__ 。 A. 死锁状态一定是不安全状态 B. 安全状态有可能成为死锁状态 C. 不安全状态就是死锁状态 D. 死锁状态有可能是安全状态

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

作业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-8章 课后答案(全)

第一章操作系统引论 1.设计现代OS的主要目标是什么?答:方便性,开放性,有效性,可扩充性 2.OS的作用可表现在哪几个方面?答:OS作为用户与计算机硬件系统之间的接口;OS作为计算机系统资的管理者;OS实现了对计算机资源的抽象。 3.为什么说操作系统实现了对计算机资源的抽象?答:OS首先在裸机上覆盖一层1/0设备管理软件,实现了对计算机硬件操作的第一层次抽象;在第一层软件上再覆盖文件管理软件,实现了对硬件资源操作的第二层次抽象。0s通过在计算机硬件上安装多层系统软件,增强了系统功能,隐藏了对硬件操作的细节,由它们共同实现了对计算机资源的抽象。 4·说明推动分时系统形成和发展的主要动力是什么?答:主要动力是提高资源利用率和系统吞吐里,为了满足用户对人一机交互的需求和共享主机。 5.何谓脱机I/O和联机I/O?答:脱机1/0是指事先将装有用户程序和数据的纸带或卡片装入纸带输入机或卡片机,在外围机的控制下,把纸带或一片上的数据或程序输入到殖带上。该方式下的输入输出由外围机控制完成,是在脱离主机的情况下进行的。而耽机1/0方式是指程序和数据的輸入输出都是在主机的直接控制下进行的。 6.试说明推动分时系统形成和发展的主要动力是什么?答:推动分时系统形成和发展的主要动力是更好地满足用户的需要。主要表现在:CPU的分时使用缩短了作业的平均周转时间;人机交互能力使用户能直接控制自己的作业;主机的共享使多用户能同时使用同一台计算机,独立地处理自己的作业。 7.实现分时系统的关键问题是什么?应如何解决?答:关键问题是当用户在自己的终端上键入命令时,系统应能及寸接收并及时处理该命令,在用户能接受的时采内将结果返回给用户。解决方法:针对及时接收问题,可以在系统中设路多路卡,健主机能同时接收用户从各个终端上轮入的数据;为每个终端配路缓冲区,暂存用户捷入的命令或教据。针对反时处理问题,应便所有的用户作业都直接进入内存,并且为每个作业分配一个时间片,允许作业只在自己的时间片内运行,这样在不长的时间内,能使每个作业都运行一次。 8.为什么要引入实时OS?答:实时操作系统是指系统能及时响应外部事件的请求,在规定的时间内完成对该事件的处理,并控制所有实时任务协调一致地运行。引入实时OS是为了满足应用的需求,熏好地满足实时控制领域和实时信息处涯领域的需要。 9.什么是硬实时任务和款实时任务?试举例说明。答:硬实时任务是指系统必须满足任务对截止时间的要求,否则可能出现难以预测的结是。举例来说,运载火箭的控制等。软实时任务是指它的截止时间并不严格,偶尔错过了任务的截止时间,对系统产生的影响不大。举例:网页内容的更新、火车售票系统。 10.试从交互性、及时性以及可靠性方面,将分时系统与实时系统进行比较。答:(1)及时性:实时信息处理系统对实时性的要求与分时系统类似,都是以人所能受的等待时间来确定;而实时控制系统的及时性,是以控制对象所要求的开始截止时间或完成截止时间来确定的,一般为秒级到毫秒级,甚至有的要低于100微妙。(2)交互性:实时信息处理系统具有交互性,但人与系统的交互仅限于访问系统中某些特定的专用服务程序。不像分时系统那样能向终端用户提供数据和资源共享等服务。(3)可靠性:分时系统也要求系统可靠,但相比之下,实时系统则要求系统具有高度的可靠性。因为任何差错都可能带未巨大的经济损失,甚至是灾难性后,,所以在实时系统中,往往都采取了

计算机操作系统试题库完整

《计算机操作系统》试题库 1. 单项选择题(共200个题目) 100236. 一般用户更喜欢使用的系统是(C )。 A.手工操作 B.单道批处理 C.多道批处理 D.多用户分时系统 100237. 与计算机硬件关系最密切的软件是(D). A.编译程序 B.数据库管理程序 C.游戏程序 D.OS 100238. 现代OS具有并发性和共享性,是由(D)的引入而导致的。 A.单道程序 B.磁盘 C.对象 D.多道程序100239. 早期的OS主要追求的是(A)。 A.系统的效率 B.用户的方便性 C.可移植 D.可扩充性 100240. (A )不是多道程序系统。 A.单用户单任务 B.多道批处理系统 C.单用户多任务 D.多用户分时系统 100241. (B)是多道操作系统不可缺少的硬件支持。 A.打印机 B.中断机构 C.软盘 D.鼠标100242. 特权指令可以在(C )中执行。 A.目态 B.浏览器中 C.任意的时间 D.进程调度中100243. 没有了(C )计算机系统就启动不起来了。 A.编译器 B.DBMS C.OS D.浏览器100244. 通道能够完成(C )之间数据的传输。c

A.CPU与外设 B.内存与外设 C.CPU与主存 D.外设与外设100245. 系统的主要功能有(c)。 A.进程管理、存储器管理、设备管理、处理机管理 B.虚拟存储管理、处理机管理、进程调度、文件系统 C.处理机管理、存储器管理、设备管理、文件系统 D.进程管理、中断管理、设备管理、文件系统 100246. 单处理机计算机系统中,(A )是并行操作的。 A.处理机操作和通道操作是并行的 B.程序与程序 C.主程序与子程序 D.用户程序与操作系统程序 100247. 处理机的所有指令可以在(D )中执行。 A.目态 B.浏览器中 C.任意时间 D.系统态 100248. (B )功能不是操作系统直接完成的功能。 A.管理计算机硬盘 B.对程序进行编译 C.实现虚拟存储器 D.删除文件 100249. 要求在规定的时间内对外界的请求必须给予及时相应的OS是(B )。 A.多用户分时系统 B.实时系统 C.批处理系统时间 D.网络操作系统 100250. 操作系统是对(C)进行管理的软件。 A.硬件 B.软件 C.计算机资源 D.应用程序 100251. (B)对多用户分时系统最重要。 A.实时性 B.交互性 C.共享性 D.运行效率

计算机操作系统课后题答案(高等教育出版社)

练习题(一) Ⅰ问答题 1. 操作系统的两个主要目标是什么? 答:方便性与有效性。 2. 试说明操作系统与硬件、其它系统软件以及用户之间的关系? 答: 与硬件的关系:操作系统是位于硬件层上的第一层软件,它直接管理着计算机的硬件,合理组织计算机工作流程,并提高了硬件的利用率。。 与其他系统软件的关系:操作系统是系统软件,但它不同于其它系统软件和应用软件,它为其它系统软件和应用软件提供接口。应用软件要使用操作系统所提供的服务方可方便使用计算机。 与用户之间的关系:操作系统是为改善人机界面、提供各种服务,为用户使用计算机提供良好运行环境的一种系统软件。 3. 试论述操作系统是建立在计算机硬件平台上的虚拟计算机系统。 答:没有任何软件支持的计算机称为裸机,即使其硬件功能再强,也必定是难于使用的。而实际呈现在用户面前的计算机系统是经过若干层软件改造的计算机。裸机位于最里层,它的外面是操作系统,经过操作系统提供的资源管理功能和方便用户的各种服务功能,将裸机改造成功能更强、使用更方便的机器,通常把覆盖了软件的机器称为扩充机器,又称之为虚拟机(Virtual Machine ),这样的计算机系统是概念上和逻辑上的计算机,不是物理上的真实计算机。 4. 什么是操作系统?它有哪些基本功能与基本特征? 答:操作系统是位于硬件层之上,所有其它软件层之下的一种系统软件,它控制和管理计算机系统资源、合理组织计算机工作流程、提供用户与计算机系统之间的接口。 操作系统的基本功能有:处理器管理、存储器管理、设备管理、文件管理和提供用户接口。 操作系统的基本特征有:并发性、共享性、虚拟性和不确定性。 5. 请叙述并发和并行两个概念的区别? 答:并发性是指两个或多个程序在同一时间段内同时执行,是宏观上的同时。而并行性是从硬件意义上考虑,是不同硬件部件(如CPU与I/O)在同一时刻的并行,即微观上,多个程序也是同时执行的。 6. 什么是多道程序设计? 在操作系统中使用这种技术有什么好处? 答:多道程序设计是指在计算机内存中同时存放若干道已开始运行尚未结束的程序,它们交替运行,共享系统中的各种硬、软件资源,从而使处理机得到充分利用。 好处: ①提高了CPU的利用率。各道程序是轮流占用一个CPU,交替地执行。 ②改进了系统的吞吐量(系统吞吐量是指计算机系统在单位时间内完成的总工作量)。 ③充分发挥了系统的并行性,使CPU与I/O并行工作。提高CPU、设备、内存等各种资源的利用率,从而提高系统效率。

计算机操作系统答案

习题一 1.什么是操作系统?它的主要功能是什么? 答:操作系统是用来管理计算机系统的软、硬件资源,合理地组织计算机的工作流程,以方便用户使用的程序集合; 其主要功能有进程管理、存储器管理、设备管理和文件管理功能。 2.什么是多道程序设计技术?多道程序设计技术的主要特点是什么? 答:多道程序设计技术是把多个程序同时放入内存,使它们共享系统中的资源; 特点:(1)多道,即计算机内存中同时存放多道相互独立的程序; (2)宏观上并行,是指同时进入系统的多道程序都处于运行过程中; (3)微观上串行,是指在单处理机环境下,内存中的多道程序轮流占有CPU,交替执行。 3.批处理系统是怎样的一种操作系统?它的特点是什么? 答:批处理操作系统是一种基本的操作系统类型。在该系统中,用户的作业(包括程序、数据及程序的处理步骤)被成批的输入到计算机中,然后在操作系统的控制下,用户的作业自动地执行; 特点是:资源利用率高、系统吞吐量大、平均周转时间长、无交互能力。4.什么是分时系统?什么是实时系统?试从交互性、及时性、独立性、多路性 和可靠性几个方面比较分时系统和实时系统。 答:分时系统:一个计算机和许多终端设备连接,每个用户可以通过终端向计算机发出指令,请求完成某项工作,在这样的系统中,用户感觉不到其他用户的存在,好像独占计算机一样。 实时系统:对外部输入的信息,实时系统能够在规定的时间内处理完毕并作出反应。 比较:(1)交互性:实时系统具有交互性,但人与系统的交互,仅限于访问系统中某些特定的专用服务程序。它不像分时系统那样向终端用户提供数据处理、资源共享等服务。实时系统的交互性要求系统具有连续人机对话的能力,也就是说,在交互的过程中要对用户得输入有一定的记忆和进一步的推断的能力。 (2)及时性:实时系统对及时性没的要求与分时系统类似,都以人们能够接受的等待时间来确定。而及时系统则对及时性要求更高。 (3)独立性:实时系统与分时系统一样具有独立性。每个终端用户提出请求时,是彼此独立的工作、互不干扰。 (4)多路性:实时系统与分时一样具有多路性。操作系统按分时原则为多个终端用户提供服务,而对于实时系统,其多路性主要表现在经常对多路的现场信息进行采集以及对多个对象或多个执行机构进行控制。 (5)可靠性:分时系统虽然也要求可靠性,但相比之下,实时系统则要求系统高度可靠。 5.实时系统分为哪两种类型? 答:实时控制系统、实时信息处理系统。 6.操作系统的主要特征是什么? 答:并发性、共享性、虚拟性、不确定性。 7.操作系统与用户的接口有几种?他们各自用在什么场合? 答:有两种:命令接口、程序接口;

计算机操作系统作业

一、单项选择题 二、CADCA CADCC CBDBC DDADB DCAD 1.联想存储器在计算机系统中是用于__C____的。 A.存储文件信息B.与主存交换信息 C.内存地址变换D.内存管理信息 2.作业在执行中发生了缺页中断,经操作系统处理后,应该执行的指令是___D___。 A.被中断的前一条B.被中断的后一条 C.作业的第一条D.被中断的指令 在请求分页存储管理中,当指令的执行所需要的内容不在内存中时,发生缺页中断,当缺页调入内存后,应执行被中断指令。另:缺页中断作为中断与其它中断一样要经历如保护CPU环境,分析中断原因,转入缺页中断处理程序进行处理,恢复CPU环境等几个步骤,但缺页中断又是一种特殊的中断,它与一般中断相比,有着明显的区别,主要表现在下面两个方面:(1)缺页中断是在指令执行期间产生和处理中断信号的。(2)一条指令的执行期间,可能产生多次缺页中断。 3.实现虚拟存储器的目的是__D____。 A.实现存储保护B.实现程序浮动 C.扩充外存容量D.扩充内存容量 4.在段页式存储系统中,一个作业对应___C__。 A.多个段表B.一个段表,一个页表 C.一个段表,多个页表D.多个段表,多个页表 5.在虚拟页式存储管理方案中,完成将页面调入内存的工作的是___A___。 A.缺页中断处理B.页面淘汰过程C.工作集模型应用D.紧缩技术利用 6.采用分页式内存管理时,重定位的工作是由___C___完成的。 A.操作系统B.用户C.地址转换机构D.内存空间分配程序 7.在分页式内存管理系统中可能出现的问题是__B____。 A.颠簸B.不能共享C.外部碎片D.动态链接 8.在下列有关分页式内存管理的叙述中正确的是___D___。 A.程序和数据是在开始执行前一次性和装入的 B.产生缺页中断一定要淘汰一个页面 C.一个被淘汰的页面一定要写回外存 D.在页面中有“访问位”和“修改位”等消息 9. 在可变式分配方案中,最佳适应算法是将空白区在空白区表中按___C___次序排列。 A.地址递增B.地址递减C.容量递增D.容量递减 10. 在可变分区分配方案中,将空白分区按地址递增次序排列是要采用___C___。 A.最佳适应算法B.最差适应算法 C.首次适应算法D.最迟适应算法

计算机操作系统考试习题

习题 第一章习题 一、单选题 (1)当CPU执行操作系统代码时,称处理机处于( )。 A.执行态 B.目态 C.管态 D.就绪态 (2)在下列性质中,( )不是分时系统的特征。 A.多路性 B.交互性 C.独立性 D.成批性 (3)下列仅一条指令( )只能在管态下执行。 A.读取时钟指令 B.访管指令 C.屏蔽中断指令 D.取数指令 二、填空题 (1) 在计算机系统中配置操作系统的主要目的是___________________,操作系统的主要功能是管理计算机系统中的硬件和资源,其中包括处理机管理、存储器管理,以及设备管理和文件管理,这里的处理机管理主要是对进程进行管理。 (2) 利用缓冲区能有效地缓和CPU 和I/O设备之间速度不匹配的矛盾,虚拟设备的功能是使_____________变成能被多个进程同时使用的_________。 第二章习题 一、填空题 (1)对于一个可执行程序文件,该程序与执行它的进程是一对多的关系。 (2)在单CPU系统中实现并发技术后。

A.进程在一个时间段内并行执行,CPU与外设并行工作。 B.进程在一个时刻并行执行,CPU与外设并行工作。 C.进程在一个时间段内并行执行,CPU与外设串行工作。 D.进程在一个时刻并行执行,CPU与外设串行工作。 (3)从静态角度上看,进程是由PCB、程序段,数据段三部分组成。 (4)正在执行的进程由于用完其时间片而被暂停执行,此时进程应从执行状态变成为就绪状态。 (5)引入进程,可带来资源利用率的提高和系统吞吐量的增加的好处,但却增加了系统的空间和时间开销。 (6)临界区是指进程中用于访问临界资源的那段代码。 (7) ①C是一种只能由P和V操作所改变的整型变量,①可用于实现进程的② D 和③ A ,②是指排他性地访问临界资源。 ①:A.控制变量B.锁 C.整型信号量 D.记录型信号量 ②,③:A.同步 B.通信 C.调度 D.互斥 (8)设有6个进程共享同一互斥段,若最多允许有3个进程进入互斥段,则所采用的互斥信号量的初值为 3 。 (9)有3个进程共享同一程序段,而每次最多允许两个进程进入该程序段,若用P、V操作作同步机制,则记录型信号量S的取值范围为2,1,0 ,-1。 (10)为实现消息缓冲通信,在PCB中应增加消息队列首指针、消息队列互斥信号量和消息队列资源信号量三个数据项。 (11)若记录型信号量S的初值为2,当前值为-1,则表示有 B 等待进程。 A.0个 B.1个 C.2个 D.3个

计算机操作系统习题及答案()

第3章处理机调度1)选择题 (1)在分时操作系统中,进程调度经常采用_D_ 算法。 A. 先来先服务 B. 最高优先权 C. 随机 D. 时间片轮转 (2)_B__ 优先权是在创建进程时确定的,确定之后在整个进程运行期间不再改变。 A. 作业 B. 静态 C. 动态 D. 资源 (3)__A___ 是作业存在的惟一标志。 A. 作业控制块 B. 作业名 C. 进程控制块 D. 进程名 (4)设有四个作业同时到达,每个作业的执行时间均为2小时,它们在一台处理器上按单道方式运行,则平均周转时间为_ B_ 。 A. l小时 B. 5小时 C. 2.5小时 D. 8小时 (5)现有3个同时到达的作业J1、J2和J3,它们的执行时间分别是T1、T2和T3,且T1<T2<T3。系统按单道方式运行且采用短作业优先算法,则平均周转时间是_C_ 。 A. T1+T2+T3 B. (T1+T2+T3)/3 C. (3T1+2T2+T3)/3 D. (T1+2T2+3T3)/3 (6)__D__ 是指从作业提交给系统到作业完成的时间间隔。 A. 运行时间 B. 响应时间 C. 等待时间 D. 周转时间 (7)下述作业调度算法中,_ C_调度算法与作业的估计运行时间有关。 A. 先来先服务 B. 多级队列 C. 短作业优先 D. 时间片轮转 2)填空题 (1)进程的调度方式有两种,一种是抢占(剥夺)式,另一种是非抢占(非剥夺)式。 (2)在_FCFS_ 调度算法中,按照进程进入就绪队列的先后次序来分配处理机。 (3)采用时间片轮转法时,时间片过大,就会使轮转法转化为FCFS_ 调度算法。 (4)一个作业可以分成若干顺序处理的加工步骤,每个加工步骤称为一个_作业步_ 。 (5)作业生存期共经历四个状态,它们是提交、后备、运行和完成。 (6)既考虑作业等待时间,又考虑作业执行时间的调度算法是_高响应比优先____ 。 3)解答题 (1)单道批处理系统中有4个作业,其有关情况如表3-9所示。在采用响应比高者优先调度算法时分别计算其平均周转时间T和平均带权周转时间W。(运行时间为小时,按十进制计算) 表3-9 作业的提交时间和运行时间

计算机操作系统考试试题汇总

计算机操作系统考试试题汇总

计算机操作系统试题 一填空: 1.操作系统为用户提供三种类型的使用接 口,它们是命令方式和系统调用和图形用户界面。 2.主存储器与外围设备之间的数据传送控制 方式有程序直接控制、中断驱动方式、DMA方式和通道控制方式。 3.在响应比最高者优先的作业调度算法中, 当各个作业等待时间相同时,运行时间短的作业将得到优先调度;当各个作业要求运 行的时间相同时,等待时间长的作业得到优先调度。 4.当一个进程独占处理器顺序执行时,具有 两个特性:封闭性和可再现性。 5.程序经编译或汇编以后形成目标程序,其指令的顺序都是以零作为参考地址,这些地 址称为逻辑地址。 6.文件的逻辑结构分流式文件和记录式文件二种。 7.进程由程度、数据和FCB组成。 8.对信号量S的操作只能通过原语操作进行,对应每一个信号量设置了一个等待队列。 9.操作系统是运行在计算机裸机系统上的最基本的系统软件。 10.虚拟设备是指采用SPOOLING技术,将某个独享设备改进为供多个用户使用的的共享设备。 11.文件系统中,用于文件的描述和控制并 与文件一一对应的是文件控制块。12.段式管理中,以段为单位,每段分配一 个连续区。由于各段长度不同,所以这些存储区的大小不一,而且同一进程的各段之 间不要求连续。 13.逻辑设备表(LUT)的主要功能是实现设备独立性。 14在采用请求分页式存储管理的系统中,地址变换过程可能会因为缺页和越界等原因而产生中断。 16. 段的共享是通过共享段表实现的。17.文件的物理结构分为顺序文件、索引文件和索引顺序文件。 18.所谓设备控制器,是一块能控制一台或多台外围设备与CPU并行工作的硬件。 19. UNIX的文件系统空闲空间的管理是采 用成组链接法。20分页管理储管理方式能使存储碎片尽 可能少,而且使内存利用率较高,管理开销 小。20.计算机操作系统是方便用户、管理 和控制计算机软硬件资源的系统软件。 21.操作系统目前有五大类型:批处理操 作系统、分时操作系统、实时操作 系统、网络操作系统和分布式操作 系统。 22.按文件的逻辑存储结构分,文件分为有结 构文件,又称为记录式文件和无结构文 件,又称流式文件。 23.主存储器与外围设备之间的信息传送操 作称为输入输出操作。 24、在设备管理中,为了克服独占设备速度 较慢、降低设备资源利用率的缺点,引入了 虚拟分配技术,即用共享设备模拟独占 设备。 25、常用的内存管理方法有分区管理、页 式管理、段式管理和段页式管理。 26、动态存储分配时,要靠硬件地址变换机 构实现重定位。 27、在存储管理中常用虚拟存储器方式来 摆脱主存容量的限制。 28、在请求页式管理中,当硬件变换机构 发现所需的页不在内存时,产生缺页中断 信号,中断处理程序作相应的处理。 29、置换算法是在内存中没有空闲页面时 被调用的,它的目的是选出一个被淘汰的页 面。如果内存中有足够的空闲页面存放所 调入的页,则不必使用置换算法。 30、在段页式存储管理系统中,面向用户的 地址空间是段式划分,面向物理实现的地 址空间是页式划分。 31、文件的存储器是分成大小相等的物理 块,并以它为单位交换信息。 32、虚拟设备是通过SPOOLing技术把独 占设备变成能为若干用户共享的设备。 33、缓冲区的设置可分为单缓冲、双缓 冲、多缓冲和缓冲池。 34、在多道程序环境中,用户程序的相对地 址与装入内存后的实际物理地址不同,把相 对地址转换为物理地址,这是操作系统的地 址重地位功能。 35. 在操作系统中,进程是一个资源分配 的基本单位,也是一个独立运行和调度 的基本单位。 36. 在信号量机制中,信号量S > 0时的值表 示可用资源数目;若S < 0,则表示等 待该资源的进程数,此时进程应阻塞。 37. 操作系统提供给编程人员的唯一接口是 系统调用。 38. 设备从资源分配角度可分为独占设备, 共享设备和虚拟设备。 39. 设备管理的主要任务是控制设备和CPU 之间进行I/O操作。 40. 常用的文件存取方法有顺序存取法, 随机存取法和按键存取法。 41. 在页面置换算法中最有效的一种称为 LRU算法。 42. 地址变换机构的基本任务是将虚地址空 间中的逻辑地址变换为内存中的物理地 址。 43.在 UNIX 系统中采用的页面置换算 法是页面缓冲算法。 44.现代操作系统的两个重要特征是 并发和共享。 45.为文件 file.c 的同组用户增加修 改权限的UNIX 命令为chmod g+w file.c。 46.显示目录 mydir 中文件的详细信 息的UNIX 命令为Ls –l mydir。 47. 操作系统的基本类型有批处理操作系 统,分时操作系统和实时操作系统 三种。 48.采用对换方式在将进程换出时,应首先 选择处于阻塞且优先权低的进程换出内存。 49. 能方便实现信息共享的存储管理办法有 段式和段页式。 50.选择距当前磁头最近,且方向一致 的磁盘调度算法循环扫描算法。 51.在页面置换算法中可实现的最有效的一 种称为LRU。 52.UNIX 系统向用户提供的用于创建新进程 的系统调用是fork()。 53.UNIX 系统中用于建立无名管道的系统调 用是pipe()。 54.在成组链结法中,将第一组的空 闲块号和该组的空闲块数目 记入到内存的工作栈中,作为当前 可供分配的空闲盘块号。 54.现代操作系统的两个重要特征是

计算机操作系统(第四版)课后习题答案第二章

第二章 1. 什么是前趋图?为什么要引入前趋图? 答:前趋图(Precedence Graph)是一个有向无循环图,记为DAG(Directed Acyclic Graph),用于描述进程之间执行的前后关系。 2. 画出下面四条诧句的前趋图: S1=a:=x+y; S2=b:=z+1; S3=c:=a-b; S4=w:=c+1; 答:其前趋图为: 3. 为什么程序并发执行会产生间断性特征? 程序在并发执行时,由于它们共享系统资源,以及为完成同一项任务而相互合作,致使在这些并发执行的进程之间,形成了相互制约的关系,从而也就使得进程在执行期间出现间断性。 4. 程序并发执行时为什么会失去封闭性和可再现性? 因为程序并发执行时,是多个程序共享系统中的各种资源,因而这些资源的状态是由多个程序来改变,致使程序的运行失去了封闭性。而程序一旦失去了封闭性也会导致其再失去可再现性。 5. 在操作系统中为什么要引入进程概念?它会产生什么样的影响? 为了使程序在多道程序环境下能并发执行,并能对并发执行的程序加以控制和描述,从而在操作系统中引入了进程概念。影响: 使程序的并发执行得以实行。 6. 试从动态性,并发性和独立性上比较进程和程序? a. 动态性是进程最基本的特性,可表现为由创建而产生,由调度而执行,因得不到资源而暂停执行,以及由撤销而消亡,因而进程由一定的生命期;而程序只是一组有序指令的集合,是静态实体。 b. 并发性是进程的重要特征,同时也是OS的重要特征。引入进程的目的正是为了使其程序能和其它建立了进程的程序并发执行,而程序本身是不能并发执行的。 c. 独立性是指进程实体是一个能独立运行的基本单位,同时也是系统中独立获得资源和独立调度的基本单位。而对于未建立任何进程的程序,都不能作为一个独立的单位来运行。 7. 试说明PCB的作用?为什么说PCB是进程存在的唯一标志? a. PCB是进程实体的一部分,是操作系统中最重要的记录型数据结构。PCB中记录了操作系统所需的用于描述进程情况及控制进程运行所需的全部信息。因而它的作用是使一个在多道程序环境下不能独立运行的程序(含数据),成为一个能独立运行的基本单位,一个能和其它进程并发执行的进程。 b. 在进程的整个生命周期中,系统总是通过其PCB对进程进行控制,系统是根据进程的PCB而不是任何别的什么而感知到该进程的存在的,所以说,PCB是进程存在的唯一标志。 11.试说明进程在三个基本状态之间转换的典型原因。 答:(1)就绪状态→执行状态:进程分配到CPU资源(2)执行状态→就绪状态:时间片用完(3)执行状态→阻塞状态:I/O请求(4)阻塞状态→就绪状态:I/O完成 12.为什么要引入挂起状态?该状态有哪些性质? 答:引入挂起状态处于五种不同的需要: 终端用户需要,父进程需要,操作系统需要,对换需要和负荷调节需要。处于挂起状态的进程不能接收处理机调度。10.在进行进程切换时,所要保存的处理机状态信息有哪些?答:进行进程切换时,所要保存的处理机状态信息有:(1)进程当前暂存信息(2)下一指令地址信息(3)进程状态信息(4)过程和系统调用参数及调用地址信息。13.在进行进程切换时,所要保存的处理机状态信息有哪些? 答:进行进程切换时,所要保存的处理机状态信息有: (1)进程当前暂存信息 (2)下一指令地址信息 (3)进程状态信息 (4)过程和系统调用参数及调用地址信息。 14.试说明引起进程创建的主要事件。答:引起进程创建的主要事件有:用户登录、作业调度、提供服务、应用请求。 15.试说明引起进程被撤销的主要事件。答:引起进程被撤销的主要事件有:正常结束、异常结束(越界错误、保护错、非法指令、特权指令错、运行超时、等待超时、算术运算错、I/O 故障)、外界干预(操作员或操作系统干预、父进程请求、父进程终止)。 16.在创建一个进程时所要完成的主要工作是什么? 答:(1)OS 发现请求创建新进程事件后,调用进程创建原语Creat();(2)申请空白PCB;(3)为新进程分配资源;(4)初始化进程控制块;(5)将新进程插入就绪队列. 17.在撤销一个进程时所要完成的主要工作是什么? 答:(1)根据被终止进程标识符,从PCB 集中检索出进程PCB,读出该进程状态。(2)若被终止进程处于执行状态,立即终止该进程的执行,臵调度标志真,指示该进程被终止后重新调度。(3)若该进程还有子进程,应将所

计算机操作系统”课程设计大作业

华南理工大学 “计算机操作系统”课程设计大作业 1)给出数据定义和详细说明; struct block_s{ /* 该块的实际长度,不包括block_s的大小。 */ int length; /* 申请该块的作业,为0表示该块空闲。 */ int owner; /* 当该块是空闲块时,offset表示下一空闲块的偏移,offset为TOTAL_BYTE表示该块是最后一个空闲块。 当该块非空闲块时,offset表示作业实际申请的大小。 */ int offset; }; 2)给出实现思想和设计流程; 该算法遍历空闲链表,找第一个大小能满足要求的块。 然后,若找到的块足够大,再把该块切成两块,返回第一块给调用者;把第二块加到空闲区链表中。

该算法遍历整个空闲链表,找一个大小能满足要求的块。并且该块是所有能满足要求的空闲块中,大小最小的块。 然后,若找到的块足够大,再把该块切成两块,返回第一块给调用者;把第二块加到空闲区链表中。 3)调试完成源程序; #include "stdio.h" #include #include #define n 10 /*假定系统允许的最大作业为n,假定模拟实验中n值为10*/

#define m 10 /*假定系统允许的空闲区表最大为m,假定模拟实验中m值为10*/ #define minisize 100 struct { float address; /*已分分区起始地址*/ float length; /*已分分区长度,单位为字节*/ int flag; /*已分配区表登记栏标志,用"0"表示空栏目*/ }used_table[n]; /*已分配区表*/ struct { float address; /*空闲区起始地址*/ float length; /*空闲区长度,单位为字节*/ int flag; /*空闲区表登记栏标志,用"0"表示空栏目,用"1"表示未分配*/ }free_table[m]; /*空闲区表*/ allocate(char J,float xk) { /*采用最优分配算法分配xk大小的空间*/ int i,k; float ad; k=-1; for(i=0;i=xk&&free_table[i].flag==1) if(k==-1||free_table[i].length

《计算机操作系统》期末试题及答案

一、单项选择题(本大题共20小题,每小题1分,共20分) 在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。 1.在配置多道批处理操作系统的计算机系统中( ) A.用户可联机、调试自己的程序 B.允许用户直接干预作业的执行C.能对外部事件实时响应 D.允许多个作业同时使用不同的外围设备 2.UNIX操作系统是一个( ) A.交互式分时操作系统 B.多道批处理操作系统 C.实时操作系统 D.分布式操作系统 3.若操作系统管理的某用户程序当前正占有中央处理器,该用户程序欲读磁盘上的文件信息,那么用户程序中相应的指令应该是( ) A.启动I/O指令 B.等待I/O指令 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.辅助存储器

相关文档
相关文档 最新文档