操作系统课后答案-罗宇第四版

操作系统课后答案-罗宇第四版
操作系统课后答案-罗宇第四版

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。

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

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

答:轮转法:

2 1 2 1 2 2 2 2 1 2 2

时间

进程 1 2 3 4 5 1 5 1 5 1 1

进程的周转时间:进程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算法:

进程提交时

结束时

等待时

周转

时间

1 0 1 0 1

2 9 19 9 19

3 2

4 2 4

4 1 2 1 2

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

非剥夺优先级算法

进程提交时

结束时

等待时

周转

时间

1 1 11 1 11

2 18 19 18 19

3 11 13 11 13

4 0 1 0 1

5 13 18 13 18 平均等待时间: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(WAKEUP);该信号量的初值为0),由第一个顾客执行V(WAKEUP)。若顾客不是第一个到达,则在信号量WAIT上等待(P(WAIT)该信号量的初值为0),等理发师理完一个顾客后,执行V(WAIT)操作便可叫出该顾客理发。以上过程循环反复,理发师没每理完一个顾客,就令计数器减1,RC=0时便知此时无顾客,理发师可以继续睡觉,等待下一批顾客到达。在设信号量MUTEX(初值为1),保证对计数器RC的互斥作用。

顾客进程:

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;

进程数资源总

数是否可能死锁

1 1 不会

1 2 不会

2 1 不会2 2 可能会2

3 可能会

进程数资源总

数是否可能死锁

1 2 不会

2 2 可能会

2 3 不会

3 3 可能会

3 4 不会

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

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

操作系统第四版-课后习题答案

操作系统第四版-课后习题答案

第一章 作者:佚名来源:网络 1、有一台计算机,具有IMB 内存,操作系统占用200KB ,每个用户进程各占200KB 。如果用户进程等待I/O 的时间为80 % ,若增加1MB 内存,则CPU 的利用率提高多少? 答:设每个进程等待I/O 的百分比为P ,则n 个进程同时等待刀O 的概率是Pn ,当n 个进程同时等待I/O 期间CPU 是空闲的,故CPU 的利用率为1-Pn。由题意可知,除去操作系统,内存还能容纳4 个用户进程,由于每个用户进程等待I/O的时间为80 % , 故: CPU利用率=l-(80%)4 = 0.59 若再增加1MB 内存,系统中可同时运行9 个用户进程,此时:cPu 利用率=l-(1-80%)9 = 0.87 故增加IMB 内存使CPU 的利用率提高了47 % : 87 %/59 %=147 % 147 %-100 % = 47 % 2 一个计算机系统,有一台输入机和一台打印机,现有两道程序投入运行,且程序A 先开始做,程序B 后开始运行。程序A 的运行轨迹为:计算50ms 、打印100ms 、再计算50ms 、打印100ms ,结束。程序B 的运行轨迹为:计算50ms 、输入80ms 、再计算100ms ,结束。试说明(1 )两道程序运行时,CPU有无空闲等待?若有,在哪段时间内等待?为什么会等待?( 2 )程序A 、B 有无等待CPU 的情况?若有,指出发生等待的时刻。 答:画出两道程序并发执行图如下: (1)两道程序运行期间,CPU存在空闲等待,时间为100 至150ms 之间(见图中有色部分) (2)程序A 无等待现象,但程序B 有等待。程序B 有等待时间段为180rns 至200ms 间(见图中有色部分) 3 设有三道程序,按A 、B 、C优先次序运行,其内部计算和UO操作时间由图给出。

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

