计算机操作系统作业

计算机操作系统(第四版)-汤小丹,梁红兵,哲凤屏,汤子瀛

答案

第一章 操作系统引论
1.1 操作系统的目标和作用
1.2 操作系统的发展过程
1.3 操作系统的基本特性
1.5 OS结构设计

习题1
1.设计现代OS的主要目标是什么?
答:(1)方便性,
(2)有效性,
(3)可扩充性
(4)开放性

OS的作用可表现在哪几个方面?
答:
(1)作为用户与计算机硬件系统之间的接口
(2)作为计算机系统资源的管理者
(3)实现了对计算机资源的抽象

2.为什么说操作系统实现了对计算机资源的抽象?
答:
用户可利用该模型提供的接口使用计算机,无需了解物理接口实现的细节.
可在第一层覆盖一层用于文件管理的软件,实现对文件操作的细节,并向上一层提供一组实现对文件进行存取操作的数据结构及命令.

3.试说明推动多道批处理系统形成和发展的主要动力是什么.
答:
主要动力:提高资源利用率和系统吞吐量
3.何谓脱机I/O和联机I/O?
答:
脱机I/O:
程序和数据的输入和输出都是在外围机的控制下完成的
联机I/O:
程序和数据的输入和输出都是主机的直接控制下进行的

4.试说明推动分时系统形成和发展的主要动力是什么?
答:
主要动力:为了满足用户对人-机交互的需求.
5.实现分时系统的关键问题是什么?应如何解决?
答:
关键问题:
<1>如何使用户能与自己的作业进行交互
<2>当用户在自己的终端上键入命令时,系统应能及时接收,并及时处理该命令,再将结果返回给用户.
方法:
<1>在系统配置一个多路卡
<2>作业直接进入内存
<3>采用轮转运行方式

6.为什么要引入实时操作系统
答:
原因:系统能及时响应外部事件的请求,在规定时间内完成对该时间的处理,并控制所有实时任务协调一致地运行
7.什么是硬实时任务和软实时任务?试举例说明.
答:
硬实时任务:系统必须满足任务对截止时间的要求,否则可能出现难以预料的后果.
例子:用于工业和武器控制的实时系统
软实时任务:若偶尔错过任务的截止时间,对系统产生的影响也不会太大.
例子:用于信息查询系统和多媒体系统中的实时系统

8.试从交互性,及时性以及可靠性方面将分时系统与实时系统进行比较.
答:
交互性:
在信息查询系统中,人与系统的交互性仅限于访问系统中某些特定的专用服务程序.它并不像分时系统那样,能向终端用户提供数据处理,资源共享等服务.而多媒体系统的交互性也仅限于用户发送某些特定的命令,如开始,停止,快进等,由系统立即响应.
及时性:
信息查询系统对实时性的要求是依据人所能接受的等待时间确定的,而多媒体系统实时性的要求是,播放出来的音乐和电视能令人满意.实时控制系统的实时性则是对控制对象所要求的截止时间来确定的,一般为秒级到毫秒级
可靠性:
分时系统要求系统可靠,实时系统要求系统高度可靠,因为任务差错都可能带来无法预料的灾难性后果.因此,在实时系统中,往往都采取了多级容错措施来保障系统的安全性及数据的安全性

9.OS有哪几大特征?其最基本的特征是什么?
答:
OS特征:
<1>并发
<2>共享
<3>虚拟
<4>异步
最基本的特征:
并发和共享

在多道程序技术的OS环境下的资源共享与一般情况下的资源共享有何不同?对独占资源应采取何种共享方式?
10.什么是时分复用技术?举例说明它能提高资源利用率的根本原因是什么.
答:
时分复用技术:
实现虚拟处理机,虚拟设备等,使资源的利用率得以提高
根本原因:
它利用某设备为一用户服务的空闲时间,又转去为其他用户服务,使设备得到最充分的利用

11.是什么原因使操作系统具有异步性特征?
处理机管理有哪些主要功能?其主要任务是什么?
答:
主要功能:
<1>进程控制(创建和撤销进程)
<2>进程同步(对诸进程的运行进行协调)
<3>进程通信(实现进程之间的信息交换)
<4>调度(按照一定的算法把处理机分配给进程)
主要任务:

12.设备管理有哪些主要功能?其主要任务是什么?
答:
主要功能:
<1>缓冲管理
<2>设备分配
<3>设备处理
主要任务:
<1>完成用户进程提出的I/O请求,为用户进程分配所需的I/O设备,并完成指定的I/O操作
<2>提高CPU和I/O设备的利用率,提高I/O速度,方便用户使用I/O设备

