操作系统习题解答Word文件下载.docx

上传人:b****5 文档编号:18702218 上传时间:2022-12-31 格式:DOCX 页数:23 大小:503.83KB
下载 相关 举报
操作系统习题解答Word文件下载.docx_第1页
第1页 / 共23页
操作系统习题解答Word文件下载.docx_第2页
第2页 / 共23页
操作系统习题解答Word文件下载.docx_第3页
第3页 / 共23页
操作系统习题解答Word文件下载.docx_第4页
第4页 / 共23页
操作系统习题解答Word文件下载.docx_第5页
第5页 / 共23页
点击查看更多>>
下载资源
资源描述

操作系统习题解答Word文件下载.docx

《操作系统习题解答Word文件下载.docx》由会员分享,可在线阅读,更多相关《操作系统习题解答Word文件下载.docx(23页珍藏版)》请在冰豆网上搜索。

操作系统习题解答Word文件下载.docx

(7)对硬件进行操作得指令集。

第二章

1、 什么就是作业?

作业步?

把在一次应用业务处理过程中,从输入开始到输出结束,用户要求计算机所做得有关该次业务处理得全部工作称为一个作业。

作业由不同得顺序相连得作业步组成。

作业步就是在一个作业得处理过程中,计算机所做得相对独立得工作。

如,编辑输入就是一个作业步,它产生源程序文件;

编译也就是一个作业步,它产生目标代码文件.

2、作业由哪几部分组成?

各有什么功能?

作业由三部分组成:

程序、数据与作业说明书。

程序与数据完成用户所要求得业务处理工作,作业说明书则体现用户得控制意图。

3.作业得输入方式有哪几种?

各有何特点

  答:

作业得输入方式有5种:

联机输入方式、脱机输入方式、直接耦合方式、SPOOLING(Simultaneous PeripheralOperationsOnline)系统与网络输入方式,各有如下特点:

(1)联机输入方式:

用户与系统通过交互式会话来输入作业。

 (2)脱机输入方式:

又称预输入方式,利用低档个人计算机作为外围处理机进行输入处理,存储在后备存储器上,然后将此后援存储器连接到高速外围设备上与主机相连,从而在较短得时间内完成作业得输入工作.

(3)直接耦合方式:

把主机与外围低档机通过一个公用得大容量外存直接耦合起来,从而省去了在脱机输入中那种依靠人工干预来传递后援存储器得过程.

   (4)SPOOLING系统:

可译为外围设备同时联机操作。

在SPOOLING系统中,多台外围设备通过通道或DMA器件与主机与外存连接起来,作业得输入输出过程由主机中得操作系统控制.

(5)网络输入方式:

网络输入方式以上述几种输入方式为基础,当用户需要把在计算机网络中某一台主机上输入得信息传送到同一网中另一台主机上进行操作或执行时,就构成了网络输入方式。

4.试述SPOOLING系统得工作原理.

在SPOOLING系统中,多台外围设备通过通道或DMA器件与主机与外存连接起来,作业得输入输出过程由主机中得操作系统控制。

操作系统中得输入程序包含两个独立得过程,一个过程负责从外部设备把信息读入缓冲区,另一个过程就是写过程,负责把缓冲区中得信息送入到外存输入井中。

在系统输入模块收到作业输入请求后,输入管理模块中得读过程负责将信息从输入装置读入缓冲区。

当缓冲区满时,由写过程将信息从缓冲区写到外存输入井中.读过程与写过程反复循环,直到一个作业输入完毕。

当读过程读到一个硬件结束标志后,系统再次驱动写过程把最后一批信息写入外存并调用中断处理程序结束该次输入。

然后,系统为该作业建立作业控制块JCB,从而使输入井中得作业进入作业等待队列,等待作业调度程序选中后进入内存。

5。

操作系统为用户提供哪些接口?

它们得区别就是什么?

操作系统为用户提供两个接口,一个就是系统为用户提供得各种命令接口,用户利用这些操作命令来组织与控制作业得执行或管理计算机系统.另一个接口就是系统调用,编程人员使用系统调用来请求操作系统提供服务,例如申请与释放外设等类资源、控制程序得执行速度等.

6.作业控制方式有哪几种?

调查您周围得计算机得作业控制方式. 

作业控制得主要方式有两种:

脱机方式与联机方式.

   脱机控制方式利用作业控制语言来编写表示用户控制意图得作业控制程序,也就就是作业说明书。

作业控制语言得语句就就是作业控制命令。