第三章内存管理习题 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在多道程序和分时环境中,多个用户同时共享一个系统,这种情况导致多种安全问题。a. 列出此类的问题 b.在一个分时机器中,能否确保像在专用机器上一样的安全度?并解释之。 答:a.窃取或者复制某用户的程序或数据;没有合理的预算来使用资源(CPU,内存,磁盘空间,外围设备)b.应该不行,因为人类设计的任何保护机制都会不可避免的被另外的人所破译,而且很自信的认为程序本身的实现是正确的是一件困难的事。 1.2资源的利用问题在各种各样的操作系统中出现。试例举在下列的环境中哪种资源必须被严格的管理。(a)大型电脑或迷你电脑系统(b)与服务器相联的工作站(c)手持电脑 答:(a)大型电脑或迷你电脑系统:内存和CPU资源,外存,网络带宽(b)与服务器相联的工作站:内存和CPU资源(c)手持电脑:功率消耗,内存资源 1.3在什么情况下一个用户使用一个分时系统比使用一台个人计算机或单用户工作站更好? 答:当另外使用分时系统的用户较少时,任务十分巨大,硬件速度很快,分时系统有意义。充分利用该系统可以对用户的问题产生影响。比起个人电脑,问题可以被更快的解决。还有一种可能发生的情况是在同一时间有许多另外的用户在同一时间使用资源。当作业足够小,且能在个人计算机上合理的运行时,以及当个人计算机的性能能够充分的运行程序来达到用户的满意时,个人计算机是最好的,。 1.4在下面举出的三个功能中,哪个功能在下列两种环境下,(a)手持装置(b)实时系统需要操作系统的支持?(a)批处理程序(b)虚拟存储器(c)分时 答:对于实时系统来说,操作系统需要以一种公平的方式支持虚拟存储器和分时系统。对于手持系统,操作系统需要提供虚拟存储器,但是不需要提供分时系统。批处理程序在两种环境中都是非必需的。 1.5描述对称多处理(SMP)和非对称多处理之间的区别。多处理系统的三个优点和一个缺点? 答:SMP意味着所以处理器都对等,而且I/O可以在任何处理器上运行。非对称多处理有一个主处理器控制系统,与剩下的处理器是随从关系。主处理器为从处理器安排工作,而且I/O也只在主处理器上运行。多处理器系统能比单处理器系统节省资金,这是因为他们能共享外设,大容量存储和电源供给。它们可以更快速的运行程序和增加可靠性。多处理器系统能比单处理器系统在软、硬件上也更复杂(增加计算量、规模经济、增加可靠性) 1.6集群系统与多道程序系统的区别是什么?两台机器属于一个集群来协作提供一个高可靠性的服务器的要求是什么? 答:集群系统是由多个计算机耦合成单一系统并分布于整个集群来完成计算任务。另一方面,多道程序系统可以被看做是一个有多个CPU组成的单一的物理实体。集群系统的耦合度比多道程序系统的要低。集群系统通过消息进行通信,而多道程序系统是通过共享的存储空间。为了两台处理器提供较高的可靠性服务,两台机器上的状态必须被复制,并且要持续的更新。当一台处理器出现故障时,另一台处理器能够接管故障处理的功能。 1.7试区分分布式系统(distribute system)的客户机-服务器(client-server)模型与对等系统(peer-to-peer)模型 答:客户机-服务器(client-server)模型可以由客户机和服务器的角色被区分。在这种模型下,客户机向服务器发出请求,然后服务器满足这种请求。对等系统(peer-to-peer)模

操作系统课后习题答案

第一章 1.设计现代OS的主要目标是什么? 答:(1)有效性(2)方便性(3)可扩充性(4)开放性 4.试说明推劢多道批处理系统形成和収展的主要劢力是什么? 答:主要动力来源于四个方面的社会需求与技术发展: (1)不断提高计算机资源的利用率; (2)方便用户; (3)器件的不断更新换代; (4)计算机体系结构的不断发展。 12.试从交互性、及时性以及可靠性方面,将分时系统不实时系统迚行比较。答:(1)及时性:实时信息处理系统对实时性的要求与分时系统类似,都是以人所能接受的等待时间来确定;而实时控制系统的及时性,是以控制对象所要求的开始截止时间或完成截止时间来确定的,一般为秒级到毫秒级,甚至有的要低于100微妙。 (2)交互性:实时信息处理系统具有交互性,但人与系统的交互仅限于访问系统中某些特定的专用服务程序。不像分时系统那样能向终端用户提供数据和资源共享等服务。 (3)可靠性:分时系统也要求系统可靠,但相比之下,实时系统则要求系统具有高度的可靠性。因为任何差错都可能带来巨大的经济损失,甚至是灾难性后果,所以在实时系统中,往往都采取了多级容错措施保障系统的安全性及数据的安全性。 13.OS有哪几大特征?其最基本的特征是什么? 答:并发性、共享性、虚拟性和异步性四个基本特征;最基本的特征是并发性。 第二章 2. 画出下面四条诧句的前趋图: S1=a:=x+y; S2=b:=z+1; S3=c:=a –b;S4=w:=c+1; 8.试说明迚程在三个基本状态之间转换的典型原因。 答:(1)就绪状态→执行状态:进程分配到CPU资源 (2)执行状态→就绪状态:时间片用完 (3)执行状态→阻塞状态:I/O请求 (4)阻塞状态→就绪状态:I/O完成

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