13.文件管理有哪些主要功能?其主要任务是什么?
答:
主要功能:
<1>文件存储空间的管理
<2>目录管理
<3>文件的读/写管理和保护
主要任务:
对用户文件和系统文件进行管理以方便用户使用,并保证文件的安全性.

14.试说明推动传统OS演变为现代OS的主要因素是什么?
15.什么是微内核OS?
微内核操作系统具有哪些优点?它为何能有这些优点?
答:(1)优点:
<1>提高了系统的可扩展性.
<2>增强了系统的可靠性
<3>可移植性强
<4>提供了对分布式系统的支持
<5>融入了面向对象技术.
(2)原因:
微内核OS结构是建立在模块化,层次化结构的基础上,并采用了客户/服务器模式和面向对象的程序设计技术.

16.现代操作系统较之传统操作系统又增加了哪些功能何特征?
17.在微内核OS中,为什么要采用客户/服务器模式?
18.在基于微内核结构的OS中,应用了哪些新技术?
19.何谓微内核技术?在微内核中通常提供了哪些功能?
答(1)微内核技术:
<1>足够小的内核
<2>基于客户/服务器模式
<3>应用”机制与策略分离”原理
<4>采用面向对象技术
(2)功能:
<1>进程(线程)管理
<2>低级存储器管理
<3>中断和陷入处理

**第二章 进程的描述与控制
2.1 前趋图和程序设计
2.2 进程的描述
2.3 进程控制
2.4 进程同步
2.5 经典进程的同步问题
2.6 进程通信
2.7 线程(Threads)的基本概念
2.8 线程的实现

**
习题2
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是进程存在的唯一标志.

8.PCB提供了进程管理和进程调度所需要的哪些信息?
答: 进程管理:通用寄存器、指令计数器、程序状态字、用户栈指针;进程调度:进程状态、进程优先级、事件、其他信息。
9.进程控制块的组织方式有哪几种?
答:线性方式、链接方式、索引方式
10.何谓操作系统内核?内核的主要功能是什么?
答:
(1)现在操作系统一般将0S划分为若干层次,再将0s的不同功能分别设置在不同的层次中。通常将一些与硬件紧密相关的模块(如中断处理程序等)、各种常用设备的驱动程序以及运行频率较髙的模块(如时钟管理、进程调度和许多模块所公用的一些基本操作),都安排在紧靠硬件的软件层次中,将它们常驻内存,即通常被称为的0S内核。
(2)支撑功能:中断处理、时钟管理、原语操作
(3)资源管理功能:进程管理、存储器管理、设备管理

11.试说明进程在三个基本状态之间转换的典型原因.
答:(1)就绪状态->执行状态:进程分配到CPU资源;
(2)执行状态->就绪状态:时间片用完;
(3)执行状态->阻塞状态:I/O请求;
(4)阻塞状态->就绪状态:i/O完成.

12.为什么要引入挂起状态?该状态有哪些性质?
答(1):引入挂起状态处于五种不同的需要:
终端用户需要,父进程需要,操作系统需要,对换需要和负荷调节需要.
(2)处于挂起状态的进程不能接受处理机调度.

13.在进行进程切换时,所要保存的处理机状态信息有哪些?
答:进行进程切换时,所要保存的处理机状态信息有:
(1)进程当前暂存信息;
(2)下一指令地址信息;
(3)进程状态信息;
(4)过程和系统调用参数及调用地址信息.

14.试说明引起进程创建的主要事件.
答:引起进程创建的主要事件有:
用户登录,作业调度,提供服务,应用请求.

15.试说明引起进程被撤销的主要事件.
答:引起进程被撤销的主要事件有:
正常结束,异常结束(越界错误,保护错,非法指令,特权指令错,运行超时,等待超时,算术运算错,I/O故障),外界干预(操作员或操作系统干预,父进程请求,父进程终止).

16.在创建一个进程时所要完成的主要工作是什么?
答:(1)OS发现请求创建新进程事件后,调用进程创建原语Creat();
(2)申请空白PCB;
(3)为新进程分配资源;
(4)初始化进程控制块;
(5)将新进程插入就绪队列.

