当前位置:文档之家› 罗宇版+操作系统答案(第二版)电子工业出版社

罗宇版+操作系统答案(第二版)电子工业出版社

罗宇版+操作系统答案(第二版)电子工业出版社
罗宇版+操作系统答案(第二版)电子工业出版社

1.2 操作系统以什么方式组织用户使用计算机?

答:操作系统以进程的方式组织用户使用计算机。用户所需完成的各种任务必须由相应的程序来表达出来。为了实现用户的任务,必须让相应功能的程序执行。而进程就是指程序的运行,操作系统的进程调度程序决定CPU在各进程间的切换。操作系统为用户提供进程创建和结束等的系统调用功能,使用户能够创建新进程。操作系统在初始化后,会为每个可能的系统用户创建第一个用户进程,用户的其他进程则可以由母进程通过“进程创建”系统调用进行创建。

1.4 早期监督程序(Monitor)的功能是什么?

答:早期监督程序的功能是代替系统操作员的部分工作,自动控制作业的运行。监督程序首先把第一道作业调入主存,并启动该作业。运行结束后,再把下一道作业调入主存启动运行。它如同一个系统操作员,负责批作业的I/O,并自动根据作业控制说明书以单道串行的方式控制作业运行,同时在程序运行过程中通过提供各种系统调用,控制使用计算机资源。

1.7 试述多道程序设计技术的基本思想。为什么采用多道程序设计技术可以提高资源利用率?

答:多道程序设计技术的基本思想是,在主存同时保持多道程序,主机以交替的方式同时处理多道程序。从宏观上看,主机内同时保持和处理若干道已开始运行但尚未结束的程序。从微观上看,某一时刻处理机只运行某道程序。

可以提高资源利用率的原因:由于任何一道作业的运行总是交替地串行使用CPU、外设等资源,即使用一段时间的CPU,然后使用一段时间的I/O设备,由于采用多道程序设计技术,加之对多道程序实施合理的运行调度,则可以实现CPU和I/O设备的高度并行,可以大大提高CPU与外设的利用率。

1.8 什么是分时系统?其主要特征是什么?适用于哪些应用?

答:分时系统是以多道程序设计技术为基础的交互式系统,在此系统中,一台计算机与多台终端相连接,用户通过各自的终端和终端命令以交互的方式使用计算机系统。每个用户都感觉到好像是自己在独占计算机系统,而在系统内部则由操作系统以时间片轮转的方式负责协调多个用户分享CPU。主要特征是:并行性:系统能协调多个终端用户同时使用计算机系统,能控制多道程序同时运行。

共享性:对资源而言,系统在宏观上使各终端用户共享计算机系统中的各种资源,而在微观上它们则分时使用这些资源。

交互性:人与计算机以交互的方式进行工作。

独占性:使用户感觉到他在独占使用计算机。

现在的系统大部分都是分时系统,主要应用于人机交互的方面。

2.1 什么是中断?什么是异常?它们有何区别?

答:中断是指来自CPU执行指令以外的事件发生后,处理机暂停正在运行的程序,转去执行处理该事件的程序的过程。

异常是指源自CPU执行指令内部的事件发生后,处理机暂停正在执行的程序,转去处理该事件的过程。

区别:广义的中断包括中断和异常,统一称为中断。狭义的中断和异常的区别在于是否与正在执行的指令有关,中断可以屏蔽,而异常不可屏蔽。

2.2什么是多级中断?为什么要把中断分级?试述多级中断的处理原则。

答:

中断分级是根据中断的轻重缓急来排序,把紧迫程度大致相当的中断源归并在同一级,而把紧迫程度差别较大的中断源放在不同的级别。一般来说,高速设备的中断优先级高,慢速设备的中断优先级低。这就是多级中断。这所以引入多级中断是因为:为使系统能及时的响应和处理所发生的紧迫中断,同时又不至于发生中断信号丢失,计算机发展早起在设计中断系统硬件时根据各种中断的轻重在线路上作出安排,从而使中断响应能有一个优先次序。

多级中断的处理原则:当多级中断同时发生时,CPU按照由高到低的顺序响应。高级中断可以打断低级中断处理程序的运行,转而执行高级中断处理程序。当同级中断同时到时,则按位响应。

2.6 什么是中断向量?其内容是什么?试述中断的处理过程。

答:中断向量:为处理方便,一般为系统中每个中断信号编制一个相应的中断处理程序,并把这些程序的入口地址放在特定的主存单元中。通常将这一片存放中断处理程序入口地址的主存单元称为中断向量。

中断向量的内容:对不同的系统,中断向量中的内容也不尽相同。一般每一个中断信号占用连续的两个单元:一个用来存放中断处理程序的入口地址,另一个用来保存在处理中断时CPU应具有的状态。

中断的处理过程:一般包括保存现场,分析中断原因,进入相应的中断处理程序,最后重新选择程序运行,恢复现场等过程。

2.7 中断/异常处理为什么要保存现场和恢复现场?现场应包括哪几方面的内容?

答:因为中断处理是一项短暂性的工作,逻辑上处理完后还要回到被中断的程序,从其恢复点继续运行。为了能实现正确的返回,并继续运行下去,在中断处理前后必须保存和恢复被中断的程序现场。

现场应包括:PC寄存器的内容,通用寄存器以及一些与程序运行相关的特殊寄存器中的内容。

2.8 操作系统内核的主要功能模块有哪些?如果采用微内核模型,原来在内核的功能中,哪些功能在微内核中实现?哪些由用户态运行的进程实现?

答:操作系统内核的主要功能模块有:1、系统初始化模块2、进程管理模块3、存储管理模块4、I/O 设备管理模块5、文件管理模块

采用微内核模型,原来在内核的功能中,少量的进程调度切换代码和中断处理程序在微内核中实现,原来由内核态实现的大部分操作系统系统调用处理等功能转由用户态运行的进程实现。

2.9 从控制轨迹上看,系统调用和程序级的过程调用都相当于在断点处插入一段程序执行,但它们却有质的区别,试述这种差别。

答:这种差别主要在于处理机运行状态的变化。发生系统调用时,处理机由用户态进入核心态;而程序调用时,运行状态不发生变化,其状态仍然保持在用户态。

2.11 试述终端命令解释程序的处理过程。

答:终端命令解释程序的处理过程如下:

①判断命令的合法性

②识别命令,如果是简单命令则处理命令,然后继续读取下一条命令

③如果是不认识的命令关键字,则在约定目录下查找与命令关键字同名的执行文件,创建子进程去执行“执行文件”程序,等待子进程结束后转继续读取下一条命令。

3.1 什么是进程?为什么要引入此概念?试述进程的特点及它与程序的区别。

答:进程是支持程序执行的机制,是程序针对某一数据集合的执行过程。引入此概念的原因:随着操作系统的发展而产生。在监督程序时代以作业形式表示程序运行,那时,作业以同步方式串行地运行每个作业步,当操作系统发展到分时系统时,为了开发同一作业中不同作业步之间的并发,作业机制已经不能满足需要,因而引入了进程机制。

进程的特点:

动态性:可动态创建,结束,也可是被调度进程

并发性:可以被独立调度,占用处理机运行

独立性:尽量把并发事务安排到不同的进程

制约性:因访问共享数据或进程间同步而产生制约.

与程序的区别:进程是程序的执行过程,程序是静态的,进程是动态的。一个进程至少是一个可执行程序,同一个程序可以由多个进程分别执行。

3.2 进程控制块的作用是什么?PCB中应包括哪些信息?

答:进程控制块的作用是:进程控制块用于保存每个进程和资源的相关信息,包括进程标识、空间、运行状态、资源等信息。以便于操作系统管理和控制进程和资源。

PCB中应包括:1、进程标识信息:本进程的标识、父进程的标识、进程所属用户的标识。2、处理机状态信息。保存进程的运行现场信息,包括用户可用寄存器的信息;控制和状态寄存器的信息;栈指针。

3.4 为什么进程状态会发生变化?何时变化?(P54)

答:进程在它的生存周期中,由于系统中各进程并发运行及相互制约的结果,使得它的状态不断发生变化。

状态变化的时机:

空→创建:当一个新进程被产生来执行一个程序时。

创建→就绪:当进程被创建完成,初始化后,一切就绪准备运行时。

就绪→运行:当处于就绪状态的进程被进程调度程序选中后。

运行→结束:当进程指示它已经完成或者因错流产时。

运行→就绪:处于运行状态的进程在其运行过程中,分给它的处理机时间片用完而让出处理机;或者在可剥夺的操作系统中,当有更高优先级的进程就绪时。

运行→阻塞:当进程请求某样东西且必须等待时。

阻塞→就绪:当进程要等待事件到来时。

3.5 进程创建的主要工作是什么?(P54)

答:进程创建时的主要工作如下:

1、接收进程运行现场初始值,初始优先级,初始执行程序描述,其它资源等参数。

2、请求分配进程描述块PCB空间,得到一个内部数字进程标识。

3、用从父进程传来的参数初始化PCB表。

4、产生描述进程空间的数据结构,用初始执行文件初始化进程空间,建立程序段,数据段、栈段等。

5、用进程运行现场初始值设置处理机现场保护区。造一个进程运行栈帧。

6、置好父进程等关系域。

7、将进程置成就绪状态。

8、将PCB表挂入就绪队列,等待时机被调度运行。

3.7 详细说明几个引起进程调度的原因。(P62)

答:1、进程主动放弃处理机时:

正在执行的进程执行完毕。操作系统在处理进程结束系统调用后应请求重新调度。

正在执行的进程发出I/O请求,当操作系统代其启动外设I/O后,在I/O请求没有完成前要将进程变成阻塞状态,应该请求重新调度。

正在执行的进程要等待其它进程或系统发出的事件时。如等待另一个进程通讯数据,这时操作系统应将现运行进程挂到等待队列,并且请求重新调度。

正在执行的进程得不到所要的系统资源,如要求进入临界区,但没有得到锁时,这时等锁的进程应自动放弃处理机或者阻塞到等锁队列上,并且请求重新调度。