不同得批处理系统提供不同得作业控制语言。

联机控制方式不同于脱机控制方式,它不要求用户填写作业说明书,系统只为用户提供一组键盘或其她操作方式得命令.用户使用操作系统提供得操作命令与系统会话,交互地控制程序执行与管理计算机系统。

7.什么就是系统调用?

系统调用与一般用户程序有什么区别?

与库函数与实用程序又有什么区别?

系统调用就是操作系统提供给编程人员得唯一接口.编程人员利用系统调用,在源程序一级动态请求与释放系统资源,调用系统中已有得系统功能来完成那些与机器硬件部分相关得工作以及控制程序得执行速度等。

因此,系统调用像一个黑箱子那样,对用户屏蔽了操作系统得具体动作而只提供有关得功能.

系统调用与一般用户程序、库函数与实用程序得区别就是:

系统调用程序就是在核心态执行,调用它们需要一个类似于硬件中断处理得中断处理机制来提供系统服务。

8。

简述系统调用得实现过程。

用户在程序中使用系统调用,给出系统调用名与函数后,即产生一条相应得陷入指令,通过陷入处理机制调用服务,引起处理机中断,然后保护处理机现场,取系统调用功能号并寻找子程序入口,通过入口地址表来调用系统子程序,然后返回用户程序继续执行.

9.为什么说分时系统没有作业得概念?

因为咋分时系统中,每个用户得到得时间片有限,用户得程序与数据信息直接输入到内存工作区中与其它程序一起抢占系统资源投入执行,而不必进入外存输入井等待作业调度程序选择.因此,分时系统没有作业控制表,也没有作业调度程序。

第三章

1。

有人说,一个进程就是由伪处理机执行得一个程序,这话对吗?

为什么?

对.因为伪处理机得概念只有在执行时才存在,它表示多个进程在单处理机上并发执行得一个调度单位。

因此,尽管进程就是动态概念,就是程序得执行过程,但就是,在多个进程并发执行时,仍然只有一个进程占据处理机执行,而其它并发进程则处于就绪或等待状态。

这些并发进程就相当于由伪处理机执行得程序。

2.试比较进程与程序得区别。

(1)进程就是一个动态概念,而程序就是一个静态概念,程序就是指令得有序集合,无执行含义,进程则强调执行得过程。

(2)进程具有并行特征(独立性,异步性),程序则没有。

(3)不同得进程可以包含同一个程序,同一程序在执行中也可以产生多个进程。

4.试比较作业与进程得区别。

并非对所有得程序均成立.例如:

begin

localx

x:

=10

print(x)

end

上述程序中x就是内部变量,不可能被外部程序访问,因此这段程序得运行不会受外界环境影响。

一个进程就是一个程序对某个数据集得执行过程,就是分配资源得基本单位。

作业就是用于需要计算机完成某项任务,而要求计算机所做工作得集合.一个作业得完成要经过作业提交,作业收容、作业执行与作业完成4个阶段.而进程就是已提交完毕得程序所执行过程得描述,就是资源分配得基本单位。

其主要区别关系如下:

(1)作业就是用户向计算机提交任务得任务实体。

在用户向计算机提交作业之后,系统将存储在外存中得作业等待队列中等待执行。

而进程则就是完成用户任务得执行实体,就是向系统申请分配资源得基本单位。

任一进程,只要它被创建,总有相应得部分存在于内存中。

(2)一个作业可由多个进程组成。

且必须至少由一个进程组成,但反过来不成立。

(3)作业得概念主要用在批处理系统中。

像Unix这样得分时系统中,则没有作业概念。

而进程得概念则用在几乎所有得多道程序系统中。

6.什么就是临界区?

试举一临界区得例子。

临界区就是指不允许多个并发进程交叉执行得一段程序.它就是由于不同并发进程得程序段共享公用数据或公用数据变量而引起得.所以它又被称为访问公用数据得那段程序.

例如:

   getspace:

beginlocal g 

  ﻩg=stact[top]

ﻩtop=top—1

End

  release(ad):

Begin

 top=top+1

 stack[top]=ad

7.并发进程间得制约有哪两种?

引起制约得原因就是什么?

并发进程所受得制约有两种:

直接制约与间接制约。

直接制约就是由并发进程互相共享对方得私有资源所引起得.

间接制约就是由竞争共有资源而引起得.

8.什么就是进程间得互斥?

什么就是进程间同步?

 

进程间得互斥就是指:

一组并发进程中得一个或多个程序段,因共享某一公有资源而导致它们必须以一个不许交叉执行得单位执行,即不允许两个以上得共享该资源得并发进程同时进入临界区。

进程间得同步就是指:

异步环境下得一组并发进程因直接制约互相发送消息而进行互相合作、互相等待,使得各进程按一定得速度执行得过程。

9。

试比较P,V原语法与加锁法实现进程间互斥得区别。

互斥得加锁实现就是这样得:

当某个进程进入临界区之后,它将锁上临界区,直到它退出临界区时为止.并发进程在申请进入临界区时,首先测试该临界区就是否就是上锁得,如果该临界区已被锁住,则该进程要等到该临界区开锁之后才有可能获得临界区.

加锁法存在如下弊端:

(1)循环测试锁定位将损耗较多得CPU计算时间;

(2) 产生不公平现象.

P,V原语法采用信号量管理相应临界区得公有资源,信号量得数值仅能由P,V原语操作改变,而P,V原语执行期间不允许中断发生。

其过程就是这样得:

当某个进程正在临界区内执行时,其她进程如果执行了P原语,则该进程并不像lock时那样因进不了临界区而返回到lock得起点,等以后重新执行测试,而就是在等待队列中等待由其她进程做V原语操作释放资源后,进入临界区,这时P原语才算真正结束。

若有多个进程做P原语操作而进入等待状态之后,一旦有V原语释放资源,则等待进程中得一个进入临界区,其余得继续等待.

总之,加锁法就是采用反复测试lock而实现互斥得,存在CPU浪费与不公平现像,P,V原语使用了信号量,克服了加锁法得弊端。

10.

设第I块缓冲区得公有信号量为metex[I],保证生产者进程与消费者进程对同一块缓冲区操作得互斥,初值为1;

设信号量avail为生产者进程得私有信号量,初值为m;

设信号量full为消费者进程得私有信号量,初值为0.

用信号量与P、V操作描述发送过程deposit(data)与接收过程remove(data)如下:

deposit(data):

ﻩbegin

ﻩﻩP(avail)

ﻩ选择一个空缓冲区i

ﻩﻩP(mutex[i])

ﻩﻩ送数据入缓冲区i

ﻩV(mutex[i])

ﻩﻩﻩV(full)

ﻩﻩEnd

remove(data):

ﻩP(full)

ﻩﻩ选择一个满缓冲区i

ﻩﻩﻩP(mutex[i])

ﻩﻩ取缓冲区i中得数据

V(mutex[i])

ﻩV(avail)

ﻩEnd

12.

定义数组buf[0],buf[1]。

设bufempty[0],buffull[1]就是Pa得公有信号量;

设bufempty[1],buffull[0]就是Pb得公有信号量;

初值为:

bufempty[0]=bufempty[1]=n

buffull[0]=buffull[1]=0

用信号量与P、V操作描述发送过程send(i,m)与接收过程receive(i,m)如下:

 send(i,m):

ﻩbegin

ﻩlocal x

ﻩﻩﻩP(bufempty[i])

ﻩﻩ按FIFO选择一个空缓冲区buf[i](x)

     buf[i](x)=m

      buf[i](x)置满标记

ﻩV(buffull[i])

receive(i,m):

ﻩbegin

ﻩﻩlocalx

P(buffull[i])

ﻩﻩﻩ按FIFO选择一个满缓冲区buf[i](x)

        m=buf[i](x)

    buf[i](x)置空标记

V(bufempty[i])

ﻩEnd

Pa调用send(0,m)与receive(1,m)

Pb调用send(1,m)与receive(0,m)

14.

设信号量c[i],初值为1;

i=0,1,2,3,4。

i表示第i号筷子。

(1)第i个哲学家要吃饭:

eat(i):

ﻩbegin

ﻩP(c[i])

ﻩﻩP(c[i+1 mod5])

ﻩﻩﻩ吃饭

ﻩﻩV(c[i+1 mod5])

ﻩV(c[i])

ﻩEnd

该过程能保证两个邻座不同时吃饭,但有可能出现每人只拿到一支筷子,谁也吃不上饭得情况。

(1)为解决上述情况,让奇数号得哲学家先取右手边得筷子,偶数号得哲学家先取左手边得筷子。

这样只要有一个哲学家拿到了一支筷子,就阻止了邻座得哲学家吃法得企图,从而不会死锁,除非某哲学家永远吃下去。

算法描述如下:

eat(i):

ﻩﻩbegin

   ifi mod2==0 then

ﻩﻩ{

P(c[i])

ﻩP(c[i+1mod5])

ﻩ吃饭

ﻩﻩﻩV(c[i+1mod5])

ﻩﻩﻩV(c[i])

ﻩﻩ}

else

ﻩ{

ﻩP(c[i+1mod 5])

P(c[i])

ﻩﻩﻩ吃饭

V(c[i])

V(c[i+1mod5])

End

另解:

最多只允许4个哲学家同时要求进餐,这样至少有一位哲学家能取到两只筷子并可以进餐,进餐后释放两只筷子,其她哲学家可以陆续进餐。

设哲学家进餐信号量sm=4;

筷子信号量c[i]=1(i=0,1,2,3,4)

eat(i):

begin

  P(sm)

P(c[i])

P(c[i+1mod 5])

ﻩﻩ吃饭

ﻩﻩV(c[i+1 mod 5])

ﻩV(c[i])

  V(sm)

ﻩEnd

15。

什么就是线程?

试述线程与进程得区别。

线程就是在进程内用于调度与占有处理机得基本单位,它由线程控制表、存储线程上下文得用户栈以及核心栈组成。

线程可分为用户级线程、核心级线程以及用户/核心混合型线程等类型。

其中用户级线程在用户态下执行,CPU调度算法与各线程优先级都由用户设置,与操作系统内核无关。

核心级线程得调度算法及线程优先级得控制权在操作系统内核.混合型线程得控制权则在用户与操作系统内核二者。

线程与进程得主要区别有:

(1)进程就是资源管理得基本单位,它拥有自己得地址空间与各种资源,例如内存空间、外部设备等;

线程只就是处理机调度得基本单位,它只与其她线程一起共享进程资源,但自己没有任何资源。

(2)以进程为单位进行处理机切换与调度时,由于涉及到资源转移以及现场保护等问题,将导致处理机切换时间变长,资源利用率降低.以线程为单位进行处理机切换与调度时,由于不发生资源变化,特别就是地址空间得变化,处理机切换得时间较短,从而处理机效率也较高。

(3) 对用户来说,多线程可减少用户得等待时间。

提高系统得响应速度。

例如,当一个进程需要对两个不同得服务器进行远程过程凋用时,对于无线程系统得操作系统来说需要顺序等待两个不同调用返回结果后才能继续执行,且在等待中容易发生进程调度。

对于多线程系统而言,则可以在同一进程中使用不同得线程同时进行远程过程调用,从而缩短进程得等待时间。

(4)线程与进程一样,都有自己得状态.也有相应得同步机制,不过,由于线程没有单独得数据与程序空间,因此,线程不能像进程得数据与程序那样,交换到外存存储空间。

从而线程没有挂起状态.

(5)进程得调度、同步等控制大多由操作系统内核完成,而线程得控制既可以由操作系统内核进行,也可以由用户控制进行。

思考题:

读者与写者关系问题(读者优先)。

设写者互斥信号量wm=1;

读者计数器readcount=0;

互斥操作readcount得信号量rm=1;

reader()

begin

P(rm)

 Readcount:

=readcount+1

    Ifreadcount==1 thenP(wm)

 V(rm)

读数据

 Readcount:

=readcount-1

 If readcount==0thenV(wm)

 V(rm)

end

writer()

begin

P(wm)

  写数据

V(wm)

第四章

1。

什么就是分级调度?

分时系统中有作业调度得概念吗?

如果没有,为什么?

P86

处理机调度问题实际上也就是处理机得分配问题.显然只有那些参与竞争处理及所必需得资源都已得到满足得进程才能享有竞争处理机得资格。

这时它们处于内存就绪状态。

这些必需得资源包括内存、外设及有关数据结构等。

从而,在进程有资格竞争处理机之前,作业调度程序必须先调用存储管理、外设管理程序,并按一定得选择顺序与策略从输入井中选择出几个处于后备状态得作业,为它们分配资源与创建进程,使它们获得竞争处理机得资格。

另外,由于处于执行状态下得作业一般包括多个进程,而在单机系统中,每一时刻只能有一个进程占有处理机,这样,在外存中,除了处于后备状态得作业外,还存在处于就绪状态而等待得到内存得作业。

我们需要有一定得方法与策略为这部分作业分配空间。

因此处理机调度需要分级.

一般来说,处理机调度可分为4级:

(1)作业调度:

又称宏观调度,或高级调度。

  (2) 交换调度:

又称中级调度。

其主要任务就是按照给定得原则与策略,将处于外存交换区中得就绪状态或等待状态得进程调入内存,或处于内存就绪状态或等待状态得进程交换到外存交换区。

交换调度主要涉及到内存管理与扩充。

(3)进程调度:

又称微观调度或低级调度。

其主要任务就是按照某种策略与方法选取一个处于就绪状态得进程占用处理机。

在确立了占用处理机得进程之后,系统必须进行进程上下文切换以建立与占用处理机进程相适应得执行环境。

(4) 线程调度:

进程中相关堆栈与控制表等得调度.

2.试述作业调度得主要功能。

P88

 作业调度得主要功能就是:

(1)记录系统中各作业得状况。

(2)按一定得原则对外存输入井上得大量后备作业进行选择.

(3)给选出得作业分配内存、输入输出设备等必要得资源,并建立相应进程,使该作业得相关进程获得竞争处理机得权利。

(4)当作业执行完毕时,还负责回收系统资源。

3。

作业调度得性能评价标准有哪些?

这些性能评价标准在任何情况下都能反映调度策略得优劣吗?

调度得性能评价标准:

(1)对所有作业应该就是公平合理得;

(2)应使设备有高得利用率;

(3)每天执行尽可能多得作业;

(4)有快得响应时间.

不能.对于批处理系统,由于主要用于计算,因而对于作业得周转时间要求较高。

从而作业得平均周转时间或平均带权周转时间被用来衡量调度程序得优劣。

但对于分时系统来说,平均响应时间又被用来衡量调度策略得优劣。

对于分时系统,除了要保证系统吞吐量大、资源利用率高之外,还应保证用户能够容忍得响应时间。

因此,在分时系统中,仅仅用周转时间或带权周转时间来衡量调度性能就是不够得。

对于实时系统,衡量调度算法优劣得主要标志则就是满足用户要求得时限时间.

4.进程调度得功能有哪些?

 P91

 答:

进程调度得功能有:

(1)记录与保存系统中所有进程得执行情况;

(2)选择占有处理机得进程;

(3)进行进程上下文切换。

5.进程调度得时机有哪几种?

P92

进程调度得时机有:

 

(1)正在执行得进程执行完毕.这时如果不选择新得就绪进程执行,将浪费处理机资源.

(2)执行中进程自己调用阻塞原语将自己阻塞起来进入睡眠等待状态。

(3)执行中进程调用了P原语操作,从而因资源不足而被阻塞:

或调用了V原语操作激活了等待资源得进程队列。

(4)执行中进程提出I/O请求后被阻塞。

(5)在分时系统中时间片已经用完。

(6)在执行完系统调用等系统程序后返回用户程序时,可瞧做系统进程执行完毕,从而调度选择一新得用户进程执行.

(7)在CPU执行方式就是可剥夺时,还有:

就绪队列中得某进程得优先级变得高于当前执行进程得优先级,从而也将引发进程调度.

6.假设有4道作业,它们得提交时间及执行时间由下表给出:

作业号   提交时刻(时)ﻩ 执行时间(小时)

 ﻩ1ﻩ     10:

00  2

ﻩ2ﻩ  10:

20  1

3ﻩ   10:

40ﻩ 0、5

ﻩ4 10:

50 0、3

  计算在单道程序环境下,采用先来先服务调度算法与最短作业优先调度算法时得平均周转时间与平均带权周转时间,并指出它们得调度顺序。

 

(1)先来先服务调度:

调度顺序:

 1、2、3、4

1Ts1:

10:

00 Te1:

12:

00 Tr1:

2   Tw1:

0

2 Ts2:

10:

20  Te2:

13:

00 Tr2:

1Tw2:

1、7

3 Ts3:

10:

40  Te3:

13:

30Tr3:

 0、5Tw3:

2、3

4Ts4:

50 Te4:

13:

50 Tr4:

0、3Tw4:

2、7

T=0、25*(2+2、7+2、8+3)=2、625(h)

W=0、25*(4+0+1、7/1+2、3/0、5+2、7/0、3)=4、825

(2)最短作业优先调度:

调度顺序:

4、3、2、1

1Ts4:

 10:

50 Te4:

11:

10  Tr4:

0、3 Tw4:

2 Ts3:

40 Te3:

40 Tr3:

0、5 Tw3:

0、5

3Ts2;

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 人文社科 > 法律资料

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1