计算机操作系统课后题答案高等教育出版社.docx
《计算机操作系统课后题答案高等教育出版社.docx》由会员分享,可在线阅读,更多相关《计算机操作系统课后题答案高等教育出版社.docx(56页珍藏版)》请在冰豆网上搜索。
计算机操作系统课后题答案高等教育出版社
算机操作系统课后题答案(高等教育出版社)
练习题
(一)
Ⅰ问答题
1.操作系统的两个主要目标是什么?
答:
方便性与有效性。
2.试说明操作系统与硬件、其它系统软件以及用户之间的关系?
答:
与硬件的关系:
操作系统是位于硬件层上的第一层软件,它直接管理着计算机的硬件,合理组织计算机工作流程,并提高了硬件的利用率。
。
与其他系统软件的关系:
操作系统是系统软件,但它不同于其它系统软件和应用软件,它为其它系统软件和应用软件提供接口。
应用软件要使用操作系统所提供的服务方可方便使用计算机。
与用户之间的关系:
操作系统是为改善人机界面、提供各种服务,为用户使用计算机提供良好运行环境的一种系统软件。
3.试论述操作系统是建立在计算机硬件平台上的虚拟计算机系统。
答:
没有任何软件支持的计算机称为裸机,即使其硬件功能再强,也必定是难于使用的。
而实际呈现在用户面前的计算机系统是经过若干层软件改造的计算机。
裸机位于最里层,它的外面是操作系统,经过操作系统提供的资源管理功能和方便用户的各种服务功能,将裸机改造成功能更强、使用更方便的机器,通常把覆盖了软件的机器称为扩充机器,又称之为虚拟机(VirtualMachine),这样的计算机系统是概念上和逻辑上的计算机,不是物理上的真实计算机。
4.什么是操作系统?
它有哪些基本功能与基本特征?
答:
操作系统是位于硬件层之上,所有其它软件层之下的一种系统软件,它控制和管理计算机系统资源、合理组织计算机工作流程、提供用户与计算机系统之间的接口。
操作系统的基本功能有:
处理器管理、存储器管理、设备管理、文件管理和提供用户接口。
操作系统的基本特征有:
并发性、共享性、虚拟性和不确定性。
5.请叙述并发和并行两个概念的区别?
答:
并发性是指两个或多个程序在同一时间段内同时执行,是宏观上的同时。
而并行性是从硬件意义上考虑,是不同硬件部件(如CPU与I/O)在同一时刻的并行,即微观上,多个程序也是同时执行的。
6.什么是多道程序设计?
在操作系统中使用这种技术有什么好处?
答:
多道程序设计是指在计算机内存中同时存放若干道已开始运行尚未结束的程序,它们交替运行,共享系统中的各种硬、软件资源,从而使处理机得到充分利用。
好处:
①提高了CPU的利用率。
各道程序是轮流占用一个CPU,交替地执行。
②改进了系统的吞吐量(系统吞吐量是指计算机系统在单位时间内完成的总工作量)。
③充分发挥了系统的并行性,使CPU与I/O并行工作。
提高CPU、设备、内存等各种资源的利用率,从而提高系统效率。
7.什么是批处理、实时、分时系统?
它们各有什么特征?
各适用哪些场合?
答:
(1)批处理系统
"多道"是指在计算机内存中同时可以存放多道作业:
"批处理"是指用户与作业之间没有交互作用,用户不能直接控制作业的运行,一般称为"脱机操作.在多道批处理系统中,用户的作业可以随时被接受进入系统,首先存放在外存缓冲存储器中,形成一个作业队列,OS按照一定的调度原则或根据作业的优先程度从作业队列中调出一个或多个作业进入内存,待作业运行完毕,由用户索取运行结果。
多道批处理的特点是:
①多道。
②宏观上并行执行。
③微观上串行执行。
(2)分时系统
分时系统是指多个用户分享同一台计算机,它将计算机的中央处理机在时间上分割成很小的时间段,每个时间段称为一个时间片,系统将CPU的时间片轮流分配给多个用户,每个用户通过终端使用同一台计算机,并通过终端直接控制程序运行,进行人与机器之间的交互。
分时操作系统的特性:
①同时性(多路性)。
②独立性(独占性)。
③及时性。
④交互性
该系统主要用于教育与科研。
(3)实时系统
这类系统要求计算机能对外部发生的随机事件作出及时响应,并对它进行处理。
实时系统应当具有如下两个基本特征:
(1)实时性。
(2)高可靠性和安全性。
实时系统具有专用性,不同的实时系统用于不同的应用领域。
它有三种典型的应用形式,即:
过程控制系统(如工业生产自动控制、卫星发射自动控制)、信息查询系统(如仓库管理系统、图书资料查询系统)和事务处理系统(如飞机订票系统、银行管理系统)。
8.在分时系统中响应时间与哪些因素有关?
答:
主要与联机的终端数目、时间片的长短、CPU速度、系统调度切换速度等有关。
9.网络操作系统最基本的功能是什么?
它最使你感兴趣的是什么?
答:
网络通信和网络资源管理。
10.分布式操作系统与网络操作系统有什么不同之处?
答:
(1)分布性:
分布式操作系统是驻留在系统的各个结点上,而网络操作系统的控制功能大部分是集中在服务器上。
(2)并行性:
分布式操作系统可将一个用户的多个任务分配到多个计算机上并行执行;而网络环境下,每个用户的一个或多个任务只能在自己的计算机上处理。
(3)透明性:
分布式系统能隐藏自己内部的物理位置、并发控制、系统故障等实现细节来使用系统;而网络操作系统计算机之间的通信需要IP地址。
(4)共享性:
分布式系统中,所有分布在各个站点的软、硬件资源均可供系统中所有用户共享,并能以透明的方式使用它们;而网络操作系统共享的资源大多数是设置在服务器中,它机的资源一般由本机用户使用。
(5)健壮性:
分布式系统任何结点的故障都不会对系统造成太大的影响,某些部件的故障可以通过容错技术实现系统的重构;而网络操作系统的控制功能大部分集中在服务器中,这使得服务器会成为单点故障,它一出故障,就会影响整个系统的可靠性。
11.操作系统发展的动力是什么?
你对21世纪的操作系统有什么见解?
答:
(1)器件快速更新换代。
每隔18个月其性能要翻一翻。
(2)计算机体系结构不断发展。
计算机由单处理机系统改进为多处理机系统,操作系统也由单处理机操作系统发展到多处理机操作系统和并行操作系统。
(3)提高计算机系统资源利用率的需要。
多用户共享一套计算机系统的资源,必须提高计算机系统中各种资源的利用率,要不断研究和采用各种调度算法和分配策略。
(4)用户使用计算机方便程度的需要。
要求操作系统的界面变得更加友善。
(5)满足用户的新要求,提供给用户新服务。
12.计算机系统中“引导程序”的主要功能是什么?
答:
完成装入操作系统并开始执行系统。
主要完成工作是:
把标准设备的驱动程序从BIOS读入内存的固定位置,让所有的标准设备都能开始工作;运行自动检测程序,检测各种设备是否正常工作;读入256个中断处理服务程序。
13.简述主存储器与辅助存储器的作用和特点。
答:
主存储器的作用是存放指令和数据,并能由中央处理器直接访问的唯一存储空间,任何程序和数据都必须装入主存后才能执行。
内存是易失性存储设备,当掉电或有其它原因时会丢失所有内容。
辅助存储器用它来作为内存的扩充,并能够永久性地存储大量的数据。
14.双重工作模式的思想是什么?
为什么要这样设计?
答:
为保护操作系统和所有用户程序不受错误用户程序的影响,许多计算机系统提供用户模式和系统模式两种运行模式(两种执行状态)操作,并将指令系统分为特权指令和非特权指令。
只有操作系统才能执行全部指令(特权指令和非特权指令),而一般用户只能执行非特权指令,否则会导致非法执行特权指令而产生保护中断。
特权指令的规定既保障了系统的安全,也使得操作系统拥有了对计算机系统中所有软、硬件资源的控制权和管理特权。
15.陷入与中断之间的区别是什么?
各自有什么用途?
答:
陷入与中断之间的主要区别是:
陷入的中断源头来自CPU的内部,而中断的中断源头来自CPU外部。
中断的用途:
它能使CPU在运行过程中对外部事件发出的中断请求及时地进行处理,处理完成后又立即返回断点,继续进行CPU原来的工作。
陷入的用途是当程序出现错误(如某数除以0,或非法访问内存等)或用户程序执行非法操作可产生陷入,它属于软件生成中断。
16.系统调用的用途是什么?
它与过程调用的主要区别是什么?
答:
系统调用是操作系统为了扩充机器功能、增强系统能力、方便用户使用而建立的。
用户程序或其它系统程序通过系统调用就可以访问系统资源,调用操作系统功能,而不必了解操作系统内部结构和硬件细节,它是用户程序或其它系统程序获得操作系统服务的唯一接口。
系统调用与过程调用的主要区别是:
(1)调用形式不同;
(2)被调用代码的位置不同;
(3)提供方式不同;
(4)调用的实现不同
17.采用层次式结构设计操作系统的主要优点是什么?
答:
层次结构,即是把操作系统划分为内核和若干模块,这些模块按功能的调用次序排列成若干层次,各层次之间只能是单向依赖或单向调用关系,即低层为高层服务,高层可以调用低层的功能,反之则不能。
这样不但系统结构清晰,适应性强,易于扩充和移植,而且不构成循环调用。
18.采用微内核的方法设计操作系统的主要优点是什么?
答:
微内核方法是将操作系统所有非基本部分从内核中移走,仅存放那些能实现现代OS最基本的核心功能的部分,使得操作系统核心部分很小,这样可以提高了系统的可扩展性;增强了系统的可靠性,可移植性,提供了对分布式系统的支持。
Ⅱ单项选题
CCBCDBACCACB
DBBBBDBB
Ⅲ思考题
1.举例写出你最熟悉的操作系统的特征和缺点?
2.请在网上查询或查看有关书籍,列出目前经常使用哪些操作系统?
说明它们的应用对象和环境?
并比较这些操作系统各有什么特点?
练习题
(二)
Ⅰ问答题
1.什么是进程?
为什么要引入进程概念?
进程都有哪些特征?
答:
(1)进程是一个可并发执行的具有独立功能的程序关于某个数据集合的一次执行过程,也是操作系统进行资源分配和调度的独立单位。
(2)在多道程序环境下,程序的并发执行代替了程序的顺序执行,资源共享和竞争又导致并发程序之间的相互制约性,使得系统中运行的程序是处于走走停停的状态之中,当一个程序获得处理机后向前推进,当它需要某种资源而未得到时只好停下来,以后得到所申请资源时再继续前进。
基于“程序”这个静态概念已不能完整、有效地描述并发程序在内存中的运行状态。
因此,为了实现程序在多道程序环境下的并发执行,必须引入一个能确切描述并反映并发过程的新概念—进程,以便从变化的角度动态地研究程序的执行。
(3)进程的特征:
动态性、并发性、独立性、异步性、结构性。
2.叙述进程和程序的关系?
答:
进程与程序的联系是:
(1)进程包括一个程序;
(2)进程存在的目的就是执行这个程序。
进程与程序的区别是:
(1)进程是动态的概念,程序是静态的概念。
程序是指令代码的有序集合;进程是程序的一次执行过程,它能动态的被创建、调度执行,执行后消亡。
(2)进程是暂时的,程序是永久的。
进程是一个程序执行状态变化的过程,程序是可长久保存。
(3)进程是由程序、数据和进程控制块组成。
程序是由若干行代码组成。
(4)通过多次执行,一个程序可对应多个进程;通过调用关系,一个进程可包括多个程序。
(5)进程能够独立运行,可以为其独立分配资源,独立接受调度的单位,而程序不能在多道程序设计环境下运行。
3.叙述进程的并发性和制约性。
答:
并发性是进程的重要特征。
即多道程序中多个进程同时向前推进的过程,每个进程总是与其它进程并发地执行的。
进程的制约性是指一个进程的运行受到另一进程的制约(直接制约和间接制约)。
如进程在运行过程中,有的进程可能正在等待另一进程的计算结果而无法运行,或者进程所需的资源被别的进程占有而无法运行。
4.进程最少应设置几个状态?
为什么?
答:
一个进程在它的生命期中至少应有如下三种基本状态:
就绪、运行和阻塞。
这三种状态可以简单的描述每个进程的执行过程,进程任一时刻当且仅当处于上述三种基本状态之一。
5.进程控制块的作用是什么?
它是如何描述进程动态性质的?
答:
进程控制块是系统占用区中的一个连续区域,存放着操作系统用于描述进程情况和进程运行所需的全部信息,它是OS感知进程的存在,以及管理和控制进程执行的唯一依据。
每个进程在操作系统内用(PCB)来表示,在PCB中记录了与特定进程相关的信息,即描述进程当前情况,以及控制进程运行的全部信息。
它主要包含进程描述信息、控制信息和资源管理信息三类。
进程控制块中有一些信息是专门用来描述进程动态性质的,如进程状态信息,存放该进程的现行状态,是进程调度分配CPU的重要依据。
又如处理机现场信息,当执行进程变成其他状态让出处理机时,将处理机的现场信息如程序状态字、通用与专门寄存器、程序计数器等内容必须保留,以便当进程调度程序调度到相应进程时,从现场信息中取出恢复到CPU相关的寄存器中,让进程继续正常执行。
又如,进程在整个生命期中,经常处于不同的队列,那末PCB中进程队列链接字的内容,随进程控制块从一个队列移到另一个队列而动态变化。
6.用户进程能否修改或访问自己的进程控制块内容?
为什么?
答:
不能,因为进程控制块是操作系统中最重要的数据结构,只能由操作系统进行修改和访问。
7.什么是原语操作?
一般进程控制原语都有哪些?
答:
原语是由若干条机器指令构成的,在管态下执行和完成系统特定功能的程序段。
原语和机器指令类似,它在执行过程中不允许被中断,是一个不可分割的基本单位,原语的执行是顺序的而不可能是并发的。
进程控制原语有:
进程创建原语、进程撤销原语、进程阻塞原语、进程唤醒原语、进程挂起原语和进程激活原语。
8.试说明引起创建一个进程、撤销一个进程的主要事件?
答:
引起进程创建的主要事件有:
①用户登录。
用户登录时验证是否为合法的用户。
若合法,则为他创建一进程。
②作业调度。
当作业调度程序调度到某作业,应为它创建一进程。
③提供服务。
运行中的用户程序提出某种请求。
如父进程创建子进程。
引起进程撤消的主要事件有:
①正常结束。
当进程正常完成执行,应终止该进程,并将它删除。
②异常结束。
当进程执行中遇到越界错误、保护错、特权指令错、非法指令错、算术运算错、I/O故障等应终止该进程,并将它删除。
③外界干预。
操作员或操作系统干预。
9.请画出流程图说明创建一个新进程的步骤。
入口
答:
返回
创建失败,返回
查PCB链表
有空PCB?
取空PCB(i)
将有关参数填入PCB(i)相应表项
PCB(i)入就绪队列
PCB(i)入进程家族或进程链
无
有
10.操作系统内核都包括哪些内容?
答:
内核包括两个方面:
一是支撑功能,包括中断处理、时钟管理和原语操作等;二是资源管理功能,包括进程管理、存储器管理和设备管理等。
内核运行在系统态下,是系统的控制和协调中心,由它来组织、启动及协调系统中各种用户活动和系统活动有条不紊地进行。
11.模式切换和进程切换有什么区别?
答:
进程切换是由进程状态的变化引起的,而进程状态的变化又与出现的中断事件有关。
用户态到核心态或者核心态到用户态的转变是CPU模式的改变。
模式切换是用户态到核心态或核心态到用户态的转变。
12.操作系统中引入进程概念后,为什么又引入线程概念?
答:
操作系统中引入进程的目的是为了使多个程序并发执行,改善资源的利用率以提高系统的吞吐量。
但是,进程给并发程序设计效率带来下列问题:
进程切换开销大;进程通信代价大;进程之间的并发性粒度较粗,并发度不够高;不适合并行计算和分布并行计算的要求;不适合客户/服务器计算的要求等。
于是引入线程。
引入线程后,把进程的两个属性(“独立分配资源”与“被调度分派执行”)分离开来考虑,将进程是作为独立分配资源的基本单位,线程是进程的一个实体,是作为系统独立调度和分派处理机的基本单位,以使之轻装运行,而对于拥有资源的单位又不必频繁地进行切换。
这样可以大大减少程序并发执行时所付出的时间和空间开销,使操作系统具有更好的并发性。
13.试从资源分配单位和调度的基本单位两方面对进程和线程进行比较。
答:
资源分配单位:
进程是作为独立分配资源的基本单位,一般地说,线程自己不拥有系统资源(只有少量的必不可少的资源),但它可以访问其隶属进程的资源。
调度的基本单位:
线程作为系统独立调度和分派处理机的基本单位。
在同一个进程中,线程的切换不会引起进程的切换,只有当从一个进程中的线程切换到另一个进程中的线程时,才会引起进程的切换
14.请指出用户级线程和内核级线程的不同点?
答:
用户级线程只存在于用户层,它的管理都在一个进程的用户地址空间中进行,用户级线程的切换也仍在用户态下运行,不需要转换到核心态,这就节省了系统从核心态到用户态或从用户态到核心态转换的时间和空间的开销。
同一进程中多个线程不能真正并行。
内核级线程线程管理的所有工作都是由内核来完成的,同一进程内多个线程可以并行执行,即如果进程中的一个线程被阻塞,内核可以调度同一个进程中的另一个就绪线程执行。
在多处理机环境中,内核可以同时把同一个进程的多个线程分配到多个处理机上。
在同一个进程中把控制权从一个线程切换给另一个线程需要内核的状态转换(即用户态到核心态的转换),所以内核级线程的创建和管理通常要慢于用户级线程的创建和管理。
Ⅱ单项选择题
CDDCCDBCDC
CDDA
Ⅲ.思考题
1.考虑到图2.6中的状态转换图。
假设操作系统正在分派进程,有进程处于就绪状态和就绪挂起状态,并且至少有一个处于就绪挂起状态的进程比处于就绪状态的所有进程的优先级都高。
有两种极端的策略:
(1)总是分派一个处于就绪状态的进程,以减少交换;
(2)总是把机会给具有最高优先级的进程,即使会导致在不需要交换时进行交换。
请给出一种能均衡考虑优先级和性能的中间策略。
答:
对于一个就绪挂起态的进程,降低一定数量的优先级,从而保证只有当一个就绪挂起态的进程比就绪态的进程的最高优先级还高出几个优先级时,它才会被选做下一个执行。
2.举两个例子说明多线程比单线程方案提高性能,同时再举两个例子说明多线程不比单线程方案提高性能。
练习题(三)
I问答题
1.处理器调度分哪几种类型?
简述各类调度的主要任务。
答:
处理器调度分三级调度:
高级调度、中级调度和和低级调度。
高级调度主要功能是根据一定的算法,决定把外存上处于后备队列中的作业调入内存,并为它们创建进程和分配必要的资源,然后,再将新创建的进程插入到进程就绪队列中,准备执行。
在作业完成后负责回收该作业所使用的资源。
中级调度主要功能是在内存使用情况紧张时,将一些暂时不运行的进程从内存调出到外存上等待,当以后内存有足够的空闲空间时,再将适合的进程重新调入内存,等待进程调度。
低级调度其主要功能是按照一定的算法决定就绪队列中的哪个进程将获得处理机,然后由分派程序执行把处理机分配给该进程的操作。
2.叙述衡量一个处理器调度算法好坏的主要标准。
答:
(1)CPU利用率。
使得CPU尽可能的忙。
(2)吞吐率。
指一个时间单位内所完成的作业数量。
(3)周转时间。
用户作业从提交给系统开始,到作业完成中间的时间间隔称为作业周转时间,应使作业周转时间或平均作业周转时间尽可能短。
(4)等待时间。
指作业或进程从进入系统到被调度到并开始执行所经历的时间。
等待时间越短越好。
(5)响应时间。
交互式系统中定义进程从提交一个请求到产生响应所需的时间间隔称为响应时间。
分时系统要求用户的响应时间尽可能短,实时系统要求尽快处理实时任务。
(6)公平性。
确保每个用户的每个进程获得合理的CPU份额或其它资源份额,不会出现饿死情况。
上述这些指标不是所有操作系统在设计时都要达到最优,而必须根据操作系统类型的不同进行权衡,以达到较好的效果。
一般人们需要使CPU使用率和吞吐量最大化,而使周转时间、等待时间和响应时间最小化。
3.简述作业状态及其转换过程。
答:
通常把作业在系统中的状态分为四种:
提交、后备、执行和完成。
批处理系统中作业的状态及其转换如下图所示。
(1)提交状态。
此时作业的信息正在从输入设备上预输入。
(2)后备状态。
此时作业预输入结束放在辅存中,但尚未被选中执行。
(3)执行状态。
作业已被选中进入主存,并构成进程去竞争处理器资源已获得运行。
(4)完成状态。
作业已经运行结束(正常或非正常结束),甚至已经撤离,但正在等待缓输出运行结果。
4.叙述作业、进程和程序三者的关系。
答:
程序、进程、作业之间的区别与联系
程序与进程之间的区别:
(1)进程更能真实地描述并发,而程序不能。
(2)进程由程序和数据两部分组成,进程是竞争计算机系统有限资源的基本单位,也是进程处理机调度的基本单位。
(3)程序是静态的概念;进程是程序在处理机上一次执行的过程,是动态的概念。
(4)进程有生存周期,有诞生有消亡。
是短暂的;而程序是相对长久的。
(5)一个程序可以作为多个进程的运行程序;一个进程也可以运行多个程序。
(6)进程具有创建其他进程的功能;而程序没有。
作业与进程的区别:
一个进程是一个程序对某个数据集的执行过程,是分配资源的基本单位。
作业是用户需要计算机完成的某项任务,是要求计算机所做工作的集合。
一个作业的完成要经过作业提交、作业收容、作业执行和作业完成4个阶段。
而进程是对已提交完毕的程序所执行过程的描述,是资源分配的基本单位。
作业、进程和程序之间的联系:
一个作业通常包括程序、数据和操作说明书3部分。
每一个进程由PCB、程序和数据集合组成。
这说明程序是进程的一部分,是进程的实体。
因此,一个作业可划分为若干个进程来完成,而每一个进程有其实体—程序和数据集合。
5.何谓响应比最高优先算法?
它有何主要特点?
答:
响应比最高者优先算法是既要考虑作业的等待时间,又要考虑作业的运行时间,是介于先来先服务算法和最短作业优先算法之间的一种折衷策略。
该算法把作业进入系统后的等待时间与估计作业运行时间之和称为作业的响应时间,作业的响应时间除以作业运行时间称为作业响应比,作业响应比Rp定义为:
Rp=
=
=1+
6.何谓进程调度中“可抢占”和“非抢占”两种方式?
哪一种系统的开销更大?
为什么?
答:
因为“可抢占”的进程调度方式是一个进程能把处理机资源从正在运行的进程哪里抢占过来。
它的优点是能保证系统当前运行的进程是所有进程中优先级最高的进程。
但由于在处理机调度过程中,处理机资源的交换比较频繁,所以引起的系统开销比较大。
这也是可抢占调度方法的一大缺点。
7.进程调度功能有哪些?
进程调度的时机有哪几种?
答:
进程调度的功能是:
记录进程的运行状况;根据一定调度算法从就绪队列中选择一个进程投入运行(处理机的分配);进行进程的上下文切换。
进程调度时机:
当发生下述几种情况之一时,引起进程重新调度:
(1)当一个进程从运行状态转换到阻塞状态
(2)当一个进程从运行状态转换到就绪状态
(3)当一个进程从阻塞状态转换到就绪状态。
(4)当一个进程终止时。
8.试比较进程调度与作业调度的不同点。
答:
作业调度程序的主要功能是审查系统是否能满足用户作业的资源要求以及按照一定的算法来选取作业,为该作业创建一进程。
进程调度主要功能是根据一定的算法将cpu分派给就绪队列中的一个进程。
进程调度是操作系统中最基本的一种调度,其调度策略的优劣直接影响整个系统的性能。
9.假定有一个支持实时、分时和批处理的操作系统,对该系统应如何设计进程调度策略?
答:
调度算法:
在操作系统中调度是指一种自远方分配,因而调度算法是指:
根据系统的资源分配策略所规定的资源分配算法。
对于不同的的系统和系统目标,通常采用不同的调度算法,例如,在批处理系统中,为了照顾为数众多的段作业,应采用短作业优先的调度算法;又如在分时系统中,为了保证系统具有合理的响应时间,应当采用轮转法进行调度;又如在实时系统中最好采用基于优先级的抢先式调度策略。
对于一个支持实时、分时和批处