2、为了支持可剥夺的进程调度方式,在以下情况发生时,因为新就绪的进程可能会按某种调度原则剥夺正运行的进程,因此也应该申请进行进程调度:

当中断处理程序处理完中断,如I/O中断、通讯中断,引起某个阻塞进程变成就绪状态时,应该请求重新调度。

当进程释放资源,走出临界区,引起其他等待该资源进程从阻塞状态进入就绪状态时,应该请求重新调度。

当进程发系统调用,引起某个事件发生,导致等待事件的进程就绪时。

其它任何原因引起有进程从其它状态变成就绪状态,如进程被中调选中时。

3、为了支持可剥夺调度,即使没有新就绪进程,为了让所有就绪进程轮流占用处理机,可在下述情况下申请进行进程调度:

当时钟中断发生,时钟中断处理程序调用有关时间片的处理程序,发现正运行进程时间片到,应请求重新调度。以便让其他进程占用处理机。

在按进程优先级进行进程调度的操作系统中,任何原因引起进程的优先级发生变化时,应请求重新调度。如进程通过系统调用自愿改变优先级时或者系统处理时钟中断时,根据各进程等待处理机的时间

长短而调整进程的优先级。

3.8 什么时候进行进程调度最为合适?请说明理由。(P63)

答:进程调度的时机:

当发生引起调度条件,且当前进程无法继续运行下去时(如发生各种进程放弃处理机的条件)可以马上进行调度与切换。

当中断处理结束或自陷处理结束返回被中断进程的用户态程序执行前,若请求调度标志置上,即可马上进行进程调度与切换。如果操作系统支持这种情况下运行调度程序,即实现了剥夺方式的调度。

3.10 对于三类进程(I/O为主、CPU为主和I/O与CPU均衡),应如何赋予它们的运行优先级并说明理由。(P67)

答:对于这三类进程,赋予的优先级由高到低分别为:I/O为主、I/O与CPU均衡、CPU为主。

理由:为了充分利用外部设备,以及对终端交互用户及时地予以响应,通常将I/O型进程列为最高优先级队列。

3.11 假设在单处理机上有五个进程(1、2、3、4、5)争夺运行,其运行时间分别为10,1,2,1,5秒,其优先级分别为3,1,3,4,2,这些进程几乎同时到达,但在就绪队列中的次序依次为1,2,3,4,5,试回答:

①给出这些进程分别适用轮转法、SPF和非剥夺优先级调度法调度时的运行进度表,其中,轮转法中的时间片取值为2。

②在上述各算法的调度下每个进程的周转时间和等待时间为多少?

③具有最短平均等待时间的算法是哪个?

答:轮转法:

进程的周转时间:进程1:19,进程2:3,进程3:5,进程4:6,进程5:15

进程的等待时间:进程1:9,进程2:2,进程3:3,进程4:5,进程5:10

平均等待时间(9+2+3+5+10)/5=5.8

SPF

平均等待时间:16/5=3.2

非剥夺优先级算法

平均等待时间:43/5=8.6

SPF算法具有最短平均等待时间。

3.19 什么是批处理作业和交互式作业?它们的特点是什么?系统如何管理?

答:批处理作业是指用户将若干用户任务合成一批,一起提交给系统进行处理的任务集合。交互式作

业是指用户的一次上机交互过程,用户通过命令语言逐条地与系统进行应答式的交互,提交作业步。

特点:批处理作业的处理过程由计算机自动运行,不需人为干预,用户也看不到中间结果。交互式作业需要系统提供终端供用户与系统交互,作业的运行由人控制,便于作业的调试以及将作业按人预想的方向进行。

4.1 并行任务如何在程序中表示?(P74)

答:并行任务在程序中主要通过并发语句来表示。如Parbegin/Parend语句

4.2 并行任务并行(并发)运行的操作系统支持基础是什么?

答:支持基础是进程和线程的引入。在多道程序设计系统中,进程之间可以并发执行,这就使多任务并行执行成为可能。同时,线程的引入,同一进程内的多个线程也可以并行运行,这也提供了任务内部的并行。提高了效率。

4.3 题略

答:答:进程P0在flag[0]=false后,进程P1跳出循环,此时刚好来了一个中断。中断使得进程P0又再次执行,此时由于P1并没有给turn赋值,从而P0可以顺利进入临界段,在P0进入临界段时产生中断,P1恢复执行,将turn赋值为1,从而P1也可以进入临界段。从而产生错误。

4.4 何谓原语?它与系统调用有何区别?如何实现原语执行的不可分割性?

答:原语是指完成某种功能且不被分割、不被中断执行的操作序列。有时也称为原子操作。

它与系统调用的区别:原语和系统调用是两个不同的概念,原语主要强调操作的不可分割性,可以认为是一个不可中断的子程序调用,但是系统调用是由用户态进入核心态,虽然系统调用一般也不被中断,但是如果有更高更紧迫的系统调用的话,还是能够打断原来的系统调用的。

实现原语执行的不可分割性:通常由硬件来实现,也可以由软件通过中断屏蔽的方法来实现。

4.6 如果P,V操作不作为原语(可分割执行),那么是否还可用于解决互斥问题?如果不能,则举例说明。

答:如果P,V操作不作为原语,那么不可用于解决互斥问题。因为如果那样的话,则:程序语言s = s-1;翻译成机器语言为:load R1, s; load R2, 1; sub R1, R2; 此时,他们之间的操作可以分割执行,假设有两个进程P1、P2,s初值为1,当P1进入P操作时,s大于0,可以进入,因此会执行上面的机器语言,将s 的值取出来,放入R1寄存器中,而此时,有可能P2进程要进入临界段,因此,它也比较s的值是否小于0,因为此时s的值仍为1,所以P2也进入临界段,出现错误。

4.13 题略

答:①

empty1=1; empty2=1; full1=0; full2=0;

parbegin

P: While(1)

{P(empty1);

put to buffer1;

V(full1);

}

Q: While(1)

{P(full1);

get from buffer1;

V(empty1);

P(empty2);

put to buffer2;

V(full2);

}

R: While(1)

{ P(full2);

get from buffer2;

V(empty2);

}

parend;

empty1=m; empty2=n; full1=0; full2=0;mutex1=1;mutex2=1; parbegin

P: While(1)

{ P(empty1);

P(mutex1);

put to buffer1;

V(full1); V(mutex1); }

Q: While(1)

{ P(full1);

P(mutex1);

get from buffer1;

V(empty1);

V(mutex1);

P(empty2);

P(mutex2);

put to buffer2;

V(full2);

V(mutex2);

}

R: While(1)

{ P(full2);

P(mutex2);

get from buffer2;

V(empty2);

V(mutex2);

}

parend;

4.14 题略

答:P1: Sa;

V(ac);

V(ae);

Sb;

P(cd);

Sd;

P(fe);

Sf;

V(fh);

Sg;

P2: P(ac);

Sc;

V(cd);

P3: P(ae);

Se;

V(fe);

P(fh);

Sh;

4.23 题略

答:解题方法,找出可能死锁的资源最多的情况。假设n个进程需要的资源数分别为:a1,a2,…. an,则占有资源数最多却刚好形成死锁的情况是:每个进程都占有比所需资源数少一个的资源数量,而此时刚好资源用光。所以是:(a1-1)+(a2-1)+……+(an-1)=m,整理得a1+a2+…+an=m+n,而要想使得系统无死锁,则必须有a1+a2+…+an

4.28 题略

答:1、Need的内容为:[0000,0750,1002,0020,0642]

2、系统是处于安全状态。

3、进程2请求0420,不能立即得到满足,因为如果给进程2分配了0420的话,系统将处于不安全状态。所以不能立即得到满足。

4.11 多元信号量机构允许P,V操作同时对多个信号量进行操作。这种机构对同时申请或释放若干个资源是非常有用的。假设二元信号量机构中的P原语定义为:

P(S,R) : While(S≤0 or R≤0);

S=S-1;

R=R-1;

试用一元信号量机构加以实现。

答:mutex: semaphore

P(mutex);

P(S);

P(R);

V(mutex);

4.15 “理发师睡觉”问题