第四章文件系统习题 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.1 在多道程序和分时环境中,多个用户同时共享一个系统,这种情况导致多种安全问题。a. 列出此类的问题b.在一个分时机器中,能否确保像在专用机器上一样的安全度?并解释之。 Answer:a.窃取或者复制某用户的程序或数据;没有合理的预算来使用资源(CPU,内存,磁盘空间,外围设备)b.应该不行,因为人类设计的任何保护机制都会不可避免的被另外的人所破译,而且很自信的认为程序本身的实现是正确的是一件困难的事。 1.2 资源的利用问题在各种各样的操作系统中出现。试例举在下列的环境中哪种资源必须被严格的管理。(a)大型电脑或迷你电脑系统(b)与服务器相联的工作站(c)手持电脑 Answer: (a)大型电脑或迷你电脑系统:内存和CPU 资源,外存,网络带宽(b)与服务器相联的工作站:内存和CPU 资源(c)手持电脑:功率消耗,内存资源 1.3 在什么情况下一个用户使用一个分时系统比使用一台个人计算机或单用户工作站更好? Answer:当另外使用分时系统的用户较少时,任务十分巨大,硬件速度很快,分时系统有意义。充分利用该系统可以对用户的问题产生影响。比起个人电脑,问题可以被更快的解决。还有一种可能发生的情况是在同一时间有许多另外的用户在同一时间使用资源。当作业足够小,且能在个人计算机上合理的运行时,以及当个人计算机的性能能够充分的运行程序来达到用户的满意时,个人计算机是最好的,。 1.4 在下面举出的三个功能中,哪个功能在下列两种环境下,(a)手持装置(b)实时系统需要操作系统的支持?(a)批处理程序(b)虚拟存储器(c)分时 Answer:对于实时系统来说,操作系统需要以一种公平的方式支持虚拟存储器和分时系统。对于手持系统,操作系统需要提供虚拟存储器,但是不需要提供分时系统。批处理程序在两种环境中都是非必需的。 1.5 描述对称多处理(SMP)和非对称多处理之间的区别。多处理系统的三个优点和一个缺点? Answer:SMP意味着所以处理器都对等,而且I/O 可以在任何处理器上运行。非对称多处理有一个主处理器控制系统,与剩下的处理器是随从关系。主处理器为从处理器安排工作,而且I/O 也只在主处理器上运行。多处理器系统能比单处理器系统节省资金,这是因为他们能共享外设,大容量存储和电源供给。它们可以更快速的运行程序和增加可靠性。多处理器系统能比单处理器系统在软、硬件上也更复杂(增加计算量、规模经济、增加可靠性) 1.6 集群系统与多道程序系统的区别是什么?两台机器属于一个集群来协作提供一个高可靠性的服务器的要求是什么? Answer:集群系统是由多个计算机耦合成单一系统并分布于整个集群来完成计算任务。另一方面,多道程序系统可以被看做是一个有多个CPU 组成的单一的物理实体。集群系统的耦合度比多道程序系统的要低。集群系统通过消息进行通信,而多道程序系统是通过共享的存储空间。为了两台处理器提供较高的可靠性服务,两台机器上的状态必须被复制,并且要持续的更新。当一台处理器出现故障时,另一台处理器能够接管故障处理的功能。

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

现代操作系统第二章进程与线程习题 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 =%

(完整版)操作系统课后题答案