17.在撤销一个进程时所要完成的主要工作是什么?
答:(1)根据被终止进程标识符,从PCB集中检索出进程PCB,读出该进程状态;
(2)若被终止进程处于执行状态,立即终止该进程的执行,若调度标志真,指示该进程被终止后重新调度;
(3)若该进程还有子进程,应将所有子孙进程终止,以防它们成为不可控进程;
(4)将被终止进程拥有的全部资源,归还给父进程,或归还给系统;
(5)将被终止进程PCB从所在队列或列表中移出,等待其它程序搜集信息.

18.试说明引起进程阻塞或被唤醒的主要事件是什么?
答:a.请求系统服务
b.启动某种操作;
c.新数据尚未到达;
d.无新工作可做.

19.为什么要在OS中引入线程?
答:(1)在OS中引入进程的目的,是为了使多个程序能并发执行,以提高资源利用率和系统吞吐量.
(2)在OS中再映入线程,则是为了减少程序在并发执行时所复除的时空开销,使OS只有更好的并发性.

20.试说明线程具有哪些属性?
答:(1)轻型实体;
(2)独立调度和分派的基本单位;
(3)可并发执行;
(4)共享进程资源.

21.试从调度性,并发性,拥有资源及系统开销方面对进程和线程进行比较.
答:a.调度性.在传统的操作系统中,拥有资源的基本单位和独立调度,分派的基本单位都是进程,在引入线程的OS中,则把线程作为调度和分派的基本单位,而把进程作为资源拥有的基本单位;
b.并发性.在引入线程的OS中,不仅进程之间可以并发执行,而且在一个进程中的多个线程之间,亦可并发执行,因而使OS具有更好的并发性;
c.拥有资源.无卵是传统的操作系统,还是引入了线程的操作系统,进程始终是拥有资源的一个基本单位,而线程除了拥有一点在运行时必不可少的资源外,本身基本不拥有系统资源,但它可以访问其隶属进程的资源;
d.开销.由于创建或撤销进程时,系统都要为之分配和回收资源,如内存空间等,进程切换时所要保存和设置的现场信息也要明显地多于线程,因此,操作系统在创建,撤销和切换进程时所付出的开销将显著地大于线程.

22.线程控制块TCB中包含了哪些内容?
答:线程控制块TCB通常包含:
(1)线程标识符,为每个线程赋予一个唯一的线程标识符;
(2)一组寄存器,包含程序计数器PC,状态寄存器和通用寄存器的内容;
(3)线程运行状态,用于描述线程正处于何种运行状态;
(4)优先级,描述线程执行的优先程度;
(5)线程专有存储区,用于线程切换时存放线程保护信息,和与该线程相关的统计信息;
(6)信号屏蔽,即对某些信号加以屏蔽;
(7)堆栈指针,在线程运行时,经常会进行过程调用,而过程调用通常会出现多重嵌套的青春,这样,就必须将每次过程调用中所使用的局部变量以及返回地址保存起来.

23.何谓用户级线程和内核支持线程?
答:(1)用户级线程ULT(User Level Threads)是在用户空间中实现的.对线程的创建,撤销,同步与通信等功能,都无需内核支持,即用户级线程是与内核无关的.
(2)内核支持线程KST(Kernel Supported Threads):在OS中的所有进程,无论是系统进程还是用户进程,都是在操作系统内核的支持下运行的,是与内核紧密相关的.而内核支持线程KST也是在内核的支持下运行的,它们的创建,阻塞,撤销和切换等,都是在内核空间实现的.

24.试说明用户级线程的实现方法.
答:用户级线程是在用户空间中的实现的,运行在“运行时系统”与“内核控制线程”的中间系统上。运行时系统用于管理和控制线程的函数的集合。内核控制线程或轻型进程LWP可通过系统调用获得内核提供服务,利用LWP进程作为中间系统。
25.试说明内核支持线程的实现方法
.答:系统在创建新进程时,分配一个任务数据区PTDA,其中包括若干个线程控制块TCB空间,创建一个线程分配一个TCB,有关信息写入TCB,为之分配必要的资源.
当PTDA中的TCB用完,而进程又有新线程时,只要所创建的线程数目未超过允许值,系统可在为之分配新的TCB;在撤销一个线程时,也应回收线程的所有资源和TCB.

26.多线程模型有哪几种类型?多对一模型有何优缺点?
答:多对一模型、一对一模型和多对多模型。 多对一模型的主要缺点在于,如果一个线程在访问内核时发生阻塞,则整个进程都会被阻塞;此外,在任一时刻,只有一个线程能够访问内核,多个线程不能同时在多个处理机上运行

  • 5
    点赞
  • 34
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

低调的小哥哥

你的关注就是我为你服务的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值