答:可以将此题看作N个生产者和一个消费者问题。顾客作为生产者,每到来一个,就将自己放入计数器RC,以便让理发师消费至最后一个产品(顾客),因此顾客进程执行的第一个语句便是RC=RC+1。而第一个到来的顾客应该负责唤醒理发师,理发师此时正在信号量WAKEUP上等待((P(W AKEUP);该信号量的初值为0),由第一个顾客执行V(WAKEUP)。若顾客不是第一个到达,则在信号量WAIT上等待(P(WAIT)该信号量的初值为0),等理发师理完一个顾客后,执行V(WAIT)操作便可叫出该顾客理发。以上过程循环反复,理发师没每理完一个顾客,就令计数器减1,RC=0时便知此时无顾客,理发师可以继续睡觉,等待下一批顾客到达。在设信号量MUTEX(初值为1),保证对计数器RC的互斥作用。

parbegin

顾客进程:

begin

P(mutex);

rc=rc+1;

if rc=1 then V(wakeup);

elseP(wait);

V(mutex);

理发;

end;

理发师进程:

begin

P(wakeup);

repeat

理发;

P(mutex);

rc=rc-1;

if(rc!=0) then V(wait);

V(mutex);

until rc=0;

end;

parend;

4.21 题略

5.5 答:需要的硬件支持可以选择两种:1、上、下界寄存器和地址检查机制;2、基地址寄存器、长度寄存器和动态地址转换机制。

地址转换的过程也即是地址重定位的过程,也有两种方法实现地址重定位:

1、静态重定位,用户代码中使用相对地址,在将目标代码加载到主存时,装配链接程序通过如下的方法将其装配成绝对地址:原地址+目标代码所在主存起始地址;

2、动态重定位,它首先将程序在主存的起始地址及其总长度存放于基地址寄存器和长度寄存器,当在执行访存指令时,首先进行越界检查,若不越界,则将地址改成“原地址+目标代码所在主存起始地址”,然后进行访问。

实现存储保护:

当使用第一种硬件机制时,每访问一次主存,地址检查机制将CPU提供的访存地址与上、下界寄存器的值进行比较。若介乎上下界之间,则可用该地址访问存储器,否则终止程序的运行。

当使用第二种硬件机制时,,每访问一次主存,它将CPU提供的访存地址与长度寄存器的值进行比较。若越界,则终止程序,否则与基地址寄存器中的值相加成为访问贮存的绝对物理地址。

5.6为什么要引进页式存储管理方法?在这种管理方法中硬件应提供哪些支持?

答:原因在于连续分配存储空间存在许多存储碎片和空间管理复杂的问题,而连续分配要求把作业放在主存的一片连续区域中,这往往容易出现连续空间因不能容纳作业或进程而不可用。而页式存储管理方法可以避免这种情况的发生。

硬件应提供的支持:动态地址转换机构,页表长度寄存器,联想存储器(页表以及访问权限域均在主存中)。

5.7 题略

答:(1)访问一次页面单元需要访问两次主存,因此访问时间为:1.2*2=2.4us;

(2)等效存储访问时间为:1.2*75%+2.4*25%=1.5us;

5.11 在页式存储管理系统中怎样使多个作业共享一个程序或数据?

答:在每个作业的页表中,将需要共享的程序映射到存放该共享程序或数据的相同的物理页帧上。

5.17 题略

答:系统得到物理地址的过程:

由题设可得,虚存地址的逻辑页号为:11123,页内偏移为456;

从联想存储器中查找逻辑页号为11123对应的物理页帧号,如果有,则将物理页帧号和页内偏移合成成物理地址进行访问,否则从页表中查找。

在页表中找到相应项,查看该页的合法位是否置上,若为1,则将该项指出的页帧号和页内偏移合成成物理地址进行访问,若合法位为0,则产生页故障,系统将页表项所指的辅存块号调入主存,然后合成物理地址进行访问。

硬件完成的工作:获得页帧号,合成物理地址,以及合法位是否置上等。软件完成的工作:接收缺页异常,对缺页故障进行处理,返回现场。

5.18 题略

答:访问的相应逻辑页号为:0,0,1,1,0,3,1,2,2,4,4,3。

采用FIFO:故障数:6;页故障率:6/12=50%

采用LRU,淘汰上次使用距当前最远的页:故障数:7;页故障率为:7/12=58.3%

采用OPT,淘汰下次访问距当前最远的那些页中序号最小的一页:故障数:5;页故障率:5/12=41.7% 5.19 题略

答:①栈结构对数据的访问一般在栈顶附近,或者离栈顶不远,符合程序的局部性行态;

②杂凑技术取决于Hash值的大小,如果太大,则会频繁出现缺页,不利于程序的局部性行态;

③顺序搜索是根据当前项向前或向后逐个搜索,符合程序的局部性行态;

④goto语句往往使程序从一个地方跳到另一个地方,空间跨度往往比较大,少用或不用goto语句使程序能够在局部范围内执行,符合程序的局部性行态。

5.24 题略

答:驻留集大小为2个页帧,但是程序要长期驻留在主存中,必须占用一页,所以驻留集中只有一页

留给数据使用。假设数组中每一个元素占一个字的空间,因为每一页有100个字,而且数组是按行主顺序存放,当采用1策略时,赋值顺序为:A(1,1),A(2,1),…A(100,1)…,每一次赋值都产生缺页异常,因此页故障数为100*100=10000,而采用2策略时,只在第一维产生变化时才产生缺页故障,因此页故障数为100。

5.31 设有如下访问串:6,9,2,1,0,3,5,4,3,2,1,0,2,1。取△=4,给出用WS与VMIN两种算法控制该访问串驻留集的变化情况。

答:用WS方法,有△个时间未被引用则将其淘汰;

用VMIN方法,若某页下次访问的距离大于△,则将其淘汰。

5.33 如果主存中的某页正在与外部设备交换信息,那么在页故障中断时可以将这一页淘汰吗?对于这种情况应如何解决?(P110-111)

答:不能将这一页淘汰,,因为如果淘汰出去的话,则新进入的页将代替正在交换信息的页,而I/O数据区将被新换入的页所代替,从而导致错误。因此,应该等该页与外部设备交换信息结束之后,才能将该页淘汰。

5.34 题略

答:访问虚地址(233)8时不会发生缺页故障,因为根据虚地址可得,它的页号为2,页内偏移为(33)8,而在页表中页号为2的页有效位为1,说明在主存中,相应的页帧号为20,所以物理地址为(20)8*82+(33)8=(2033)8,而访问(345)8时会发生缺页中断,根据虚地址可得它的页号为3,页内偏移为(45)8,查页表可得,该页的有效位为0,因此不在主存中,产生缺页中断,它首先向主存申请一个可用的页帧,然后检查该故障页的页类型,为零页,因此将刚申请到的页帧清零,将页帧号填入页表项中,将合法位置为1,然后返回。

6.2 设备控制器与处理机如何通信?

答:

CPU通过向控制器寄存器写命令字来发出I/O命令,

控制器接到命令后,完成具体的I/O操作,

CPU则反复读取控制器的状态,测试控制器是否完成操作。

或者转向其他工作,当控制器完成相应操作后向CPU发出中断信号。

6.3 简述各种不同的I/O控制方式?

答:主要有三种不同的I/O控制方式:

1、程序直接控制方式。当遇到一条与I/O相关的指令时,CPU向相应的设备控制器发命令,设备控制器执行相应的操作,将I/O状态寄存器的相应位置上,然后CPU周期性地检查设备控制器的状态寄存器,直到发现I/O操作完成为止。CPU直接控制I/O操作过程,包括测试设备状态,发送读/写命令与数据。

2、中断驱动方式。CPU向设备控制器发出命令后,继续做其他工作。当设备控制器准备好CPU交换数据时,设备控制器中断CPU,要求服务。CPU被中断后,执行CPU寄存器和设备控制器之间的数据传输,然后恢复被中断的工作。

3、DMA方式:当CPU需要读/写数据块时,它给DMA部件发命令,然后继续执行其他的工作。DMA 负责此次I/O的完成,DMA部件每次一个字地将整个数据块直接读取或写入主存,而不需经过CPU寄存器。当传送过程完成后,DMA部件向CPU发中断信号。

6.4 什么是独占型设备和分时共享型设备?如何保证独占型设备的独占使用?(P147)

答:独占型设备是指在申请设备时,如果设备空闲,就将其独占,不再允许其他进程申请使用,一直等到该设备被释放,才允许被其他进程申请使用。

分时共享型设备:设备接受多个I/O请求,并将其放在请求队列中,不同进程的I/O操作请求以排队的方式分时地占用设备进行I/O。

如何保证独占使用:对独占型设备进行独占申请,即在申请时,如果申请成功,就对该设备进行加锁操作,直到该I/O完成后,才释放锁,从而释放该设备。

6.5 以SPOOLing方式使用设备是如何实现的?

答:SPOOLing技术是在批处理操作系统时代引入的,即假脱机I/O技术,它主要针对独占型设备的使用。以打印机为例,首先为每个打印机建立一个打印服务进程,和一个打印队列。打印服务进程循环地获取打印队列中的表项,对每一个要输出的文件副本,服务进程从文件副本中读取数据,再成批地调用写打印机的系统调用将该文件的数据打印在纸上。

6.6 以下的工作各在3个I/O软件层的哪一层完成?

答:①涉及到具体的磁道、扇区、磁头的计算,这属于设备驱动与中断处理层。

②属于缓冲I/O的功能,因此属于与设备无关的I/O层。

③中涉及到设备寄存器的操作,而能操作设备寄存器的只有设备驱动与中断处理层。

④是对设备使用权限的内容,因此属于与设备无关的I/O层。

⑤用户请求,他请求系统将二进制整数转换成ASCII码再输出,属于用户层I/O。

6.8 如何使用缓冲区实现“预先读”和“延迟写”?这两种读/写方式的优缺点是什么?

答:预先读就是:将从设备控制器来的数据先送入系统缓冲区,该数据块送完后,用户进程将此数据块移到用户进程空间。并且立即请求下一个数据块。

延迟写就是:当需要将数据写出时,首先将数据块从用户进程空间拷贝到系统缓冲区,这时可继续执行用户进程,并可在需要时换出主存。操作系统会安排最终将系统缓冲区的内容输出到设备上。

优点是:减少CPU访问目标存储部件的次数。提高了慢速I/O设备和快速CPU交互的速度,提高输入输出速度。

缺点:预先读是基于“下一数据块最终将被使用”这一猜测。因此,当这一猜测失败时,系统将耗费更多的时间来处理,猜测失败的代价是很大的。同时,增加了操作系统的复杂度。

延迟写也增加了操作系统的复杂度,同时延迟写还可能出现数据丢失的情况。

6.11 假设对磁盘的请求串为95,180,35,120,10,122,64,68,磁头初始位置为30,试分别画出FCFS,SSTF,SCAN,C-SCAN调度算法的磁头移动轨迹及磁头移动的磁道数(磁道号:0~199)。

答:FCFS:First Come First Served,

SSTF:Shortest Seek Time First,

SCAN:扫描

C-SCAN:单向扫描

6.16 在磁盘管理程序中何时进行磁盘调度?

答:当有多个进程请求读取磁盘中的数据,而这些数据散布在磁盘的不同位置的时候,应该进行磁盘调度。此时磁盘驱动程序应维持一个磁盘I/O请求队列,对已有请求和新到来请求进行排队优化,确保相邻请求其磁道相距最近。

6.18 RAID级别0+1有何特点?可用于什么应用环境?

答:RAID级别0+1是指RAID级别0和1的结合。RAID级别0提供性能,RAID级别1提供可靠性。特点是性能高、可靠性好、价格高(需要2倍磁盘数目)

应用环境:通常用于性能和可靠性都很重要的环境中。

7.2 一个可以支持随机访问的文件应该用什么方式放在辅存中?

答:一个可以支持随机访问的文件应该用索引结构的方式将其放在辅存中。

7.4 试述文件控制块的作用,请设计在树形文件目录中快速查找文件控制块的方法。

答:文件控制块是一张用于存放文件的标识、定位、说明和控制等信息的表格,用于管理和控制文件系统中的全部文件。

快速查找文件控制块的方法:引入“当前目录”,用户可指定某级目录作为用户“当前目录”,当前目录的文件控制块事先已读入并保存在主存。当用户注册时,操作系统在记账文件中查找与该用户所对应的信息项。记账文件中保存了一个指向用户初始“当前目录”的路径名。“当前目录”最初在用户登录时自动置为该用户的初始“当前目录”。操作系统提供专门的系统调用供用户随时改变“当前目录”。在查找时,操作系统从根目录或“当前目录”进行查找,因为当前目录的FCB通常是放在主存中的,所以查

找速度会比较快。

7.7 无环图目录结构与树形目录结构相比,优势在哪里?如何删除一个节点?

答:无环图目录结构的优势是利于文件的共享,因为当树形目录结构想共享某个文件时,需要在不同的路径保存多个副本,这样浪费了存储空间。而无环图目录结构只需增加一个称为链的新目录项,让其指向需要共享的文件即可。节省了空间,管理更灵活。

如何删除节点:为每个节点设置一个共享计数器,每当增加了一条共享链时,就将其共享计数器加1,每当要删除某个节点时,其共享计数器减1,当计数器为0时,就真正删除该节点。

7.9 请比较辅存空间分配和主存空间分配的特点。

答:辅存空间的特点是容量大,如何在大量的文件中快速查找和定位你所需的文件是辅存空间分配需要考虑的主要问题。在逻辑空间,通常将文件组织成目录结构,在物理存储时,将其组织成链表结构或索引结构存放在辅存中,文件系统对未分配空间保持一个“自由空间表”的数据结构,通常组织成位向量的形式,每一个柱面对应一个位向量,所有位向量组成一个位图数组,它记录了整个磁盘空间的使用情况。

而主存空间容量小,访问速度快,因此主存空间分配主要考虑的是如何提高主存空间的访问速度、利用率和命中率。因此,在主存空间分配之前,将所有的主存空间分页,并将每一页登记在页表中,将用户的逻辑页对应着主存的物理页帧,分配主存空间时在页表中登记,当需替换页时,采用好的替换策略提高主存的命中率。

7.10 试述“打开文件”所做的工作。

答:根据参数所指出的文件名和卷名找到相应文件。

将该文件的文件控制块存入主存的活跃文件目录表。

建立该文件的读/写状态信息表。

将该文件的信息存入用户的“打开文件表”中。

7.11 写文件系统调用处理时超过文件已有空间系统,应如何处理?可以让文件大小动态增长吗?

答:当超过文件已有空间系统时,应为文件系统申请更大的辅存空间。可以让文件大小动态增长。7.13 请说明UNIX操作系统文件访问控制的方法。

答:将使用文件的用户分为三类:文件主,同组的若干用户,其他用户。在访问表中列出这三类用户的访问权限,然后直接保存在文件控制块中。当用户需要访问文件时,系统根据进程用户所述的类型,在访问表中验证此次访问的权限。如果拥有此权限则访问,否则拒绝访问。

7.15 文件控制块中的文件定位信息用于文件系统层次结构的哪一层?

答:用于文件系统层次结构的第四层:物理文件系统层。因为文件控制块中的文件定位信息主要是为了操作系统根据文件的逻辑地址来找到存储该文件的物理地址,而这正是物理文件系统要做的工作。

8.2 利用多线程编程的好处有哪些?

答:多线程能够共享程序和数据空间,使得系统的开销变小,并行程序设计性能更好,程序设计界面更规范,比多进程及异步调用等并行方式更易编程。如果在多处理机上进行多线程编程,则可以使线程之间完全并行,大大加速进程的运行。

8.3 比较用户级和内核级线程实现方法的优缺点。

答:采用用户级线程实现的优点:

为用户提供一个简明的同步并行编程环境。

开销小。

无需该县操作系统内核,完全由用户级库程序实现。

用户无需考虑系统资源限制。

缺点:

不能做到进程内线程在多处理机上真正并行运行。

若因某种原因所在进程被阻塞,多线库无法知道刚运行的线程被阻塞,不能转到其他线程运行。

内核级线程实现的优点:

可以支持进程内多线程在多处理机上真正的并行。

不会出现在用户级线程实现方式下,线程在内核被阻塞但多线库调度器一无所知的情形。

缺点:

内核级线程与用户级线程相比开销要大一些。

内核级线程占用系统空间及资源,并不适合用户根据其任务的并行度来创建相应多的线程。

8.6 试描述线程的组调度的实现方法。

答:线程的组调度主要有以下两种方法:

引导型组调度:在自调度系统中,当某个处理机调度到某一用户的进程的线程时,处理机通过机间中断机制进行机间通信,来通知并引导其他处理机去调度同一用户的其他进程。

浮动型组调度:在共享主存的对称式多机系统中,可采用浮动型组调度。首先为每个处理机设计一个待运行线程TCB指针域,当内核调度程序进行组调度时将被选进程的所有线程TCB表指针依次填入各处理机的待运行线程TCB指针域中,这样就替其他处理机完成了调度。再依次向处理机发送机间中断,其他处理机在进行内核调度程序运行时发现已有待运行线程,表明已由其他处理机上运行的调度程序帮助本处理机进行调度。

8.7 如果一个线程要等待另一个线程传数据给它,请问如何实现?要用到哪些线程函数?

答:当同一个进程内部的两个线程时,由于这两个线程共享了同一片用户进程空间,因此可以在共享变量间进行同步与通信。当采用硬件锁、信号量来同步时,用户编程如果不安排进行其他工作,则线程在原地占用处理机,执行循环以判断数据是否到了,从而引起空等。

需要用到的线程函数有:1、线程加锁/解锁:pthread_mutex_lock(pthread_mutex_t *mutex); pthread_mutex_unlock(pthread_mutex_t *mutex); 2、等待线程结束:pthread_join(pthread_t tid, void**status);

当不同进程之间的两个线程通信时,变成了两个进程间通信,可以采用消息传递的方法。函数就是Send(),Receive()

计算机操作系统教程课后答案

第一章绪论 1.什么是操作系统的基本功能? 答:操作系统的职能是管理和控制汁算机系统中的所有硬、软件资源,合理地组织计算 机工作流程,并为用户提供一个良好的工作环境和友好的接口。操作系统的基本功能包括: 处理机管理、存储管理、设备管理、信息管理(文件系统管理)和用户接口等。 2.什么是批处理、分时和实时系统?各有什么特征? 答:批处理系统(batchprocessingsystem):操作员把用户提交的作业分类,把一批作业编成一个作业执行序列,由专门编制的监督程序(monitor)自动依次处理。其主要特征是:用户脱机使用计算机、成批处理、多道程序运行。 分时系统(timesharingoperationsystem):把处理机的运行时间分成很短的时间片,按时间片轮转的方式,把处理机分配给各进程使用。其主要特征是:交互性、多用户同时性、独立性。 实时系统(realtimesystem):在被控对象允许时间范围内作出响应。其主要特征是:对实时信息分析处理速度要比进入系统快、要求安全可靠、资源利用率低。 3.多道程序(multiprogramming)和多重处理(multiprocessing)有何区别? 答;多道程序(multiprogramming)是作业之间自动调度执行、共享系统资源,并不是真正地同时执行多个作业;而多重处理(multiprocessing)系统配置多个CPU,能真正同时执行多道程序。要有效使用多重处理,必须采用多道程序设计技术,而多道程序设计原则上不一定要求多重处理系统的支持。 4.讨论操作系统可以从哪些角度出发,如何把它们统一起来? 答:讨论操作系统可以从以下角度出发: (1)操作系统是计算机资源的管理者; (2)操作系统为用户提供使用计算机的界面; (3)用进程管理观点研究操作系统,即围绕进程运行过程来讨论操作系统。

操作系统期末试卷(含答案)79149

操作系统复习题1 一、判断题 1.分时系统中,时间片设置得越小,则平均响应时间越短。() 2.多个进程可以对应于同一个程序,且一个进程也可能会执行多个程序。() 3.一个进程的状态发生变化总会引起其他一些进程的状态发生变化。() 4.在引入线程的OS中,线程是资源分配和调度的基本单位。() 5.信号量的初值不能为负数。() 6.最佳适应算法比首次适应算法具有更好的内存利用率。() 7.为提高对换空间的利用率,一般对其使用离散的分配方式。() 8.设备独立性是指系统具有使用不同设备的能力。() 9.隐式链接结构可以提高文件存储空间的利用率,但不适合文件的随即存取。() 10.访问控制矩阵比访问控制表更节约空间。() 二、选择题 1.在设计分时操作系统时,首先要考虑的是(A);在设计实时操作系统时,首先要考虑的是(B);在设计批处理系统时,首先要考虑的是(C)。 A,B,C :(1)灵活性和适应性;(2)交互性和响应时间;(3)周转时间和系统吞吐量;(4)实时性和可靠性。 2.对一个正在执行的进程:如果因时间片完而被暂停执行,此时它应从执行状态转变为(D)状态;如果由于终端用户的请求而暂停下来,则它的状态应转变为(E)状态;如果由于得不到所申请的资源而暂停时下来,则它的状态应转变为(F)状态。D,E,F:(1);静止阻塞(2);活动阻塞(3);静止就绪(4);活动就绪(5)执行。 3.我们如果为每一个作业只建立一个进程,则为了照顾短作业用户,应采用(G);为照顾紧急作业用户,应采用(H);为能实现人机交互,应采用(I);而能使短作业、长作业和交互作业用户满意时,应采用(J)。 G,H,I,J:(1);FCFS调度算法(2);短作业优先调度算法;(3)时间片轮转算法;(4)多级反馈队列调度算法;(5)基于优先权的剥夺调度算法。 4.由固定分区发展为分页存储管理方式的主要推动力是(K);由分页系统发展为分段系统,进而发展为段页式系统的主要动力分别是(L)和(M)。 K,L,M:(1)提高内存利用率;(2)提高系统吞吐量;(3)满足用户需要;(4)更好地满足多道程序进行的需要;(5)既满足用户需求,又提高内存利用率。 5.在存储管理中,不会产生内部碎片的存储管理方式是(N);支持虚拟存储器,但不能以自然的方式提供存储器的共享和存取保护机制的存储管理方式是(O)。 N:(1)分页式存储管理;(2)分段式存储管理;(3)固定分区式存储管理;(4)段页式存储管理。 O:(1)段页式存储管理;(2)请求分区页式存储管理;(3)请求分段式存储管理;(4)可变分区存储管理;(5)固定分区存储管理;(6)单一连续分区式存储管理。 6.磁盘调度主要是为了优化(P),下列算法中能避免磁盘粘着的现象的是(Q)。P:(1)寻道时间;(2)旋转延迟时间;(3)传输时间。 Q:(1)SSTF;(2)FCFS;(3)SCAN;(4)CSCAN;(5)FSCAN。 7.文件系统中,目录管理最基本的功能是(R),位示图的主要功能是(S),FAT 表的主要功能是(T)。 R,S,T:(1)实现按名存取;(2)提高文件存储空间利用率;(3)管理文件存储器的空闲空间;(4)指出分配给文件的盘块(首个盘块除外)的地址;(5)管理文件存储器的空闲空间,并指出分配给文件的盘块(首个盘块除外)的地址。 8.文件系统采用多级目录结构,可以(U)和(V)。 U,V:(1)缩短访问文件存储器时间;(2)节省主存空间;(3)解决不同用户文件的命名冲突;(4)方便用户读写文件;(5)提高检索目录的速度。9.计算机系统中信息资源的安全包括(W)、(X)和(Y)三个方面,其中程序被删除属于(W)方面的威胁,数据被非法截取属于(X)方面的威胁,消息被更改属于(Y)方面的威胁。 W,X,Y:(1)保密性;(2)完整性;(3)可用性;(4)方便性。 三、填空题 1.操作系统最基本的特征是(1)和(2),最主要的任务是(3)。 2.引入进程的主要目的是(4),进程存在的唯一标志是(5)。 3.(6)是指通过破坏死锁产生的必要条件来防止死锁的发生。引起死锁的四个必要条件中,(7)是不应该被破坏的,但对某些特殊的资源(如打印机),该条可通过(8)来破坏;而其他能被破坏的三个必要条件分别是(9)、(10)和(11)。 4.虚拟存储器管理的基础是(12)原理,在请求分页管理方式中,页表中的状态位用来只是对应页(13)修改位用来只是对应页(14),引用位则是供(15)使用;而在请求分段系统还增加了增补位,它用来指示(16)。 5.设备驱动程序是(17)与(18)之间的通信程序如果系统中有3台相同的单显和2台相同的彩显则必须为它们配置(19)种设备驱动程序 6.廉价磁盘冗余阵列可组成一个大容量磁盘系统,它利用(20)技术来提高磁盘系统的存取进度,而利用(21)技术来增加磁盘系统的可靠性 7.包过滤防火墙工作在(22)层,采用代理服务技术的防火墙则工作在(23)层 8.UNIX文件系统对文件存储空间采用(23)分配方式,它通过(24)来管理空闲的文件存储空间。 四、问答题 1.假设某多道程序设计系统中有供用户使用的内存100k,打印机1台。系统采用可变分区管理内存:对打印机采用静态分配,并假设输入输出操作的时间忽略不计:采用最短剩余时间优先的进程调度算法,进程剩余执行时间相同时采用先来先服务算法;进程调度时机在执行进程结束时或有新进程到达时。现有一进程序列如下: 假设系统优先分配内存的低地址区域,且不需移动已在主存中的进程,请:(1)给出进度调度算法选中进程的次序,并说明理由。 (2)全部进程执行结束所用的时间是多少? 2.请用信号量解决以下的过独木桥问题:同一方向的行人可连续过桥,当某一方向的行人必须等待:另一方向的行人必须等待:当某一方向无人过桥是,另一方向的行人可以过桥。 3.提高内存利用率的途径有哪些? 4.何谓脱机输入/输出技术? 5. 将目录文件当作一般数据文件来处理有什么优缺点? 操作系统复习题1答案 一、判断题 1、错 2、对 3、错 4、对 5、对 6、错 7、错 8、错 9、对10、错 二、选择题 1、A :(2);B:(4);C:(3)。 2、D:(4);E:(3);F:(2)。 3、G:(2);H:(5);I:(3);J:(4)。 4、K:(1);L:(3);M:(5)。 5、N:(2);O:(2)。 6、P:(1)寻道时间;Q:(5)。 7、R:(1);S:(3);T:(5)。 8、U:(3);V:(5)。 9、W:(3);X:(1);Y:(2)。

《现代操作系统第四版》第三章答案

第三章内存管理习题 1.IBM360有一个设计,为了对2KB大小的块进行加锁,会对每个块分配一个4bit的密钥,这个密钥存在PSW(程序状态字)中,每次内存引用时,CPU都会进行密钥比较。但该设计有诸多缺陷,除了描述中所言,请另外提出至少两条缺点。 A:密钥只有四位,故内存只能同时容纳最多十六个进程;需要用特殊硬件进行比较,同时保证操作迅速。 2.在图3-3中基址和界限寄存器含有相同的值16384,这是巧合,还是它们总是相等?如果这只是巧合,为什么在这个例子里它们是相等的? A:巧合。基地址寄存器的值是进程在内存上加载的地址;界限寄存器指示存储区的长度。 3.交换系统通过紧缩来消除空闲区。假设有很多空闲区和数据段随机分布,并且读或写32位长的字需要10ns的时间,紧缩128MB大概需要多长时间?为了简单起见,假设空闲区中含有字0,内存中最高地址处含有有效数据。 A:32bit=4Byte===>每字节10/4=2.5ns 128MB=1282^20=2^27Byte 对每个字节既要读又要写,22.5*2^27=671ms 4.在一个交换系统中,按内存地址排列的空闲区大小是10MB,4MB,20MB,18MB,7MB,9MB,12MB,和15MB。对于连续的段请求: (a) 12MB (b) 10MB (c) 9MB

使用首次适配算法,将找出哪个空闲区?使用最佳适配、最差适配、下次适配算法呢? A:首次适配算法:20MB,10MB,18MB;最佳适配算法:12MB,10MB,9MB;最差适配算法:20MB;18MB;15MB;下次适配算法:20MB;18MB;9MB; 5.物理地址和虚拟地址有什么区别? A:实际内存使用物理地址。这些是存储器芯片在总线上反应的数字。虚拟地址是指一个进程的地址空间的逻辑地址。因此,具有32位字的机器可以生成高达4GB的虚拟地址,而不管机器的内存是否多于或少于4GB。 6.对下面的每个十进制虚拟地址,分別使用4KB页面和8KB页面计算虚拟页号和偏移量:20000,32768,60000。 A:转换为二进制分别为:0100111000100000 虚拟地址应该是16位1000000000000000 1110101001100000 4KB页面偏移量范围0~4027,需要12位来存储偏移量,剩下4位作为页号;同理8KB页面需要13位来存储偏移量,剩下3位作为页号;所以,4KB | 8KB 页号| 偏移量| 页号| 偏移量20000 | 0100 111000100000 | 010 0111000100000 32768 | 1000 000000000000 | 100 0000000000000 60000 | 1110 101001100000 | 111 0101001100000 7. 使用图3-9的页表,给出下面每个虚拟地址对应的物理地址:

操作系统1(参考答案)

一、选择题 1 BCBCA 6 C BAAA 二、判断题TFTFT 三、填空题 1外部设备联机并行操作 2安全性和简明性 3内存、缺页 4作业 5执行和完成 6段、系统 7多用户、多任务 8就绪、执行 9虚拟 四、简答题 1.什么是系统调用? 答:系统调用是用户在程序中能以“函数调用”形式调用的、由操作系统提供的子功能的集合。每一个子功能称作一条系统调用命令。它是操作系统对外的接口,是用户级程序取得操作系统服务的唯一途径。 2.什么是临界资源? 一次仅允许一个进程使用的资源。 3.什么是抖动(或称颠簸)? 页面抖动是系统中频繁进行页面置换的现象。即如果一个进程没有一定数量的内存 块,它很快就发生缺页。此时,它必须淘汰某页。由于所有这些页面都正在使用,所以刚被淘汰出去的页很快又被访问,因而要把它重新调入。可是调入不久又再被 淘汰出去,这样再访问,再调入,如此反复,使得整个系统的页面替换非常频繁,以致大部分机器时间都用在来回进行的页面调度上,只有一小部分时间用于进程的 实际运算方面。 4.影响缺页中断率的因素有哪些? 影响缺页中断率的因素有四个: ①分配给作业的主存块数多则缺页率低,反之缺页中断率就高。 ②页面大,缺页中断率低;页面小缺页中断率高。 ③程序编制方法。以数组运算为例,如果每一行元素存放在一页中,则按行处理各 元素缺页中断率低;反之,按列处理各元素,则缺页中断率高。 ④页面调度算法对缺页中断率影响很大,但不可能找到一种最佳算法。 五、应用题(每题10分,共20分)

1.在一个采用页式虚拟存储管理的系统中,有一用户作业,它依次要访问的字地址序列是:115,228,120,88,446,102,321,432,260,167,若该作业的第0页已经装入主存,现分配给该作业的主存共300字,页的大小为100字,请回答下列问题: (1)按FIFO调度算法将产生多少次缺页中断,依次淘汰的页号为多少,缺页中断率为多少。(2)按LRU调度算法将产生多少次缺页中断,依次淘汰的页号为多少,缺页中断率为多少。答: 页面走向为:1,2,1,0,4,1,3,4,2,1 (1)按FIFO调度算法将产生5次缺页中断;依次淘汰的页号为:0,1,2;缺页中断率为:5/10=50% (3’) 1 2 1 0 4 1 3 4 2 1 0 0 0 0 0 4 4 4 4 4 4 1 1 1 1 1 1 3 3 3 3 2 2 2 2 2 2 2 2 1 ×××××(2’) (2)按LRU调度算法将产生6次缺页中断;依次淘汰的页号为:2,0,1,3;缺页中断率为:6/10=60% (3’) 1 2 1 0 4 1 3 4 2 1 0 0 0 0 0 0 0 3 3 3 3 1 1 1 1 1 1 1 1 2 2 2 2 2 4 4 4 4 4 1 ××××××(2’) 2.有一个具有如下作业流的批处理处理系统,作业调度采用短作业优先,进程调度采用基于优先数的抢先式调度算法。下表给出的是作业序列和相应进程的优先数,优先数越小优先级越高。 作业名到达时间估计运行时间/min 优先数 1 8:00 40 4 2 8:20 30 2 3 8:30 50 3 4 8:50 20 5 (1)列出所有作业进入内存时间及完成时间 (2)计算作业的平均周转时间和平均带权周转时间 解答: (1)作业进入内存时间与结束时间如下所示:(`4’=1’*4) 作业名进入内存时间结束时间 1 8:00 9:10 2 8:20 8:50 3 9:10 10:00 4 8:50 10:20 (2)各作业的周转时间为:(`4’=1’*4) 作业A:9:10 – 8:00 = 70 min 作业B:8:50 – 8:20 = 30 min 作业C:10:00 – 8:30 = 90 min

1操作系统试题及答案

操作系统试题及答案 一、选择题 1、操作系统的主要功能是管理计算机系统中的()。 A.程序库 B.数据 C.文件 D.资源 2、在操作系统中,()是竞争和分配计算机系统资源的基本单位。 A.程序 B.进程 C.作业 D.用户 3、在操作系统中,并发性是指若干个事件()发生。 A,在同一时刻 B。一定在不同时刻 C.某一时间间隔内 D。依次在不同时间间隔内 4、产生死锁的基本原因是()和进程推进顺序非法。 A.资源分配不当B.系统资源不足C.作业调度不当D.进程调度不当 5、文件系统采用多级目录结构的目的是() A.系统开销B.节省存储空间C.解决命名冲突D.缩短传送时间 6、位示图方法可用于() A.盘空间的管理 B.盘的驱动调度 C.文件目录的查找 D.页式虚拟存储管理中的页面调度 7、下列算法中用于磁盘移臂调度的是( ) A.时间片轮转法 B. LRU算法 C.最短寻找时间优先算法 D.优先级高者优先算法 8、存放在磁盘上的文件,()。 A.即可随机访问,又可顺序访问 B。只能随机访问 C.只能顺序访问 D。只能读/写不能访问 9、一作业8:00到达系统,估计运行时间为1小时,若10:00开始执行该作业,其响应比是()A.2 B.1 C.3 D.0.5 10、进程和程序的本质区别是()。 A.内存和外存 B。动态和静态特征 C。共享和独占使用计算机资源D。顺序和非顺序执行机器指令 11、对于硬盘上存放的信息,物理上读写的最小单位是一个()。 A.二进位 B。字节 C。物理块 D。逻辑记录 12、多道程序设计是指() A.在实时系统中并发运行多个程序 B.在分布系统中同一时刻运行多个程序 C.在一台处理机上同一时刻运行多个程序 D.在一台处理机上并发运行多个程序 13、进程从运行状态进入就绪状态的原因可能是() A.被选中占有处理机 B.等待某一事件 C.等待的事件已发生 D.时间片用完 14、由于系统无法预先知道一个作业未来访问页面的情况,所以()在实际上是无法实现的。 A.先进先出淘汰算法 B。最近最少使用淘汰算法 C.最优淘汰算法 D。最不常用页面淘汰算法 15、文件系统为每个文件另建立一张指示逻辑记录和物理块之间的对应关系表,由此表和文件本身构成的文件是()。

《现代操作系统第四版》 第六章 答案

第四章文件系统习题 Q1: 给出文件/etc/passwd的五种不同的路径名。(提示:考虑目录项”.”和”…”。) A: /etc/passwd /./etc/passwd /././etc/passwd /./././etc/passwd /etc/…/etc/passwd /etc/…/etc/…/etc/passwd /etc/…/etc/…/etc/…/etc/passwd /etc/…/etc/…/etc/…/etc/…/etc/passwd Q2:在Windows中,当用户双击资源管理器中列出的一个文件时,就会运行一个程序,并以这个文件作为参数。操作系统要知道运行的是哪个程序,请给出两种不同的方法。 A:Windows使用文件扩展名。每种文件扩展名对应一种文件类型和某些能处理这种类型的程序。另一种方式时记住哪个程序创建了该文件,并运行那个程序。Macintosh以这种方式工作。

Q3:在早期的UNIX系统中,可执行文件(a.out)以一个非常特別的魔数开始,这个数不是随机选择的。这些文件都有文件头,后面是正文段和数据段。为什么要为可执行文件挑选一个非常特别的魔数,而其他类型文件的第一个字反而有一个或多或少是随机选择的魔数? A:这些系统直接把程序载入内存,并且从word0(魔数)开始执行。为了避免将header作为代码执行,魔数是一条branch指令,其目标地址正好在header之上。按这种方法,就可能把二进制文件直接读取到新的进程地址空间,并且从0 开始运行。 Q4: 在UNIX中open系统调用绝对需要吗?如果没有会产生什么结果? A: open调用的目的是:把文件属性和磁盘地址表装入内存,便与后续调用的快速访问。 首先,如果没有open系统调用,每次读取文件都需要指定要打开的文件的名称。系统将必须获取其i节点,虽然可以缓存它,但面临一个问题是何时将i节点写回磁盘。可以在超时后写回磁盘,虽然这有点笨拙,但它可能起作用。 Q5:在支持顺序文件的系统中总有一个文件回绕操作,支持随机存取

现代操作系统第四版 第二章 答案

现代操作系统第二章进程与线程习题 1. 图2-2中给出了三个进程状态,在理论上,三个状态可以有六种转换,每个状态两个。但是,图中只给出了四种转换。有没有可能发生其他两种转换中的一个或两个 A:从阻塞到运行的转换是可以想象的。假设某个进程在I/O上阻塞,而且I/O结束,如果此时CPU空闲,该进程就可以从阻塞态直接转到运行态。而另外一种转换(从阻塞态到就绪态)是不可能的。一个就绪进程是不可能做任何会产生阻塞的I/O或者别的什么事情。只有运行的进程才能被阻塞。 2.假设要设计一种先进的计算机体系结构,它使用硬件而不是中断来完成进程切换。CPU需要哪些信息请描述用硬件完成进程切换的工作过程。 A:应该有一个寄存器包含当前进程表项的指针。当I/O结束时,CPU将把当前的机器状态存入到当前进程表项中。然后,将转到中断设备的中断向量,读取另一个过程表项的指针(服务例程),然后,就可以启动这个进程了。 3.当代计算机中,为什么中断处理程序至少有一部分是用汇编语言编写的 A:通常,高级语言不允许访问CPU硬件,而这种访问是必需的。例如,中断处理程序可能需要禁用和启用某个特定设备的中断服务,或者处理进程堆栈区的数据。另外,中断服务例程需要尽快地执行。(补充)主要是出于效率方面的考量。中断处理程序需要在尽量短的时间内完成所需的必要处理,尽量减少对线程/程序流造成的影响,因此大部分情况下用汇编直接编写,跳过了通用编译过程中冗余的适配部分。 4.中断或系统调用把控制转给操作系统时,为什么通常会用到与被中断进程的栈分离的内核栈 A:内核使用单独的堆栈有若干的原因。其中两个原因如下:首先,不希望操作系统崩溃,由于某些用户程序不允许足够的堆栈空间。第二,如果内核将数据保留在用户空间,然后从系统调用返回,那么恶意的用户可能使用这些数据找出某些关于其它进程的信息。 5.一个计算机系统的内存有足够的空间容纳5个程序。这些程序有一半的时间处于等待I/O的空闲状态。请问CPU时间浪费的比例是多少 A:^5 =%

现代操作系统试卷及其答案

1.一般用户更喜欢使用的系统是()。 A.手工操作 B.单道批处理 C.多道批处理 D.多用户分时系统 2. 与计算机硬件关系最密切的软件是()。 A.编译程序 B.数据库管理系统 C.游戏程序 D.OS 3. 现代OS具有并发性和共享性,是()的引入导致的。 A.单道程序 B. 磁盘 C. 对象 D.多道程序 4. 早期的OS主要追求的是()。 A.系统的效率 B.用户的方便性 C.可移植 D.可扩充性 5.()不是多道程序系统 A.单用户单任务 B.多道批处理系统 C.单用户多任务 D.多用户分时系统 6.()是多道操作系统不可缺少的硬件支持。 A.打印机 B.中断机构 C.软盘 D.鼠标 7. 特权指令可以在()执行。 A.目态 B.浏览器中 C.任意的时间 D.进程调度中 8. 没有了()计算机系统就启动不起来。 A.编译器 B.DBMS C.OS D.浏览器 9. 通道能够完成()之间的数据传输。 A.CPU与外设 B.内存与外设 C.CPU与主存 D.外设与外设 10. 操作系统的主要功能有()。 A.进程管理、存储器管理、设备管理、处理机管理 B.虚拟存储管理、处理机管理、进程调度、文件系统 C.处理机管理、存储器管理、设备管理、文件系统 D.进程管理、中断管理、设备管理、文件系统 11. 单处理机计算机系统中,()是并行操作的。 A.处理机的操作与通道的操作是并行的 B.程序与程序 C.主程序与子程序 D.用户程序与操作系统程序 12. 处理机的所有指令可以在()执行。 A.目态 B.浏览器中

C.任意的时间 D.系统态 13.()功能不是操作系统直接完成的功能。 A.管理计算机硬盘 B.对程序进行编译 C.实现虚拟存储器 D.删除文件 14. 要求在规定的时间内对外界的请求必须给予及时响应的OS是()。 A.多用户分时系统 B.实时系统 C.批处理系统时间 D.网络操作系统 15. 操作系统是对()进行管理的软件。 A.硬件 B.软件 C.计算机资源 D.应用程序 16.()对多用户分时系统最重要。 A.实时性 B.交互性 C.共享性 D.运行效率 17.()对多道批处理系统最重要。 A.实时性 B.交互性 C.共享性 D.运行效率 18. ( )对实时系统最重要。 A.及时性 B.交互性 C.共享性 D.运行效率 19. Windows98是()操作系统。 A.多用户分时 B.批处理系统 C.单用户多任务 D.单用单任务 20. 分布式系统与网络系统的主要区别是() A.并行性 B.透明性 C.共享性 D.复杂性 21. ( )操作系统允许在一台主机上同时连接多台终端,多个用户可以通过各自的终端同时交互地使用计算机。 A.网络 B.分布式 C.分时 D.实时 22. 如果分时操作系统的时间片一定,那么(),则响应时间越长。 A.用户数越少 B.用户数越多 C.内存越小 D.内存越大 23. 下面6个系统中,必须是实时操作系统的有()个。 ·航空订票系统 ·过程控制系统 ·机器口语翻译系统 ·计算机辅助系统

操作系统课后习题答案

1.什么是操作系统?其主要功能是什么? 操作系统是控制和管理计算机系统内各种硬件和软件资源,有效组织多道程序运行的系统软件(或程序集合),是用户和计算机直接的程序接口. 2.在某个计算机系统中,有一台输入机和一台打印机,现有两道程序投入运行,程序A、B 同时运行,A略早于B。A的运行轨迹为:计算50ms、打印100ms、再计算50ms、打印100ms,结束。B的运行轨迹为:计算50ms、输入80ms、再计算100ms,结束。试说明:(1)两道程序运行时,CPU是否空闲等待?若是,在那段时间段等待? (2)程序A、B是否有等待CPU的情况?若有,指出发生等待的时刻。 0 50 100 150 200 250 300 50 100 50 100 50 100 20 100 (1) cpu有空闲等待,在100ms~150ms的时候. (2) 程序A没有等待cpu,程序B发生等待的时间是180ms~200ms. 1.设公共汽车上,司机和售票员的活动如下: 司机的活动:启动车辆;正常行车;到站停车。 售票员的活动:关车门;售票;开车门。 在汽车不断的到站、停车、行驶过程中,用信号量和P、V操作实现这两个活动的同步关系。 semaphore s1,s2; s1=0;s2=0; cobegin 司机();售票员(); coend process 司机() { while(true) { P(s1) ; 启动车辆; 正常行车; 到站停车; V(s2); } } process 售票员() { while(true) { 关车门; V(s1);

售票; P(s2); 开车门; 上下乘客; } } 2.设有三个进程P、Q、R共享一个缓冲区,该缓冲区一次只能存放一个数据,P进程负责循环地从磁带机读入数据并放入缓冲区,Q进程负责循环地从缓冲区取出P进程放入的数据进行加工处理,并把结果放入缓冲区,R进程负责循环地从缓冲区读出Q进程放入的数据并在打印机上打印。请用信号量和P、V操作,写出能够正确执行的程序。 semaphore sp,sq,sr; int buf;sp=1;sq=0;sr=0; cobegin process P() { while(true) { 从磁带读入数据; P(sp); Buf=data; V(sq); } } process Q() { while(true) { P(sq); data=buf; 加工data; buf=data; V(sr); } } process R() { while(true) { P(sr); data=buf; V(sp); 打印数据; } }

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

第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 作业的提交时间和运行时间

操作系统课后题答案

2.1 一类操作系统服务提供对用户很有用的函数,主要包括用户界面、程序执行、I/O操作、文件系统操作、通信、错误检测等。 另一类操作系统函数不是帮助用户而是确保系统本身高效运行,包括资源分配、统计、保护和安全等。 这两类服务的区别在于服务的对象不同,一类是针对用户,另一类是针对系统本身。 2.6 优点:采用同样的系统调用界面,可以使用户的程序代码用相同的方式被写入设备和文件,利于用户程序的开发。还利于设备驱动程序代码,可以支持规范定义的API。 缺点:系统调用为所需要的服务提供最小的系统接口来实现所需要的功能,由于设备和文件读写速度不同,若是同一接口的话可能会处理不过来。 2.9 策略决定做什么,机制决定如何做。他们两个的区分对于灵活性来说很重要。策略可能会随时间或位置而有所改变。在最坏的情况下,每次策略改变都可能需要底层机制的改变。系统更需要通用机制,这样策略的改变只需要重定义一些系统参数,而不需要改变机制,提高了系统灵活性。 3.1、短期调度:从准备执行的进程中选择进程,并为之分配CPU; 中期调度:在分时系统中使用,进程能从内存中移出,之后,进程能被重新调入内存,并从中断处继续执行,采用了交换的方案。 长期调度:从缓冲池中选择进程,并装入内存以准备执行。 它们的主要区别是它们执行的频率。短期调度必须频繁地为CPU选择新进程,而长期调度程序执行地并不频繁,只有当进程离开系统后,才可能需要调度长期调度程序。 3.4、当控制返回到父进程时,value值不变,A行将输出:PARENT:value=5。 4.1、对于顺序结构的程序来说,单线程要比多线程的功能好,比如(1)输入三角形的三边长,求三角形面积;(2)从键盘输入一个大写字母,将它改为小写字母输出。

最新操作系统试题及答案

一、单项选择题(每题2分,共20分) 1.以下著名的操作系统中,属于多用户、分时系统的是( )。 A.DOS系统B.UNIX系统 C.Windows NT系统D.OS/2系统 2.在操作系统中,进程的最基本的特征是( )。 A.动态性和并发性B.顺序性和可再现性 C.与程序的对应性D.执行过程的封闭性 3.操作系统中利用信号量和P、V操作,( )。 A.只能实现进程的互斥B.只能实现进程的同步 C.可实现进程的互斥和同步D.可完成进程调度 4.作业调度的关键在于( )。 A.选择恰当的进程管理程序B.用户作业准备充分 C.选择恰当的作业调度算法D.有一个较好的操作环境 5.系统抖动是指( )。 A.使用机器时,屏幕闪烁的现象 B.由于主存分配不当,偶然造成主存不够的现象 C.系统盘有问题,致使系统不稳定的现象 D.被调出的页面又立刻被调入所形成的频繁调入调出现象 6.在分页存储管理系统中,从页号到物理块号的地址映射是通过( )实现的。 A.段表B.页表 C. PCB D.JCB

7.在下述文件系统目录结构中,能够用多条路径访问同一文件(或目录)的目录结构是( ) A.单级目录B.二级目录 C.纯树型目录D.非循环图目录 8.SPOOLing技术可以实现设备的( )分配。 A.独占B.共享 C.虚拟D.物理 9.避免死锁的一个著名的算法是( )。 A.先人先出算法B.优先级算法 C.银行家算法D.资源按序分配法 10.下列关于进程和线程的叙述中,正确的是( )。 A.一个进程只可拥有一个线程 B.一个线程只可拥有一个进程 C.一个进程可拥有若干个线程 D.一个线程可拥有若干个进程 二、判断题(选择你认为正确的叙述划√,认为错误的划×并说明原因。每题2分,共10分) 1.简单地说,进程是程序的执行过程。因而,进程和程序是一一对应的。( ) 2.V操作是对信号量执行加1操作,意味着释放一个单位资源,加l后如果信号量的值小于等于零,则从等待队列中唤醒一个进程,使该进程变为阻塞状态,而现进程继续进行。( )

江西理工大学-现代操作系统考试复习题

第一章:引论 1.系统调用与中断的概念。 作业题解 第一章引论 PE1-14. 陷阱和中断的主要差别是什么? 答:陷阱是由程序造成的,并且与它同步。如果程序一而再地被运行,陷阱将总在指令流中相同的位置的精确发生。而中断则是由外部事件和其他时钟造成的,不具有重复性。 PE1-20. 有一个文件,其文件描述符是fd,内含下列字节序列:3,1,4,1,5,9,2,6,5,3,5.有如下系统调用: lseek (fd, 3, SEEK_SET); // 从文件开头偏移量为3,此时将读写位置移到文件1,5,9,2的1处 Read(fd, &buffer, 4); 其中lseek调用寻找文件中的字节3.在读操作完成之后,buffer中的内容是什么? 答:包含字节:1,5,9,2。 PE1-22. 块特殊文件和字符特殊文件的基本差别是什么? 答:块特殊文件包含被编号的块,每一块都可以独立地读取或者写入。而且可以定位于任何块,并且开始读出或写入。这些对于字符特殊文件是不可能的。 PE1-29. 下面是单位转换练习: (a)一微年是多少秒? (b)微米常称micron.那么gigamicron是多长? (c)1TB存储器中有多少字节? (d)地球的质量是6000 yottagram,换算成kilogram是多少? 答:这些都可以直接转换: (a) micro year = 10-6X 365 X 24 X 3600 = 31.536 sec。 (b) 1km或者1000。 (c)有240字节,也就是1,099,511,627,776 字节。 (d)它是6 X 1024公斤。 第二章:进程与线程 1.进程的概念。 答:进程是对正在运行的程序的一个抽象。是容纳运行一个程序所需要的所有信息的容器。也可以说一个进程就是就是一个正在运行的实例。 2.进程的三种基本状态。 运行态(该时刻进程实际占用CPU)。 就绪态(可运行,但因为其他进程正在运行而暂时停止)。 阻塞态(除非某种外部事件发生,否则进程不能运行)。

操作系统及参考答案

一、单项选择题 1.若处理器有32位地址,则它的虚拟地址空间为( B )字节。 A 2G B B 4GB C 100KB D 640KB 2.支持程序浮动的地址转换机制是( A ) A 动态重定位 B 段式地址转换 C 页式地址转换 D 静态重定位 3.UNIX中的文件系统采用( D )。 A 网状文件 B 记录式文件 C 索引文件 D 流式文件 4.段页式管理每取一数据,要访问( C )次内存。 A 1 B 2 C 3 D 4 5.文件系统的主要目的是( A )。 A 实现对文件的按名存取 B 实现虚拟存贮器 C 提高外围设备的输入输出速度 D 用于存贮系统文档 6. 某基于动态分区存储管理的计算机,其主存容量为55mb(初始为空),采用最佳适 配算法,分配和释放的顺序为:分配15mb,分配30mb,释放15mb,分配8mb,分配6mb,此时主存中最大空闲分区的大小是( B ) A 7mb B 9mb C 10mb D 15mb 7.设计批处理多道系统时,首先要考虑的是( B )。 A 灵活性和可适应性 B 系统效率和吞吐量 C 交互性和响应时间 D 实时性和可靠性 8.进程调度的对象和任务分别是( C )。 A 作业,从就绪队列中按一定的调度策略选择一个进程占用CPU B 进程,从后备作业队列中按调度策略选择一个作业占用CPU C 进程,从就绪队列中按一定的调度策略选择一个进程占用CPU D 作业,从后备作业队列中调度策略选择一个作业占用CPU 9.一种既有利于短小作业又兼顾到长作业的作业调度算法是( C )。 A 先来先服务 B 轮转 C 最高响应比优先 D 均衡调度 10.两个进程合作完成任务。在并发执行中,一个进程要等待其合作伙伴发来消息,或者建立某个条件后再向前执行,这种制约性合作关系称为进程的( B )。 A 互斥 B 同步 C 调度 D 伙伴 11.当每类资源只有一个个体时,下列说法中不正确的是( C )。 A 有环必死锁 B 死锁必有环 C 有环不一定死锁 D 被锁者一定全在环中12.在现代操作系统中引入了( D ),从而使并发和共享成为可能。 A 单道程序 B 磁盘 C 对象 D 多道程序 13.设有3个作业,它们同时到达,运行时间分别为T1、T2和T3,且T1≤T2≤T3,若它们在单处理机系统中按单道运行,采用短作业优先调度算法,则平均周转时间为( D ) A T1+T2+T3 B (T1+T2+T3)/3 C T1+T2/3+2*T3/3 D T3/3+2*T2/3+T1

最新操作系统试题及答案

一、选择题 1、一个完整的计算机系统是由(C)组成的。 A.硬件 B.软件 C. 硬件和软件 D.用户程序 2、操作系统的基本职能是(A )。 A.控制和管理系统内各种资源,有效地组织多道程序的运行 B.提供用户界面,方便用户使用 C.提供方便的可视化编辑程序 D.提供功能强大的网络管理工具 3、以下著名的操作系统中,属于多用户、分时系统的是(C )。 A. DOS系统 B. Windows NT系统 C. UNIX系统 D.OS/2系统 4、为了使系统中所有的用户都能得到及时的响应,该操作系统应该是(B )。 A.多道批处理系统B.分时系统C.实时系统D.网络系统 5、当操作系统退出执行,让用户执行时,系统会(C )。 A.继续保持管态B.继续保持目态 C.从管态变为目态D.从目态变为管态 6、下列进程状态的转换中,哪一个是不正确的(D)。 A.就绪→运行 B.运行→就绪 C.阻塞→就绪 D.就绪→阻塞 7、某进程由于需要从磁盘上读入数据而处于阻塞状态。当系统完成了所需的读盘操作后,此时该进程的状态将(D )。 A.从就绪变为运行B.从运行变为就绪 C.从运行变为阻塞D.从阻塞变为就绪 8、多个进程的实体能存在于同一内存中,在一段时间内都得到运行。这种性质称作进程的(B )。 A. 动态性 B. 并发性 C. 调度性 D. 异步性 9、进程控制块是描述进程状态和特性的数据结构,一个进程(D)。 A.可以有多个进程控制块B.可以和其他进程共用一个进程控制块 C.可以没有进程控制块D.只能有惟一的进程控制块 10、在大多数同步机构中,均用一个标志来代表某种资源的状态,该标志常被称为(C)。 A、公共变量 B、标志符 C、信号量 D、标志变量 11、如果进程PA对信号量S执行P操作,则信号量S的值应(B )。 A.加1 B.减1 C.等于0 D.小于0 12、进程状态从就绪态到运行态的转化工作是由(C)完成的。 A.作业调度B.中级调度C.进程调度D.设备调度 13、为了使系统中各部分资源得到均衡使用,就必须选择对资源需求不同的作业进行合理搭配。这项工作是由(A)完成的。 A.作业调度B.中级调度C.进程调度D.内存调度 14、通常,用户编写的程序中所使用的地址是(A )。

现代操作系统(原书第3版)部分课后答案-第4章

1. 这些系统直接把程序载入内存,并且从word0(魔数)开始执行。为了避免将header作为代码执行,魔数是一条branch指令,其目标地址正好在header之上。按这种方法,就可能把二进制文件直接读取到新的进程地址空间,并且从0开始运行。 5. rename 调用不会改变文件的创建时间和最后的修改时间,但是创建一个新的文件,其创建时间和最后的修改时间都会改为当前的系统时间。另外,如果磁盘满,复制可能会失败。 10. 由于这些被浪费的空间在分配单元(文件)之间,而不是在它们内部,因此,这是外部碎片。这类似于交换系统或者纯分段系统中出现的外部碎片。 11. 传输前的延迟是9ms,传输速率是2^23Bytes/s,文件大小是2^13Bytes,故从内存读取或写回磁盘的时间都是9+2^13/2^23=9.977ms,总共复制一个文件需要9.977*2=19.954ms。为了压缩8G磁盘,也就是2^20个文件,每个需要19.954ms,总共就需要20,923 秒。因此,在每个文件删除后都压缩磁盘不是一个好办法。 12. 因为在系统删除的所有文件都会以碎片的形式存在磁盘中,当碎

片到达一定量磁盘就不能再装文件了,必须进行外部清理,所以紧缩磁盘会释放更多的存储空间,但在每个文件删除后都压缩磁盘不是一个好办法。 15. 由于1024KB = 2^20B, 所以可以容纳的磁盘地址个数是2^20/4 = 2^18个磁盘地址,间接块可以保存2^18个磁盘地址。与 10 个直接的磁盘地址一道,最大文件有 262154 块。由于每块为 1 MB,最大的文件是262154 MB。 19. 每个磁盘地址需要D位,且有F个空闲块,故需要空闲表为DF位,采用位图法则需要B位,当DF

现代操作系统--作业题整理演示教学

注:标有“操作系统第二版中文版答案”的答案是从操作系统第二版中文答案的电子书上摘抄的,剩下的是非标准答案(可以忽略~~)。有几道题没有写。以下的相关文档仅供参考!祝各位同学考试愉快! 第一章:引论(P44) 1、什么是多道程序设计? 答:多道程序就是CPU在内存中多个进程之间迅速切换。它一般被用来使CPU 保持忙碌,当有一个或多个进程进行I/O时。(操作系统第二版中文答案) 2、什么是SPOOLing?读者是否认为将来的高级个人计算机会把SPOOLing作为标准功能? 答:SPOOLing是Simultaneous Peripheral Operation On-Line (即外部设备联机并行操作)的缩写,它是关于慢速字符设备如何与计算机主机交换信息的一种技术,通常称为“假脱机技术”。(回答:什么是SPOOLing?百度的~~~)输入SPOOLing是作业中的读入技术,例如:从卡片在磁盘,这样当当前执行的进程完成时,将等候CPU。输出SPOOLing在打印之前首先复制打印文件,而非直接打印。在个人计算机上的输入SPOOLing很少,但输出SPOOLing非常普通。(操作系统第二版中文答案) 3、在早期的计算机中,每个字节的读写直接由CPU处理(既没有DMA)。对于多道程序而言这种组织方式有什么含义? 答:多道程序的主要原因是当等候I/O完成时CPU有事可做。如果没有DMA,I/O 操作时CPU被完全占有,因此,多道程序无利可图(至少在CPU利用方面)。无论程序操作多少I/O操作,CPU都是100%的忙碌。当然,这里是假定主要的延迟是数据复制时的等待。如果I/O很慢的话,CPU可以做其他工作。(操作系统第二版中文答案) 4、系列计算机的思想在20世纪60年代由IBM引入System/360大型机。现在这种思想已经消亡了还是继续活跃着? 答:它依然存在。例如:Interl以各种各样的不同的属性包括速度和能力消耗来产生Pentium I,II,III和4。所有这些机器的体系结构都是兼容的,仅仅是价格上的不同,这些都是家族思想的本质。(操作系统第二版中文答案) 5、缓慢采用GUI的一个原因是支持它的硬件的成本(高昂)。为了支持25行80列字符的单色文本屏幕应该需要多少视频RAM?对于1024*768像素24位色彩位图需要多少视频RAM?在1980年($5/KB)这些RAM的成本是多少?现在它的成本是多少? 答:25*80字符的单色文本屏幕需要2000字节的缓冲器。1024*768像素24位颜色的位图需要2359296字节。1980年代这两种选择将分别地耗费$10和$11520。而对于当前的价格。将少于$1/MB。(操作系统第二版中文答案) 8、考虑一个有两个CPU的系统,并且每个CPU有两个线程(超线程)。假设有三

相关主题
文本预览
相关文档 最新文档