2 . OS的作用可表现在哪几个方面? 答:(1)0S作为用户与计算机硬件系统之间的接口;(2)0S作为计算机系统资源的管理者;(3)0S实现了对计算机资源的抽象。 5 .何谓脱机I/O 和联机I/O ? 答:脱机I/O 是指事先将装有用户程序和数据的纸带或卡片装入纸带输入机或卡片机,在外围机的控制下,把纸带或卡片上的数据或程序输入到磁带上。该方式下的输入输出由外围 机控制完成,是在脱离主机的情况下进行的。而联机I/O方式是指程序和数据的输入输出 都是在主机的直接控制下进行的。 11 . OS有哪几大特征?其最基本的特征是什么? 答:并发性、共享性、虚拟性和异步性四个基本特征;最基本的特征是并发性。 20 .试描述什么是微内核OS。 答:(1)足够小的内核;(2)基于客户/服务器模式;(3)应用机制与策略分离原理;(4)采用面向对象技术。 25 ?何谓微内核技术?在微内核中通常提供了哪些功能? 答:把操作系统中更多的成分和功能放到更高的层次(即用户模式)中去运行,而留下一个尽 量小的内核,用它来完成操作系统最基本的核心功能,称这种技术为微内核技术。在微内核 中通常提供了进程(线程)管理、低级存储器管理、中断和陷入处理等功能。 第二章进程管理 2.画出下面四条语句的前趋图: S仁a : =x+y; S2=b : =z+1; S3=c : =a - b ; S4=w : =c+1; 7 ?试说明PCB的作用,为什么说PCB是进程存在的惟一标志? 答:PCB是进程实体的一部分,是操作系统中最重要的记录型数据结构。作用是使一个在 多道程序环境下不能独立运行的程序,成为一个能独立运行的基本单位,成为能与其它进程 并发执行的进程。OS是根据PCB对并发执行的进程进行控制和管理的。 11 .试说明进程在三个基本状态之间转换的典型原因。 答:(1)就绪状态T执行状态:进程分配到CPU资源;(2)执行状态T就绪状态:时间片用 完;(3)执行状态T阻塞状态:I/O请求;(4)阻塞状态T就绪状态:I/O完成. 19 ?为什么要在OS中引入线程? 答:在操作系统中引入线程,则是为了减少程序在并发执行时所付出的时空开销,使OS具

操作系统课后题答案

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

操作系统课后题及答案

第一章 1 .设计现代OS 的主要目标是什么? 答:(1)有效性(2)方便性(3)可扩充性(4)开放性 2 .OS 的作用可表现在哪几个方面? 答:(1)OS作为用户与计算机硬件系统之间的接口 (2)OS 作为计算机系统资源的管理者 (3)OS 实现了对计算机资源的抽象 4 .试说明推动多道批处理系统形成和发展的主要动力是什么?答:主要动力来源于四个方面的社会需求与技术发展: (1)不断提高计算机资源的利用率; (2)方便用户; (3)器件的不断更新换代; (4)计算机体系结构的不断发展。 7 .实现分时系统的关键问题是什么?应如何解决?答:关键问题是当用户在自己的终端上键入命令时,系统应能及时接收并及时处理该命令,在用户能接受的时延内将结果返回给用户。 解决方法:针对及时接收问题,可以在系统中设置多路卡,使主机能同时接收用户从各个终端上输入的数据;为每个终端配置缓冲区,暂存用户键入的命令或数据。针对及时处理问题,应使所有的用户作业都直接进入内存,并且为每个作业分配一个时间片,允许作业只在自己的时间片内运行,这样在不长的时间内,能使每个作业都运行一次。 12 .试从交互性、及时性以及可靠性方面,将分时系统与实时系统进行比较。 答:( 1 )及时性:实时信息处理系统对实时性的要求与分时系统类似,都是以人所能接受的等待时间来确定;而实时控制系统的及时性,是以控制对象所要求的开始截止时间或完成截止时间来确定的,一般为秒级到毫秒级,甚至有的要低于100 微妙。 (2)交互性:实时信息处理系统具有交互性,但人与系统的交互仅限于访问系统中某些特定的专用服务程序。不像分时系统那样能向终端用户提供数据和资源共享等服务。 (3)可靠性:分时系统也要求系统可靠,但相比之下,实时系统则要求系统具有高度 的可靠性。因为任何差错都可能带来巨大的经济损失,甚至是灾难性后果,所以在实时系统中,往往都采取了多级容错措施保障系统的安全性及数据的安全性。 13 .OS 有哪几大特征?其最基本的特征是什么?答:并发性、共享性、虚拟性和异步性四个基本特征;最基本的特征是并发性。

操作系统课后习题答案

