操作系统第三章
- 格式:docx
- 大小:24.14 KB
- 文档页数:20
计算机操作系统第三章1.⾼级调度与低级调度的主要任务是什么?为什么要引⼊中级调度?⾼级调度主要功能是根据某种算法,决定将外存上处于后备队列中的哪⼏个作业调⼊内存,为它们创建进程,分配必要的资源,并将它们放⼊就绪队列。
低级调度主要功能是根据某种算法,决定就绪队列中的哪个进程应获得处理机,并由分派程序将处理机分配给被选中的进程。
引⼊中级调度的主要⽬的是,提⾼内存利⽤率和系统吞吐量。
使那些暂时不能运⾏的进程不再占⽤内存资源,将它们调⾄外存等待,把进程状态改为就绪驻外存状态或挂起状态。
2.处理机调度算法的共同⽬标是什么?批处理系统的调度⽬标⼜是什么?共同⽬标:资源利⽤率,公平性,平衡性,策略强制执⾏。
批处理系统的调度⽬标:平均周转时间短,系统吞吐量⾼,处理机利⽤率⾼。
3.何谓作业、作业步和作业流?作业:作业是⼀个⽐程序更为⼴泛的概念,它不仅包含了通常的程序和数据,⽽且还应配有⼀份作业说明书,系统根据该说明书来对程序的运⾏进⾏控制。
在批处理系统中,是以作业为基本单位从外存调⼊内存的。
作业步:通常,在作业运⾏期间,每个作业都必须经过若⼲个相对独⽴⼜相互关联的顺序加⼯步骤才能得到结果。
我们把其中的每⼀个加⼯步骤称为⼀个作业步。
各作业步之间存在着相互联系,往往是上⼀个作业步的输出作为下⼀个作业步的输⼊。
作业流:是指若⼲个作业进⼊系统后依次存放在外存上形成的输⼊作业流,在操作系统的控制下,逐个作业进程处理,于是形成了处理作业流。
4.在什么情况下需要使⽤作业控制块JCB,其中包含了哪些内容?每当⼀个作业进⼊系统时,便由“作业注册”程序为该作业建⽴⼀个作业控制块JCB。
再根据作业类型,将它放到相应的作业后背队列中等待调度。
通常在JCB中包含的内容有:作业标识、⽤户名称、⽤户账户、作业类型(CPU繁忙型、I/O繁忙型、批量型、终端型)、作业状态、调度信息(优先级、作业运⾏时间)、资源请求(预计运⾏时间、要求内存⼤⼩等)、资源使⽤情况等。
第三章一、问答题1、用户级线程与内核级线程的区别是什么?2、PCB 中包含哪些信息?进程状态属于哪类信息?3、什么是操作系统的内核?4、简述时间片轮转调度算法的基本思想。
5、某系统采用时间片轮转调度算法的处理机调度算法,某个时刻根据用户要求创建了一个进程P,进程P 在其存在过程中依次经历了:进程调度选中了进程P 占用处理机运行,进程P 运行中提出资源申请,要求增加内存使用量,没有得到;进程等待一段时间后得到内存;进程调度再次选中了进程P 占用处理机运行;进程P 的时间片到;一段时间后,进程P 再次占用处理机;有紧急进程Q 进入,系统停止进程P 的运行,将处理机分配进程Q;进程Q 运行完,进程调度再次选中了进程P 占用处理机运行;进程P 运行完。
请分析进程P 在其整个生命过程中的状态变化。
进程调度选中了进程P 占用处理机运行(就绪→运行),进程P 运行中提出资源申请,要求增加内存使用量,没有得到(运行→阻塞);进程等待一段时间后得到内存(阻塞→就绪);进程调度再次选中了进程P 占用处理机运行(就绪→运行);进程P 的时间片到(运行→就绪);一段时间后,进程P 再次占用处理机(就绪→运行);有紧急进程Q 进入,系统停止进程P 的运行,将处理机分配进程Q(运行→就绪);进程Q 运行完,进程调度再次选中了进程P 占用处理机运行(就绪→运行);进程P 运行完。
请分析进程P 在其整个生命过程中的状态变化。
6、试比较进程与程序的异同。
7、引起创建进程的事件通常有哪些?简述进程的创建过程。
8、简述进程的阻塞过程。
910、进程控制块的作用是什么?它主要包括哪几部分内容?11、简述操作系统的三级调度。
12、为什么要了解进程间的家族关系?因为父进程和子进程之间是隶属关系,子进程可以继承使用父进程的资源;如果父进程被撤销,还应撤销其所有的子孙进程。
13、什么是进程?。
14、试比较进程和线程的区别。
15、简述进程的基本状态,画出其状态转换图。
第3章进程描述和控制复习题:什么是指令跟踪?答:指令跟踪是指为该进程而执行的指令序列。
通常那些事件会导致创建一个进程?答:新的批处理作业;交互登录;操作系统因为提供一项服务而创建;由现有的进程派生。
(详情请参考表3.1)对于图3.6中的进程模型,请简单定义每个状态。
答:运行态:该进程正在执行。
就绪态:进程做好了准备,只要有机会就开始执行。
阻塞态:进程在某些事件发生前不能执行,如I/O操作完成。
新建态:刚刚创建的进程,操作系统还没有把它加入到可执行进程组中。
退出态:操作系统从可执行进程组中释放出的进程,或者是因为它自身停止了,或者是因为某种原因被取消。
抢占一个进程是什么意思?答:处理器为了执行另外的进程而终止当前正在执行的进程,这就叫进程抢占。
什么是交换,其目的是什么?答:交换是指把主存中某个进程的一部分或者全部内容转移到磁盘。
当主存中没有处于就绪态的进程时,操作系统就把一个阻塞的进程换出到磁盘中的挂起队列,从而使另一个进程可以进入主存执行。
为什么图3.9(b)中有两个阻塞态?答:有两个独立的概念:进程是否在等待一个事件(阻塞与否)以及进程是否已经被换出主存(挂起与否)。
为适应这种2*2的组合,需要两个阻塞态和两个挂起态。
列出挂起态进程的4个特点。
答:1.进程不能立即执行。
2.进程可能是或不是正在等待一个事件。
如果是,阻塞条件不依赖于挂起条件,阻塞事件的发生不会使进程立即被执行。
3.为了阻止进程执行,可以通过代理把这个进程置于挂起态,代理可以是进程自己,也可以是父进程或操作系统。
4.除非代理显式地命令系统进行状态转换,否则进程无法从这个状态中转移。
对于哪类实体,操作系统为了管理它而维护其信息表?答:内存、I/O、文件和进程。
列出进程控制块中的三类信息。
答:进程标识,处理器状态信息,进程控制信息。
为什么需要两种模式(用户模式和内核模式)?答:用户模式下可以执行的指令和访问的内存区域都受到限制。
这是为了防止操作系统受到破坏或者修改。
第三章处理机调度与死锁1,高级调度与低级调度的主要任务是什么?为什么要引入中级调度?【解】(1)高级调度主要任务是用于决定把外存上处于后备队列中的那些作业调入内存,并为它们创建进程,分配必要的资源,然后再将新创建的进程排在就绪队列上,准备执行。
(2)低级调度主要任务是决定就绪队列中的哪个进程将获得处理机,然后由分派程序执行把处理机分配给该进程的操作。
(3)引入中级调度的主要目的是为了提高内存的利用率和系统吞吐量。
为此,应使那些暂时不能运行的进程不再占用宝贵的内存空间,而将它们调至外存上去等待,称此时的进程状态为就绪驻外存状态或挂起状态。
当这些进程重又具备运行条件,且内存又稍有空闲时,由中级调度决定,将外存上的那些重又具备运行条件的就绪进程重新调入内存,并修改其状态为就绪状态,挂在就绪队列上,等待进程调度。
3、何谓作业、作业步和作业流?【解】作业包含通常的程序和数据,还配有作业说明书。
系统根据该说明书对程序的运行进行控制。
批处理系统中是以作业为基本单位从外存调入内存。
作业步是指每个作业运行期间都必须经过若干个相对独立相互关联的顺序加工的步骤。
作业流是指若干个作业进入系统后依次存放在外存上形成的输入作业流;在操作系统的控制下,逐个作业进程处理,于是形成了处理作业流。
4、在什么情冴下需要使用作业控制块J CB?其中包含了哪些内容?【解】每当作业进入系统时,系统便为每个作业建立一个作业控制块JCB,根据作业类型将它插入到相应的后备队列中。
JCB 包含的内容通常有:1) 作业标识2)用户名称3)用户账户4)作业类型(CPU繁忙型、I/O芳名型、批量型、终端型)5)作业状态6)调度信息(优先级、作业已运行)7)资源要求8)进入系统时间9) 开始处理时间10) 作业完成时间11) 作业退出时间12) 资源使用情况等5.在作业调度中应如何确定接纳多少个作业和接纳哪些作业?【解】作业调度每次接纳进入内存的作业数,取决于多道程序度。
操作系统3.1操作系统概述操作系统是最基本,最主要的系统软件,协助计算机完成基本的硬件操作,同时也和外面一层的应用软件进行交互,完成一系列的应用任务。
操作系统是计算机硬件与其他软件的接口,也是用户和计算机的接口是计算机系统中发生的所有活动的总控制器,而且是决定计算机兼容性和平台的因素之一。
操作系统能做什么?提供了运行软件和控制外设的环境。
操作系统处理多进程,管理进程的方式有多任务、多线程以及多重处理。
多任务允许多个任务、作业、程序同时运行。
多线程允许多个部分或线程同时运行。
多重处理能力将任务平均分配给所有处理单元。
3.2操作系统的分类用户界面类型划分:①命令行界面的操作系统②图形用户界面(GUI graphical user interface)按操作系统的使用对象来分①桌面操作系统(客户端操作系统或个人操作系统):是专门为单用户微机设计的②服务器操作系统(网络操作系统)是专门为网络中作为服务器的计算机设计使用的,用来管理分布式网络、电子邮件服务器和虚拟主机托管网站的工具。
Mac OS X server ③嵌入式操作系统,是一种支持嵌入式系统应用的操作系统软件。
它把操作系统嵌入到电子设备中,以控制设备的运转。
在系统的实用性、硬件的相关依赖性、软件的固化以及专用性方面具有突出的特点。
a.面向控制、通信等领域的实时操作系统b.面向消费电子产品的非实时操作系统(PDA,机顶盒)④手持操作系统(移动操作系统)为智能手机和平板电脑这样的设备设计的。
⑤单用户操作系统(Single-user operating system)DOS⑥多用户操作系统(Multiuser operating system)IBM的z/OS就是最常见的多用户操作系统之一。
常用计算机操作系统,《计算机文化》p127-137操作系统的大部分内容都存储在硬盘上。
在引导过程中,操作系统内核(提供的是操作系统中非常重要的服务,如内存管理和文件访问)会加载到内存中。
第三章死锁作业答案1,3,9,11,13,14, 161.什么是死锁?试举出一个生活中发生死锁的例子。
参考答案:所谓死锁,是指在一个进程集合中的每个进程都在等待仅由该集合中的另一个进程才能引发的事件而无限期地僵持下去的局面。
(也可以是:多个进程因竞争资源而造成的一种僵局,若无外力作用这些进程都将永远不能再向前推进。
)举例:1)书中例子“两辆汽车过窄桥发生冲突”2)公共汽车到站,车上的人要下车,车下的人要上车,挤在车门口。
结果是车上的人下不来,车下的人上不去。
3. 发生死锁的四个必要条件是什么?参考答案:发生死锁的四个必要条件是:互斥条件、占有且等待条件、不可抢占条件和循环等待条件。
9. 设想有一条带闸门的运河,其上有两座吊桥,它们在一条公路上,运河和公路的交通都是单方向的。
河上的交通工具是轮船。
当轮船距A桥100m时就鸣笛警告,若桥上无车辆,吊桥就吊起,直至轮船尾部过桥为止。
对吊桥B也做同样处理。
设轮船的长度为200m。
车辆和轮船任意前进时,是否会发生死锁?若会,说明理由。
怎样发现?并请提出一种防止死锁的办法。
参考答案:会产生死锁。
当轮船距A桥100m时鸣笛警告,此时若桥上无车辆,吊桥就吊起,但是B桥上有车辆,而且由于A桥吊起,车辆无法前进,B桥上的车辆无法下桥。
于是,轮船和车辆都不能前进,造成死锁现象。
一种防止死锁的办法是:当轮船距A桥100m时就鸣笛警告,车辆不能再上B桥。
当B桥上无车辆时,就吊起B 桥;然后,当A桥上无车辆,则吊起A桥。
轮船通过A桥和B桥后,两个吊桥放下,车辆可以通行。
(该方法相当于资源有序分配,也可以采用资源预分配策略,即同时吊起A、B两桥的方法,资源利用率相对较低。
)11. 死锁和“饥饿”之间的主要差别是什么?参考答案:①处于死锁状态的进程都占有一定的资源,而处于饥饿状态的进程永远都得不到所申请的资源②死锁是一种僵局,在无外力干预下,处于死锁状态的全部进程都不能前进,即它们都处于阻塞态,可能造成整个系统瘫痪;而出现饥饿时系统照常运行,只是某个或某几个进程永远也不能得到所需的全部服务③造成死锁的根本原因是资源有限且使用不当;而造成饥饿的原因是资源分配策略或调度策略不合适,如果采用先来先服务的资源分配策略就可以避免饥饿。
第三章处理机调度与死锁1. 高级调度与低级调度的主要任务是什么?为什么要引入中级调度?高级调度的主要任务:用于决定把外存上处于后备队列中的哪些作业调入内存,并为它们创建进程,分配必要的资源,然后,再将新创建的进程插入就绪队列上,准备执行。
低级调度的主要任务:用于决定就绪队列中的哪个进程应获得处理机,然后再由分派程序执行将处理机分配给该进程的具体操作。
引入中级调度的主要目的:是为了提高系统资源的利用率和系统吞吐量。
10. 试比较FCFS和SPF两种进程调度算法相同点:两种调度算法都是既可用于作业调度,也可用于进程调度;不同点:FCFS调度算法每次调度都是从后备队列中选择一个或是多个最先进入该队列的作业,将它们调入内存,为它们分配资源,创建进程,然后插入到就绪队列中。
该算法有利于长作业/进程,不利于短作业/进程。
SPF调度算法每次调度都是从后备队列中选择一个或若干个估计运行时间最短的作业,将它们调入内存中运行。
该算法有利于短作业/进程,不利于长作业/进程。
15. 按调度方式可将实时调度算法分为哪几种?按调度方式不同,可分为非抢占调度算法和抢占调度算法两种。
18. 何谓死锁?产生死锁的原因和必要条件是什么?a.死锁是指多个进程因竞争资源而造成的一种僵局,若无外力作用,这些进程都将永远不能再向前推进;b.产生死锁的原因有二,一是竞争资源,二是进程推进顺序非法;c.必要条件是: 互斥条件,请求和保持条件,不剥夺条件和环路等待条件。
19.在解决死锁问题的几个方法中,哪种方法最易于实现?哪种方法是资源利用率最高?解决/处理死锁的方法有预防死锁、避免死锁、检测和解除死锁,其中预防死锁方法最容易实现,但由于所施加的限制条件过于严格,会导致系统资源利用率和系统吞吐量降低;而检测和解除死锁方法可是系统获得较好的资源利用率和系统吞吐量。
20. 请详细说明可通过哪些途径预防死锁?a.摒弃"请求和保持"条件:系统规定所有进程开始运行之前,都必须一次性地申请其在整个运行过程所需的全部资源,但在分配资源时,只要有一种资源不能满足某进程的要求,即使其它所需的各资源都空闲,也不分配给该进程,而让该进程等待;b.摒弃"不剥夺"条件:系统规定,进程是逐个地提出对资源的要求的。
操作系统第三章—.单选题1在三种基本类型的操作系统中,都设置(进程调度),在批处理系统中还应设置()oA、⑴剥夺进度B、(2)作业调度C、(3)进程调度D、(4)中级调度E、(5)多处理机调度正确答案:B2在三种基本类型的操作系统中,都设置(进程调度),在批处理系统中还应设置(作业调度);在分时系统中除了(进程调度)以外,通常还设置了()oA、⑴剥夺进度B、(2)作业调度C、(3)进程调度D、(4)中级调度E、(5)多处理机调度正确答案:D3在三种基本类型的操作系统中,都设置(进程调度),在批处理系统中还应设置(作业调度);在分时系统中除了(进程调度)以外:通常还设置了(中级调度),在多处理机系统中还需设置()oA、(1)剥夺进度B、(2)作业调度C、(3)进程调度D、(4)中级调度E、(5)多处理机调度正确答案:E4在面向用户的调度准则中,()是选择实时调度算法的重要准则。
A、⑴响应时间快B、(2)平均周转时间短C、(3)截止时间的保证D、(4)优先权高的作业能获得优先服务E、⑸服务费低正确答案:C5在面向用户的调度准则中,()是选择分时系统中进程调度算法的重要准则。
A、⑴响应时间快B、(2)平均周转时间短C、(3)截止时间的保证D、(4)优先权高的作业能获得优先服务E、(5)服务费低正确答案:A6在面向用户的调度准则中()是批处理系统中选择作业调度算法的重要准则。
A、⑴响应时间快B、(2)平均周转时间短C、(3)截止时间的保证D、(4)优先权高的作业能获得优先服务E、⑸服务费低正确答案:B7在面向用户的调度准则中,()准则则是为了照顾紧急作业用户的要求而设置的。
A、⑴响应时间快B、(2)平均周转时间短C、(3)截止时间的保证D、(4)优先权高的作业能获得优先服务E、⑸服务费低正确答案:D8作业调度是从处于()状态的队列中选取投入运行。
A、⑴运行B、⑵后备C、⑶提交D、⑷完成E、⑸阻塞F、(6)就绪正确答案:B9()是指作业进入系统到作业完成所经过的时间间隔。