没有合适的资源?快使用搜索试试~ 我知道了~
计算机操作系统教程_张尧学(第3版)[课后练习答案、复习资料].doc
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 66 浏览量
2022-07-07
14:56:34
上传
评论
收藏 344KB DOC 举报
温馨提示
试读
19页
计算机操作系统教程_张尧学(第3版)[课后练习答案、复习资料].doc
资源推荐
资源详情
资源评论
1 / 19
《计算机操作系统教程》
尧学__(第 3 版)
第一章 绪论
1.什么是操作系统的基本功能?
答:操作系统的职能是管理和控制汁算机系统中的所有硬、软件资源,合理地组织计
算机工作流程,并为用户提供一个良好的工作环境和友好的接口。操作系统的基本功能包
括:
处理机管理、存储管理、设备管理、信息管理(文件系统管理)和用户接口等。
2.什么是批处理、分时和实时系统?各有什么特征?
答:批处理系统(batchprocessingsystem):操作员把用户提交的作业分类,把一批作
业编成一个作业执行序列,由专门编制的监督程序(monitor)自动依次处理。其主要特
征是:用户脱机使用计算机、成批处理、多道程序运行。
分时系统(timesharingoperationsystem):把处理机的运行时间分成很短的时间片,
按时间片轮转的方式,把处理机分配给各进程使用。其主要特征是:交互性、多用户
同时性、独立性。
实时系统(realtimesystem):在被控对象允许时间围作出响应。其主要特征是:对实
时信息分析处理速度要比进入系统快、要求安全可靠、资源利用率低。
3.多道程序(multiprogramming)和多重处理(multiprocessing)有何区别?
答;多道程序(multiprogramming)是作业之间自动调度执行、共享系统资源,并不是
真正地同时值行多个作业;而多重处理(multiprocessing)系统配置多个 CPU,能真正
同时执行多道程序。要有效使用多重处理,必须采用多道程序设计技术,而多道程序
设计原则上不一定要求多重处理系统的支持。
4.讨论操作系统可以从哪些角度出发,如何把它们统一起来?
答:讨论操作系统可以从以下角度出发:
(1)操作系统是计算机资源的管理者
(2)操作系统为用户提供使用计算机的界面;
(3)用进程管理观点研究操作系统,即围绕进程运行过程来讨论操作系统。
上述这些观点彼此并不矛盾,只不过代表了同一事物(操作系统)站在不同的角度来看
待。
每一种观点都有助于理解、分析和设计操作系统。
第三章 用户管理和配置管理
1.有 A 说,一个进程是由伪处理机执行的一个程序,这话对吗?为什么?
答:对。
因为伪处理机的概念只有在执行时才存在,它表示多个进程在单处理机上并发执行的
二个调度单位。因此,尽管进程是动态概念,是程序的执行过程,但是,在多个进程
并行执行时,仍然只有一个进程占据处理机执行,而其他并发进程则处于就绪或等待
状态。这些并发进程就相当于由伪处理机执行的程序。
2.试比较进程和程序的区别。
答:(1)进程是一个动态概念,而程序是一个静态概念,程序是指令的有序集合,无执
行含义,进程则强调执行的过程。
(2)进程具有并行特征(独立性,异步性),程序则没有。
(3)不同的进程可以包含同一个程序,同一程序在执行中也可以产生多个进程。
3.我们说程序的并发执行将导致最终结果失去封闭性广这话对所有的程序都成立吗?举例
说明.
答:并非所有程序均成立。
如:
Begin
local“ Z
K::10
print(x)
End
上述程序中 x 是部变量,不可能被外部程序访问,因此这段程序的运行不会受外部环
境影响。
2 / 19
4.试比较作业和进程的区别。
答:一个进程是一个程序对某个数据集的执行过程,是分配资源的基本单位。作业是
用于需要计算机完成某项任务,而要求计算机所做工作的集合。一个作业的完成要经
过作业提交,作业收容、作业执行和作业完成 4 个阶段。而进程是已提交完毕的程序
所执行过程的描述,足资源分配的基本单位。其主要区别关系如下:
(1)作业是用户向计算机提交任务的任务实体。在用户向计算机提交作业之后,系统将
存储在外存中的作业等待队列中等待执行。而进程则是完成用户任务的执行实体,是
向系统申请分配资源的基本单位。任一进程,只要它被创建,总有相应的部分存在于
存中。
(2)一个作业可由多个进程组成。且必须至少由一个进程组成,但反过来不成立。
(3)作业的概念主要用在批处理系统中。像 Unix 这样的分时系统中,则没有作业概念。
而进程的概念则用在几乎所有的多道程序系统中。
5.UNIXSystem V 中,系统程序所对应的正文段未被考虑成进程上下文的一部分,为什么?
答:因为系统程序的代码被用户程序所共享,因此如果每个进程在保存进程上下文时,
都将系统程序代码放到其进程上下文中,则大大浪费了资源。因此系统程序的代码不
放在进程上下文中,而是统一放在核心程序所处的存中。
6.什么是临界区?试举一临界区的例子。
答:临界区是指不允许多个并发进程交叉执行的一段程序。它是由于不同并发进程的
程序段共享公用数据或公用数据变量而引起的。所以它又被称为访问公用数据的那段
程序。
例如:
getspace:
Begin local g
top=top-1
End
release(ad):
Begin
top’top 十 1
stack[top]=ad
End
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
原语使用了信号量,克服了加锁法的弊端。
3 / 19
14.设有 5 个哲学家,共享一放有五把椅子的桌子,每人分得一把椅子。但是,桌子上
总共只有 5 支筷子,在每人两边分开各放一支。哲学家们在肚子饥饿时才试图分两次
从两边拾起筷子就餐。
条件:
(1) 只有拿到两支筷子时,哲学家才能吃饭。
(2) 如果筷子已在他人手上,则该哲学家必须等待到他人吃完之后才能拿到筷子。
(3) 任一哲学家在自己未拿到两支筷子吃饭之前,决不放下自己手中的筷子。
试:
(1) 描述一个保证不会出现两个邻座同时要求吃饭的通信算法。
(2) 描述一个既没有两邻座同时吃饭,又没有人饿死(永远拿不到筷子)的算法。
(3) 在什么情况下,5 个哲学家全部吃不上饭?
解答:
(1)、设信号量 c[0]~c[4],初始值均为 1,分别表示 i 号筷子被拿(i=0,1,2,3,4),
send(i):第 i 个哲学家要吃饭
begin
P(c[i]);
P(c[i+1 mod 5]);
eat;
V(c[i+1 mod 5]);
V(c[i]);
End;
该过程能保证两邻座不同时吃饭,但会出现 5 个哲学家一人拿一只筷子,谁也吃不上饭
的死锁情况.
(2)、解决的思路如下:让奇数号的哲学家先取右手边的筷子,让偶数号的哲学家先取
左手边的筷子.这样,任何一个哲学家拿到一只筷子之后,就已经阻止了他邻座的一个
哲学家吃饭的企图,除非某个哲学家一直吃下去,否则不会有人会饿死.
send(i):第 i 个哲学家要吃饭
Begin
If i mod 2==0 then
{
P(c[i]),P(c[i+1 ]mod 5))
eat;
V(c[i],c[i+1 mod 5])
}
Else
{
P(c[i+1 mod 5])
P(c[i])
Eat
V(c[i+1 mod 5])
V(c[i])
}
End
15.什么是线程?试述线程与进程的区别,
答;线程是在进程用于调度和占有处理机的基本单位,它由线程控制表、存储线程上
下文的用户栈以与核心栈组成。线程可分为用户级线程、核心级线程以与用户/核心
混合型线程等类型。其中用户级线程在用户态下执行,CPU 调度算法和各线程优先级都
由用户设置,与操作系统核无关。核心级线程的调度算法与线程优先级的控制权在操
作系统核。混合型线程的控制权则在用户和操作系统核二者。线程与进程的主要区别
有:
(1)进程是资源管理的基本单位,它拥有自己的地址空间和各种资源,例如存空间、外
部设备等;线程只是处理机调度的基本单位,它只和其他线程一起共享进程资源,但
自己没有任何资源。
(2)以进程为单位进行处理机切换和调度时,由于涉与到资源转移以与现场保护等问题,
将导致处理机切换时间变长,资源利用率降低。以线程为单位进行处理机切换和调度
4 / 19
时,由于不发生资源变化,特别是地址空间的变化,处理机切换的时间较短,从而处
理机效率也较高。
(3)对用户来说,多线程可减少用户的等待时间。提高系统的响应速度。例如,当一个
进程需要对两个不同的服务器进行远程过程凋用时,对于无线程系统的操作系统来说
需要顺序等待两个不同调用返回结果后才能继续执行,且在等待中容易发生进程调度。
对于多线程系统而言,则可以在同一进程中使用不同的线程同时进行远程过程调用,
从而缩短进程的等待时间。
(4)线程和进程一样,都有自己的状态.也有相应的同步机制,不过,由于线程没有单
独的数据和程序空间,因此,线程不能像进程的数据与程序那样,交换到外存存储空
间。从而线程没有挂起状态。
(5)进程的调度、同步等控制大多由操作系统核完成,而线程的控制既可以由操作
系统核进行,也可以由用户控制进行。
第四章 进程管理
1.什么是分级调度?分时系统中有作业调度的概念吗?如果没有,为什么?
答:处理机调度问题实际上也是处理机的分配问题。显然只有那些参与竞争处理与所
必需的资源都已得到满足的进程才能享有竞争处理机的资格。这时它们处于存就绪状
态。这些必需的资源包括存、外设与有关数据结构等。从而,在进程有资格竞争处理
机之前,作业调度程序必须先调用存储管理、外设管理程序,并按一定的选择顺序和
策略从输入井中选择出几个处于后备状态的作业,为它们分配资源和创建进程,使它
们获得竞争处理机的资格。另外,由于处于执行状态下的作业一般包括多个进程,而
在单机系统中,每一时刻只能有一个进程占有处理机,这样,在外存中,除了处于后
备状态的作业外,还存在处于就绪状态而等待得到存的作业。我们需要有一定的方法
和策略为这部分作业分配空间。因此处理机调度需要分级。
一般来说,处理机调度可分为 4 级;
(1)作业调度: 又称宏观调度,或高级调度。
(2)交换调度:又称中级调度。其主要任务是按照给定的原则和策略,将处于外存交换
区中的就绪态或等待状态或存等待状态的进程交换到外存交换区。交换调度主要涉与
到存管理与扩充。因此在有些书本中也把它归入存管理部分。
(3)进程调度:又称微观调度或低级调度。其主要任务是按照某种策略和方法选取一个
处于就绪状态的进程占用处理机。在确立了占用处理机的进程之后,系统必须进行进
程上下文切换以建立与占用处理机进程相适应的执行环境。
(4)线程调度:进程中相关堆栈和控制表等的调度。
在分时系统中,一般不存在作业调度,而只有线程调度、进程调度和交换调度。这是
因为在分时系统中,为了缩短响应时间,作业不是建立在外存,而是直接建立在存中。
在分时系统中,一旦用户和系统的交互开始,用户马上要进行控制。因此,分时系统
中没有作业提交状态和后备状态。分时系统的输入信息经过终端缓冲区为系统直接接
收,或立即处理,或经交换调度暂存外存中。
2.试述作业调度的主要功能。
答: 作业调度的主要功能是:按一定的原则对外存输入井上的大量后备作业进行选择,
给选出的作业分配存、输入输出设备等必要的资源,并建立相应进程,使该作业的相
关进程获得竞争处理机的权利。另外,当作业执行完毕时,还负责回收系统资源。
3.作业调度的性能评价标准有哪些?这些性能评价标准在任何情况下都能反映调度策略的
优劣吗?
答:对于批处理系统,由于主要用于计算,因而对于作业的周转时间要求较高。从而
作业的平均周转时间或平均带权周转时间被用来衡量调度程序的优劣。但对于分时系
统来说,平均响应时间又被用来衡量调度策略的优劣。对于分时系统, 除了要保证系
统吞吐量大、资源利用率高之外,还应保证用户能够容忍的响应时间。因此,在分时
系统中,仅仅用周转时间或带权周转时间来衡量调度性能是不够的。
对于实时系统, 衡量调度算法优劣的主要标志则是满足用户要求的时限时间。
4.进程调度的功能有哪些?
答:进程调度的功能有:
(1)记录和保存系统中所有进程的执行情况;
(2)选择占有处理机的进程;
(3)进行进程上下文切换。
5.进程调度的时机有哪几种?
剩余18页未读,继续阅读
资源评论
智慧安全方案
- 粉丝: 3609
- 资源: 59万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功