第一章操作系统引论 一、填空题 1~5 BCABA 6~8BCB 、填空题 处理机管理 计算机硬件 分时系统 单道批处理系统 、简答题 1. 什么叫多道程序?试述多道程序设计技术的基本思想 及特征。为什么对作业 进行多道批处理可以提高系统效率? 多道程序设计技术是指在计算机内存中同时存放几道相互独立的程序, 使它 们在管理程序控制下,相互穿插运行。 基本思想:在计算机的内存中同时存放多道相互独立的程序, 当某道程序因 某种原因不能继续运行下去时候,管理程序就将另一道程序投入运行,这样使几 道程序在系统内并行工作,可使中央处理机及外设尽量处于忙碌状态, 从而大大 提高计算机使用效率。 特征:多道性;无序性;调度性 在批处理系统中采用多道程序设计技术形成多道批处理系统, 多个作业成批送入 计算机,由作业调度程序自动选择作业运行,这样提高了系统效率。 2. 批处理系统、分时系统和实时系统各有什么特点?各适合应用于哪些方面? 批处 理系统得特征:资源利用率高;系统吞吐量大;平均周转时间长;无交 互能力。适用于那些需要较长时间才能完成的大作业。 分时系统的特征:多路性;独立性;及时性;交互性。适合进行各种事务处 理,并为进行软件开发提供了一个良好的环境。 实时系统的特征:多路性;独立性;实时性;可靠性;交互性。适合对随机发生 的外部事件能做出及时地响应和处理的系统, 如实时控制系统,实时信息处理系 统。1、 2、 存储器管理 设备管理 计算机软件 实时系统 批处理系统 多道批处理系统 文件管理

第二章进程管理 一、填空题 1~6 CBABBB 7 ① A ② C ③ B ④ D 8 ① D ② B 9 ~10 CA 11~15 CBBDB 16~18 DDC 20~21 BB 22 ① B ② D ③ F 25 B 26~30 BDACB 31~32 AD 二、填空题 1、动态性并发性 2、可用资源的数量等待使用资源的进程数 3、一次只允许一个进程使用的共享资源每个进程中访问临界资源的那段代码 4、执行态就绪态等待态 5、程序数据进程控制块进程控制块 &同步关系 7、等待 8、进程控制块 9、P V 11、同步互斥同步互斥 12、P V P V P V 13、封闭性 14、-(m-1)~1 15、② 16、动静 17、4 0 18、s-1<0 19、①③ 三、简答题 1.在操作系统中为什么要引入进程的概念?进程和程序的关系? 现代计算机系统中程序并发执行和资源共享的需要,使得系统的工作情况变得非常复杂,而程序作为机器指令集合,这一静态概念已经不能如实反映程序并发执行过程的动态性,因此,引入进程的概念来描述程序的动态执行过程。这对于我们理解、描述和设计操作系统具有重要意义。 进程和程序关系类似生活中的炒菜与菜谱。菜谱相同,而各人炒出来的菜的味道却差别很大。原因是菜谱基本上是一种静态描述,它不可能把所有执行的动态过程中,涉及的时空、环境等因素一一用指令描述清楚。 2.试从动态性、并发性和独立性上比较进程和程序。 动态性:进程的实质是进程实体的一次执行过程。动态性是进程的基本特征。而程序只是一组有序指令的集合,其本身不具有动态的含义,因而是静态的。 并发性:并发性是进程的重要特征,引入进程的目的也正是为了使其进程实体能和其他进程实体并发执行,而程序是不能并发执行的。 独立性:进程的独立性表现在进程实体是一个能独立运行、独立分配资源和独立接受调度的基本单位。而程序不能做为一个独立的单位参与运行。 3.何谓进程,进程由哪些部分组成? 进程是进程实体的运行过程,是系统进行资源分配和调度的一个独立单位进程由程序段,数据段,进程控制块三部分组成。

(完整版)操作系统课后题答案

2.OS的作用可表现在哪几个方面? 答:(1)OS作为用户与计算机硬件系统之间的接口;(2)OS作为计算机系统资源的管理者; (3)OS实现了对计算机资源的抽象。 5.何谓脱机I/O和联机I/O? 答:脱机I/O 是指事先将装有用户程序和数据的纸带或卡片装入纸带输入机或卡片机,在外围机的控制下,把纸带或卡片上的数据或程序输入到磁带上。该方式下的输入输出由外围机控制完成,是在脱离主机的情况下进行的。而联机I/O方式是指程序和数据的输入输出都是在主机的直接控制下进行的。 11.OS有哪几大特征?其最基本的特征是什么? 答:并发性、共享性、虚拟性和异步性四个基本特征;最基本的特征是并发性。 20.试描述什么是微内核OS。 答:(1)足够小的内核;(2)基于客户/服务器模式;(3)应用机制与策略分离原理;(4)采用面向对象技术。 25.何谓微内核技术?在微内核中通常提供了哪些功能? 答:把操作系统中更多的成分和功能放到更高的层次(即用户模式)中去运行,而留下一个尽量小的内核,用它来完成操作系统最基本的核心功能,称这种技术为微内核技术。在微内核中通常提供了进程(线程)管理、低级存储器管理、中断和陷入处理等功能。 第二章进程管理 2. 画出下面四条语句的前趋图: S1=a:=x+y; S2=b:=z+1; S3=c:=a – b;S4=w:=c+1; 答:其前趋图为: 7.试说明PCB 的作用,为什么说PCB 是进程存在的惟一标志? 答:PCB 是进程实体的一部分,是操作系统中最重要的记录型数据结构。作用是使一个在多道程序环境下不能独立运行的程序,成为一个能独立运行的基本单位,成为能与其它进程并发执行的进程。OS是根据PCB对并发执行的进程进行控制和管理的。 11.试说明进程在三个基本状态之间转换的典型原因。 答:(1)就绪状态→执行状态:进程分配到CPU资源;(2)执行状态→就绪状态:时间片用完;(3)执行状态→阻塞状态:I/O请求;(4)阻塞状态→就绪状态:I/O完成. 19.为什么要在OS 中引入线程?

操作系统部分课后习题答案

第一章 1、设计现代OS的主要目标就是什么? 方便性,有效性,可扩充性与开放性。 2、OS的作用可表现在哪几个方面? (1)OS作为用户与计算机硬件系统之间的接口。(2)OS作为计算机系统资源的管理者。(3)OS实现了对计算机资源的抽象。 4、试说明推动多道批处理系统形成与发展的主要动力就是什么 主要动力来源于四个方面的社会需求与技术发展(1)不断提高计算机资源的利用率(2)方便用户(3)器件的不断更新换代(4)计算机体系结构的不断发展。7、实现分时系统的关键问题就是什么?应如何解决 关键问题就是当用户在自己的终端上键入命令时,系统应能及时接收并及时处理该命令。在用户能接受的时延内将结果返回给用户。解决方法:针对及时接收问题,可以在系统中设置多路卡,使主机能同时接收用户从各个终端上输入的数据,为每个终端配置缓冲区,暂存用户键入的命令或数据。针对及时处理问题,应使所有的用户作业都直接进入内存,并且为每个作业分配一个时间片,允许作业只在自己的时间片内运行。这样在不长的时间内,能使每个作业都运行一次。 12、试从交互性、及时性以及可靠性方面,将分时系统与实时系统进行比较。 (1)及时性。实时信息处理系统对实时性的要求与分时系统类似,都就是以人所能接受的等待时间来确定,而实时控制系统的及时性,就是以控制对象所要求的

开始截止时间或完成截止时间来确定的,一般为秒级到毫秒级,甚至有的要低于100微妙。(2)交互性。实时信息处理系统具有交互性,但人与系统的交互仅限于访问系统中某些特定的专用服务程序,不像分时系统那样能向终端用户提供数据与资源共享等服务。(3)可靠性。分时系统也要求系统可靠,但相比之下,实时系统则要求系统具有高度的可靠性。因为任何差错都可能带来巨大的经济损失,甚至就是灾难性后果,所以在实时系统中,往往都采取了多级容错措施保障系统的安全性及数据的安全性。 13、OS有哪几大特征?其最基本的特征就是什么? 并发性、共享性、虚拟性与异步性四个基本特征。最基本的特征就是并发性。 14、处理机管理有哪些主要功能?它们的主要任务就是什么? 处理机管理的主要功能就是:进程管理、进程同步、进程通信与处理机调度 (1)进程管理:为作业创建进程,撤销已结束进程,控制进程在运行过程中的状态转换(2)进程同步:为多个进程(含线程)的运行进行协调(3)进程通信:用来实现在相互合作的进程之间的信息交换(4)处理机调度:①作业调度:从后备队里按照一定的算法,选出若干个作业,为她们分配运行所需的资源,首选就是分配内存②进程调度:从进程的就绪队列中,按照一定算法选出一个进程把处理机分配给它,并设置运行现场,使进程投入执行。 15、内存管理有哪些主要功能?她们的主要任务就是什么 内存管理的主要功能有:内存分配、内存保护、地址映射与内存扩充。 内存分配:为每道程序分配内存。

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

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

现代操作系统(原书第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

(完整word版)操作系统习题及参考答案.docx

CH4 应用题参考答案 1在一个请求分页虚拟存储管理系统中,一个程序运行的页面走向是: 1、2 、3 、4 、2 、1 、5 、6 、2 、1 、2 、3 、7 、 6 、3 、2 、1 、2 、 3、6 。 分别用 FIFO 、OPT 和 LRU 算法,对分配给程序 3 个页框、 4 个页框、 5 个页框和 6 个页框的情况下,分别求出缺页中断次数和缺页中断率。 答: 页框数FIFO LRU OPT 3161511 414108 51287 6977 只要把表中缺页中断次数除以20,便得到缺页中断率。 2 在一个请求分页虚拟存储管理系统中,一个作业共有 5 页,执行时其访问页面次序 为: ( 1 ) 1、4、3、1、2、5、1、4、2、1、4、5 ( 2 ) 3、2、1、4、4、5、5、3、4、3、2、1、5 若分配给该作业三个页框,分别采用 FIFO和 LRU 面替换算法,求出各自的缺页 中断次数和缺页中断率。 答:( 1 )采用 FIFO 为 9 次,9 / 12 = 75 %。采用 LRU 为 8 次,8 / 12 = 67 %。( 2)采用FIFO和LRU均为9次,9 / 13 = 69%。 3一个页式存储管理系统使用 FIFO 、OPT 和 LRU 页面替换算法,如果一个作业的页面走向为: ( l ) 2、3、2、l、5、2、4、5、3、2、5、2。 ( 2 ) 4、3、2、l、4、3、5、4、3、2、l、5。 ( 3 ) 1、2、3、4、1、2、5、l、2、3、4、5。

当分配给该作业的物理块数分别为 3 和 4 时,试计算访问过程中发生的缺页中断 次数和缺页中断率。 答: ( l )作业的物理块数为3块,使用 FIFO 为 9次, 9 / 12 = 75%。使用 LRU 为 7次, 7 / 12 = 58%。使用 OPT 为 6 次, 6 / 12 = = 50%。 作业的物理块数为4块,使用 FIFO 为 6次, 6 / 12 = 50%。使用 LRU 为 6次, 6 / 12 = 50%。使用 OPT 为 5 次, 5 /12 = 42 %。 ( 2 )作业的物理块数为3块,使用 FIFO 为 9次, 9 / 12 = 75%。使用 LRU 为 10 次, 10 / 12 = 83%。使用 OPT 为 7次, 7/12 = 58%。 作业的物理块数为 4块,使用 FIFO 为 10次, 10 / 12 = 83 %。使用LRU 为 8 次, 8/12 =66%。使用 OPT为 6 次, 6/12 =50%. 其中,出现了 Belady 现象,增加分给作业的内存块数,反使缺页中断率上升。 4、在可变分区存储管理下,按地址排列的内存空闲区为: 10K 、4K 、20K 、18K 、7K 、 9K 、12K 和 15K 。对于下列的连续存储区的请求: ( l ) 12K 、10K 、 9K , ( 2 ) 12K 、10K 、15K 、18K 试问:使用首次适应算法、最佳适应算法、最差适应算法和下次适应算法,哪个空闲区被使用? 答: ( 1)空闲分区如图所示。 答 分区号分区长 110K 24K 320K 418K 57K 69K 712K 815K 1)首次适应算法 12KB 选中分区 3 ,这时分区 3 还剩 8KB 。10KB 选中分区 1 ,恰好分配故应删去分区 1 。9KB 选中分区 4 ,这时分区 4 还剩 9KB 。

操作系统课后习题答案

5.1为什么对调度程序而言,区分CPU约束程序和I/O约束程序很重要? 答:在运行I/O操作前,I/0限制的程序只运行很少数量的计算机操作。而CPU约束程序一般来说不会使用很多的CPU。另一方面,CPU约束程序会利用整个时间片,且不做任何阻碍I/O操作的工作。因此,通过给I/O约束程序优先权和允许在CPU 约束程序之前运行,可以很好的利用计算机资源。 5.3考虑用于预测下一个CPU区间长度的指数平均公式。将下面的值赋给算法中的参数的含义是什么? A.a=0 且t0=100 ms B.a=0.99 且t0=10 ms 答:当a=0且t0=100ms时,公式总是会预测下一次的CPU区间为100毫秒。当a=0.99且t0=10毫秒时,进程将给予更高的重量以便能和过去相比。因此,调度算法几乎是无记忆的,且简单预测未来区间的长度为下一次的CPU执行的时间片。 5.4考虑下面一组进程,进程占用的CPU区间长度以毫秒来计算: 进程区间时间优先级 P110 3 P2 1 1 P3 2 3 P4 1 4 P5 5 2 假设在0时刻进程以P1、P2、P3、P4、P5的顺序到达。 a.画出4 个Gantt 图分别演示用FCFS、SJF、非抢占优先级(数字小代表优先级高)和RR(时间片=1)算法调度时进程的执行过程。 b.每个进程在每种调度算法下的周转时间是多少? c.每个进程在每种调度算法下的等待时间是多少? d.哪一种调度算法的平均等待时间最小? 答a.

FCFS: SJF: 非抢占优先级: RR: b.周转时间: c.等待时间: d.从上表中可以看出SJF的等待时间最小。

(完整版)操作系统课后题答案

课本课后题部分答案 第一章 1.设计现代OS的主要目标是什么? 答:(1)有效性(2)方便性(3)可扩充性(4)开放性 2.OS的作用可表现在哪几个方面? 答:(1)OS作为用户与计算机硬件系统之间的接口 (2)OS作为计算机系统资源的管理者 (3)OS实现了对计算机资源的抽象 13.OS有哪几大特征?其最基本的特征是什么? 答:并发性、共享性、虚拟性和异步性四个基本特征;最基本的特征是并发性。14.处理机管理有哪些主要功能?它们的主要任务是什么? 答:处理机管理的主要功能是:进程管理、进程同步、进程通信和处理机调度; 进程管理:为作业创建进程,撤销已结束进程,控制进程在运行过程中的状态转换。进程同步:为多个进程(含线程)的运行进行协调。 通信:用来实现在相互合作的进程之间的信息交换。 处理机调度: (1)作业调度。从后备队里按照一定的算法,选出若干个作业,为他们分配运行所需的资源(首选是分配内存)。 (2)进程调度:从进程的就绪队列中,按照一定算法选出一个进程,把处理机分配给它,并设置运行现场,使进程投入执行。 15.内存管理有哪些主要功能?他们的主要任务是什么? 北京石油化工学院信息工程学院计算机系3/48 《计算机操作系统》习题参考答案余有明与计07和计G09的同学们编著 3/48 答:内存管理的主要功能有:内存分配、内存保护、地址映射和内存扩充。 内存分配:为每道程序分配内存。 内存保护:确保每道用户程序都只在自己的内存空间运行,彼此互不干扰。 地址映射:将地址空间的逻辑地址转换为内存空间与对应的物理地址。 内存扩充:用于实现请求调用功能,置换功能等。 16.设备管理有哪些主要功能?其主要任务是什么? 答:主要功能有: 缓冲管理、设备分配和设备处理以及虚拟设备等。 主要任务: 完成用户提出的I/O 请求,为用户分配I/O 设备;提高CPU 和I/O 设 备的利用率;提高I/O速度;以及方便用户使用I/O设备. 17.文件管理有哪些主要功能?其主要任务是什么? 答:文件管理主要功能:文件存储空间的管理、目录管理、文件的读/写管理和保护。文件管理的主要任务:管理用户文件和系统文件,方便用户使用,保证文件安全性。 第二章 1.什么是前趋图?为什么要引入前趋图? 答:前趋图(Precedence Graph)是一个有向无循环图,记为DAG(Directed Acyclic Graph),用于描述进程之间执行的前后关系。

相关文档
最新文档