操作系统第二版罗宇 课后答案
实用操作系统教程【第2版】课后习题参考答案

习题 1 操作系统概述一、选择题题号 1 2 3 4 5 6 7 8 9 10 答案 B D C D C D A C D D题号11 12 13 14 15 16 17 18 19 20 答案 B C C C B D B B B A二、综合题1、答:并发性和并行性是既相似又有区别的两个概念。
并行性是指两个或多个事件在同一时刻发生;而并发性是指两个或多个事件在同一时间间隔内发生。
、在单处理器系统中只有一条指令流水线,一个多功能的操作部件,某时刻处理机只能执行一个进程,进程与进程之间不能并行执行,只能并发执行。
但在各种I/O控制技术的帮助下,处理机、通道和设备之间都能进行并发。
(1)处理机和设备之间的并行,能够发生。
(2)处理机和通道之间的并行,能够发生。
(3)通道和通道之间的并行,能够发生。
(4)设备和设备之间的并行,能够发生。
2、答:以多道程序技术为基础的现代操作系统具有4个基本特征:(1)并发性:多个程序并发执行,宏观并行,微观串行。
(2)共享性:多个程序共享系统中的所有资源(3)虚拟性:操作系统为每个进程都虚拟出了一整套其所需的软硬件资源,让进程所属的用户感觉到自己独占整个系统。
操作系统通过进程状态转换实现虚拟性。
当进程被切换出去运行态时,它的运行环境被操作系统保存,当把再次被调度程序选中切换到运行态时恢复其运行环境继续上次运行状态继续运行。
(4)异步性:并发执行的各个进程之间运行时间、运行顺序具有不确定性,即异步性,程序执行已经失去的封闭性和可再现性。
操作系统通过同步机制保证多个进程能够正确的执行。
3、答:多道程序设计技术是指同时把多个程序放入内存并允许交替执行和共享系统中的各类资源,当一个程序因某种原因(如I/O请求)而暂停执行时,CPU立即转去执行另一个程序。
操作系统在引入多道程序设计技术后,使得系统内有了多个程序(进程),它们宏观上看同时执行,微观上看仍然是串行。
多道程序设计技术的优点:多道程序交替穿插执行,提高了CPU、内存和I/O设备的利用率;在保持CPU、I/O设备不断工作的同时,导致系统吞吐量的上升。
操作系统第二版课后习题答案

操作系统第二版课后习题答案操作系统第二版课后习题答案操作系统是计算机科学中的重要领域,它负责管理计算机硬件和软件资源,为用户提供良好的使用体验。
在学习操作系统的过程中,课后习题是巩固和深化知识的重要方式。
本文将为大家提供操作系统第二版课后习题的答案,帮助读者更好地理解和掌握操作系统的知识。
第一章:引论1. 操作系统的主要功能包括进程管理、内存管理、文件系统管理和设备管理。
2. 进程是指正在执行的程序的实例。
进程控制块(PCB)是操作系统用来管理进程的数据结构,包含进程的状态、程序计数器、寄存器等信息。
3. 多道程序设计是指在内存中同时存放多个程序,通过时间片轮转等调度算法,使得多个程序交替执行。
4. 异步输入输出是指程序执行期间,可以进行输入输出操作,而不需要等待输入输出完成。
第二章:进程管理1. 进程调度的目标包括提高系统吞吐量、减少响应时间、提高公平性等。
2. 进程调度算法包括先来先服务(FCFS)、最短作业优先(SJF)、优先级调度、时间片轮转等。
3. 饥饿是指某个进程长时间得不到执行的情况,可以通过调整优先级或引入抢占机制来解决。
4. 死锁是指多个进程因为争夺资源而陷入无限等待的状态,可以通过资源预分配、避免环路等方式来避免死锁。
第三章:内存管理1. 内存管理的主要任务包括内存分配、内存保护、地址转换等。
2. 连续内存分配包括固定分区分配、可变分区分配和动态分区分配。
3. 分页和分段是常见的非连续内存分配方式,分页将进程的地址空间划分为固定大小的页,分段将进程的地址空间划分为逻辑段。
4. 页面置换算法包括最佳置换算法、先进先出(FIFO)算法、最近最久未使用(LRU)算法等。
第四章:文件系统管理1. 文件是操作系统中用来存储和组织数据的逻辑单位,可以是文本文件、图像文件、音频文件等。
2. 文件系统的主要功能包括文件的创建、删除、读取、写入等操作。
3. 文件系统的组织方式包括层次目录结构、索引结构、位图结构等。
linux操作系统第二版答案

l i n u x操作系统第二版答案(总24页)--本页仅作为文档封面,使用时请直接删除即可----内页可以根据需求调整合适字体及大小--linux操作系统第二版答案【篇一:linux系统教程课后习题答案】t>1.什么是linuxlinux是一套免费使用和自由传播的类unix操作系统,源代码开放,能运行于各类硬件平台,包括intel x86系列和risc处理器。
这个系统是由世界各地成千上万的程序员设计和实现的。
其目的是建立不受任何商品化软件的版权制约的、全世界都能自由使用的unix兼容产品。
2. linux有哪些特性(1)开放性(2)多用户(3)多任务(4)良好的用户界面(5)设备独立性(6)丰富的网络功能(7)可靠的系统安全(8)良好的可移植性3. linux与windows操作系统的主要区别是什么(1)从发展的背景看,linux是从一个比较成熟的操作系统发展而来的,而其他操作系统,如windows等,都是自成体系,无对应的相依托的操作系统(2)从使用费用上看,linux是一种开放、免费的操作系统,windows是封闭的系统,需要有偿使用。
(3)linux上丰富的应用软件也是自由的,而在windows下,几乎所有的软件都有独立的版权,需要购买使用,即使某些软件可以免费使用,也一般不提供其源代码,更不用说由用户修改扩充其功能了。
(4)windows对硬件配置要求高,而linux在低端pc系统上仍然可以流畅运行4. linux与unix的共同点与不同点是什么共同点:由于linux是从unix发展来到,它遵循unix开放标准,基本支持同样的软件、程序设计环境和网络特性,可以说linux是unix的pc版本,linux在pc机上提供了相当于unix工作站的性能。
与商用unix的不同点有:1)linux是免费软件,用户可以从网上下载,而商用的unix除了软件本身的价格外,用户还需支付文档、售后服务费用;2)linux拥有gnu软件支持,linux能够运行gnu 计划的大量免费软件,这些软件包括应用程序开发、文字处理、游戏等方面的内容;3)linux的开发是开放的,任何志愿者都可以对开发过程做出贡献;而商用unix则是由专门的软件公司进行开发的。
操作系统课后答案详细讲解

操作系统课后答案详细讲解第一章操作系统引论思量与练习题1.什么是操作系统?它的主要功能是什么?2.什么是多道程序设计技术?多道程序设计技术的主要特点是什么?3.批处理系统是怎样的一种操作系统?它的特点是什么?4.什么是分时系统?什么是实时系统?试从交互性,准时性,自立性,多路性,牢靠性等几个方面比较分时系统和实施系统。
5.实时系统分为哪俩种类型?6.操作系统主要特征是什么?7.操作系统也用户的接口有几种?它们各自用在什么场合?8.“操作系统是控制硬件的软件”这一说法确切吗?为什么?9.设存中有三道程序,A,B,C,它们按A~B~C的先后挨次执行,它们举行“计算”和“I/o操作”的时光如表1-2所示,假设三道程序使用相同的I/O设备。
(1)试画出单道运行时三道程序的时光关系图,并计算完成三道程序要花多少时光。
(2)试画出多道运行时三道程序的时光关系图,并计算完成三道程序要花多少时光。
10.将下列左右两列词衔接起来形成意义最恰当的5对。
DOS 网络操作系统OS/2 自由软件UNIX 多任务Linux 单任务Windows NT 为开发操作系统而设计C语言11.挑选一个现代操作系统,查找和阅读相关的技术资料,写一篇关于操作系统如何举行存管理、存储管理、设备管理和文件管理的文章。
答案1.答:操作系统是控制和管理计算机的软、硬件资源,合理地组织计算机的工作流程,以便利用户使用的程序集合。
2.答:把多个自立的程序同时放入存,使她们分享系统中的资源。
1)多道,即计算机存中同时放多道互相自立的程序。
2)宏观上并行,是指共识进入系统的多道程序都处于运行过程。
3)微观上串行,是指在单道处理机环境下,存中的多道程序轮番地占有CPU,交替执行。
3.答:批处理操作系统是一种基本的操作系统类型。
在该系统中用户的作业被成批地输入到计算机中,然后在操作系统的控制下,用户的作业自动的执行。
特点是:资源利用率高。
系统吞吐量大。
平均周转时光长。
操作系统(第二版)习题答案

第1章一、填空1.计算机由硬件系统和软件系统两个部分组成,它们构成了一个完整的计算机系统。
2.按功能划分,软件可分为系统软件和应用软件两种。
3.操作系统是在裸机上加载的第一层软件,是对计算机硬件系统功能的首次扩充。
4.操作系统的基本功能是处理机(包含作业)管理、存储管理、设备管理和文件管理。
5.在分时和批处理系统结合的操作系统中引入“前台”和“后台”作业的概念,其目的是改善系统功能,提高处理能力。
6.分时系统的主要特征为多路性、交互性、独立性和及时性。
7.实时系统与分时以及批处理系统的主要区别是高及时性和高可靠性。
8.若一个操作系统具有很强的交互性,可同时供多个用户使用,则是分时操作系统。
9.如果一个操作系统在用户提交作业后,不提供交互能力,只追求计算机资源的利用率、大吞吐量和作业流程的自动化,则属于批处理操作系统。
10.采用多道程序设计技术,能充分发挥CPU 和外部设备并行工作的能力。
二、选择1.操作系统是一种B 。
A.通用软件B.系统软件C.应用软件D.软件包2.操作系统是对C 进行管理的软件。
A系统软件B.系统硬件C.计算机资源D.应用程序3.操作系统中采用多道程序设计技术,以提高CPU和外部设备的A 。
A.利用率B.可靠性C.稳定性D.兼容性4.计算机系统中配置操作系统的目的是提高计算机的B 和方便用户使用。
A.速度B.利用率C.灵活性D.兼容性5.C 操作系统允许多个用户在其终端上同时交互地使用计算机。
A.批处理B.实时C.分时D.多道批处理6.如果分时系统的时间片一定,那么D ,响应时间越长。
A.用户数越少B.内存越少C.内存越多D.用户数越多三、问答1.什么是“多道程序设计”技术?它对操作系统的形成起到什么作用?答:所谓“多道程序设计”技术,即是通过软件的手段,允许在计算机内存中同时存放几道相互独立的作业程序,让它们对系统中的资源进行“共享”和“竞争”,以使系统中的各种资源尽可能地满负荷工作,从而提高整个计算机系统的使用效率。
操作系统(第二版)课后习题答案

故需要一次间接寻址,就可读出该数据
如果要求读入从文件首到263168Byte处的数据(包括这个数据),读岀过程:首先根据直接寻
址读出前10块;读出一次间接索引指示的索引块1块;将索引下标从0〜247对应的数据块全部 读入。即可。共读盘块数10+1+248=259块
3.某文件系统采用索引文件结构,设文件索引表的每个表目占用3Byte,存放盘块的块号,盘块 的大小为512Byte。此文件系统采用直接、一次间接、二次间接、三次间接索引所能管理的最大
(1)|100-8|+|18-8|+|27-18|+|129-27|+|110-129|+|186-110|+|78-186|+|147-78|+|41-147|+ |10-47|+|64-10|+|12-64|=728
8:00
10:00
120mi n
1
2
8:50
50min
10:00
10:50
120mi n
3
9:00
10mi n
10:50
11:00
120mi n
12
4
9:50
20mi n
11:00
11:20
90mi n
平均周转时间T=,平均带权周转时间W=
②SJF短作业优先法)
作业
到达时间
运行时间
开始时间
完成时间
周转时间
页面长度为4KB,虚地址空间共有土)个页面
3.某计算机系统提供24位虚存空间,主存空间为218Byte,采用请求分页虚拟存储管理,页面尺
寸为1KB。假定应用程序产生虚拟地址(八进制),而此页面分得的块号为100(八进制),说明
计算机操作系统第二版答案

计算机操作系统第二版答案习题一1. 1. 什么是操作系统?它的主要功能是什么?什么是操作系统?它的主要功能是什么?答:操作系统是用来管理计算机系统的软、硬件资源,合理地组织计算机的工作流程,以方便用户使用的程序集合;其主要功能有进程管理、存储器管理、设备管理和文件管理功能。
管理功能。
2. 2. 2. 什么是多道程序设计技术?多道程序设计技什么是多道程序设计技术?多道程序设计技术的主要特点是什么?答:多道程序设计技术是把多个程序同时放入内存,使它们共享系统中的资源;特点:多道,即计算机内存中同时存放多道相互独立的程序;宏观上并行,是指同时进入系统的多道程序都处于运行过程中;微观上串行,是指在单处理机环境下,内存中的多道程序轮流占有CPU CPU,交替执行。
,交替执行。
3. 3. 批处理系统是怎样的一种操作系统?它的特点是什批处理系统是怎样的一种操作系统?它的特点是什么?答:批处理操作系统是一种基本的操作系统类型。
在该系统中,用户的作业被成批的输入到计算机中,然后在操作系统的控制下,用户的作业自动地执行;特点是:资源利用率高、系统吞吐量大、平均周转时间长、无交互能力。
长、无交互能力。
4. 4. 4. 什么是分时系统?什么是实时系统?什么是分时系统?什么是实时系统?试从交互性、及时性、独立性、多路性和可靠性几个方面比较分时系统和实时系统。
较分时系统和实时系统。
答:分时系统:一个计算机和许多终端设备连接,每个 答:分时系统:一个计算机和许多终端设备连接,每个用户可以通过终端向计算机发出指令,请求完成某项工作,在这样的系统中,用户感觉不到其他用户的存在,好像独占计算机一样。
计算机一样。
实时系统:对外部输入的信息,实时系统能够在规定的 实时系统:对外部输入的信息,实时系统能够在规定的时间内处理完毕并作出反应。
比较:交互性:实时系统具时间内处理完毕并作出反应。
有交互性,但人与系统的交互,仅限于访问系统中某些特定的专用服务程序。
操作系统罗宇课后习题答案

操作系统罗宇课后习题答案操作系统罗宇课后习题答案操作系统作为计算机科学中的重要课程,是计算机专业学生必修的一门课程。
学习操作系统的过程中,除了理论知识的学习,还需要通过习题来巩固所学内容。
本文将针对操作系统罗宇教材中的一些习题进行解答,帮助读者更好地理解和掌握操作系统的知识。
1. 什么是进程?进程的状态有哪些?进程是指在计算机系统中正在运行的一个程序。
它是操作系统进行资源分配和调度的基本单位。
进程的状态包括:- 就绪状态(Ready):进程已经具备运行的条件,等待系统分配资源。
- 运行状态(Running):进程正在执行指令。
- 阻塞状态(Blocked):进程由于等待某个事件的发生而暂停执行。
- 终止状态(Terminated):进程执行完毕或被操作系统终止。
2. 什么是线程?线程和进程的区别是什么?线程是进程中的一个执行流程,是操作系统调度和执行的基本单位。
一个进程可以包含多个线程,它们共享进程的资源。
线程和进程的区别主要有:- 资源开销:线程的创建、切换和销毁的开销较小,而进程的开销较大。
- 并发性:不同线程可以并发执行,共享进程的资源。
而不同进程之间的并发执行需要通过进程间通信来实现。
- 独立性:线程是进程的一部分,同一进程中的线程共享进程的地址空间和文件描述符等资源。
而不同进程之间是相互独立的。
- 启动方式:线程的创建和销毁由程序员控制,而进程的创建和销毁由操作系统控制。
3. 什么是死锁?如何避免死锁?死锁是指两个或多个进程因争夺资源而无法继续执行的状态。
死锁发生时,进程无法进行下去,系统资源被浪费。
为了避免死锁,可以采取以下策略:- 预防死锁:通过破坏死锁产生的四个必要条件(互斥、占有并等待、不可剥夺、循环等待)来预防死锁的发生。
- 避免死锁:通过资源分配策略,避免系统进入可能导致死锁的状态。
例如,银行家算法可以根据系统资源的最大需求进行资源分配,避免死锁的发生。
- 检测死锁:通过系统资源的状态和进程的状态来检测死锁的发生。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
操作系统部分课后习题答案1.2 操作系统以什么方式组织用户使用计算机?答:操作系统以进程的方式组织用户使用计算机。
用户所需完成的各种任务必须由相应的程序来表达出来。
为了实现用户的任务,必须让相应功能的程序执行。
而进程就是指程序的运行,操作系统的进程调度程序决定CPU在各进程间的切换。
操作系统为用户提供进程创建和结束等的系统调用功能,使用户能够创建新进程。
操作系统在初始化后,会为每个可能的系统用户创建第一个用户进程,用户的其他进程则可以由母进程通过“进程创建”系统调用进行创建。
1.4 早期监督程序(Monitor)的功能是什么?答:早期监督程序的功能是代替系统操作员的部分工作,自动控制作业的运行。
监督程序首先把第一道作业调入主存,并启动该作业。
运行结束后,再把下一道作业调入主存启动运行。
它如同一个系统操作员,负责批作业的I/O,并自动根据作业控制说明书以单道串行的方式控制作业运行,同时在程序运行过程中通过提供各种系统调用,控制使用计算机资源。
1.7 试述多道程序设计技术的基本思想。
为什么采用多道程序设计技术可以提高资源利用率?答:多道程序设计技术的基本思想是,在主存同时保持多道程序,主机以交替的方式同时处理多道程序。
从宏观上看,主机内同时保持和处理若干道已开始运行但尚未结束的程序。
从微观上看,某一时刻处理机只运行某道程序。
可以提高资源利用率的原因:由于任何一道作业的运行总是交替地串行使用CPU、外设等资源,即使用一段时间的CPU,然后使用一段时间的I/O设备,由于采用多道程序设计技术,加之对多道程序实施合理的运行调度,则可以实现CPU和I/O设备的高度并行,可以大大提高CPU与外设的利用率。
1.8 什么是分时系统?其主要特征是什么?适用于哪些应用?答:分时系统是以多道程序设计技术为基础的交互式系统,在此系统中,一台计算机与多台终端相连接,用户通过各自的终端和终端命令以交互的方式使用计算机系统。
每个用户都感觉到好像是自己在独占计算机系统,而在系统内部则由操作系统以时间片轮转的方式负责协调多个用户分享CPU。
主要特征是:并行性:系统能协调多个终端用户同时使用计算机系统,能控制多道程序同时运行。
共享性:对资源而言,系统在宏观上使各终端用户共享计算机系统中的各种资源,而在微观上它们则分时使用这些资源。
交互性:人与计算机以交互的方式进行工作。
独占性:使用户感觉到他在独占使用计算机。
现在的系统大部分都是分时系统,主要应用于人机交互的方面。
2.1什么是中断?什么是异常?它们有何区别?答:中断是指来自CPU执行指令以外的事件发生后,处理机暂停正在运行的程序,转去执行处理该事件的程序的过程。
异常是指源自CPU执行指令内部的事件发生后,处理机暂停正在执行的程序,转去处理该事件的过程。
区别:广义的中断包括中断和异常,统一称为中断。
狭义的中断和异常的区别在于是否与正在执行的指令有关,中断可以屏蔽,而异常不可屏蔽。
2.2什么是多级中断?为什么要把中断分级?试述多级中断的处理原则。
答:中断分级是根据中断的轻重缓急来排序,把紧迫程度大致相当的中断源归并在同一级,而把紧迫程度差别较大的中断源放在不同的级别。
一般来说,高速设备的中断优先级高,慢速设备的中断优先级低。
这就是多级中断。
这所以引入多级中断是因为:为使系统能及时的响应和处理所发生的紧迫中断,同时又不至于发生中断信号丢失,计算机发展早起在设计中断系统硬件时根据各种中断的轻重在线路上作出安排,从而使中断响应能有一个优先次序。
多级中断的处理原则:当多级中断同时发生时,CPU按照由高到低的顺序响应。
高级中断可以打断低级中断处理程序的运行,转而执行高级中断处理程序。
当同级中断同时到时,则按位响应。
2.6 什么是中断向量?其内容是什么?试述中断的处理过程。
答:中断向量:为处理方便,一般为系统中每个中断信号编制一个相应的中断处理程序,并把这些程序的入口地址放在特定的主存单元中。
通常将这一片存放中断处理程序入口地址的主存单元称为中断向量。
中断向量的内容:对不同的系统,中断向量中的内容也不尽相同。
一般每一个中断信号占用连续的两个单元:一个用来存放中断处理程序的入口地址,另一个用来保存在处理中断时CPU应具有的状态。
中断的处理过程:一般包括保存现场,分析中断原因,进入相应的中断处理程序,最后重新选择程序运行,恢复现场等过程。
2.7 中断/异常处理为什么要保存现场和恢复现场?现场应包括哪几方面的内容?答:因为中断处理是一项短暂性的工作,逻辑上处理完后还要回到被中断的程序,从其恢复点继续运行。
为了能实现正确的返回,并继续运行下去,在中断处理前后必须保存和恢复被中断的程序现场。
现场应包括:PC寄存器的内容,通用寄存器以及一些与程序运行相关的特殊寄存器中的内容。
2.8 操作系统内核的主要功能模块有哪些?如果采用微内核模型,原来在内核的功能中,哪些功能在微内核中实现?哪些由用户态运行的进程实现?答:操作系统内核的主要功能模块有:1、系统初始化模块2、进程管理模块3、存储管理模块4、I/O设备管理模块5、文件管理模块采用微内核模型,原来在内核的功能中,少量的进程调度切换代码和中断处理程序在微内核中实现,原来由内核态实现的大部分操作系统系统调用处理等功能转由用户态运行的进程实现。
2.9 从控制轨迹上看,系统调用和程序级的过程调用都相当于在断点处插入一段程序执行,但它们却有质的区别,试述这种差别。
答:这种差别主要在于处理机运行状态的变化。
发生系统调用时,处理机由用户态进入核心态;而程序调用时,运行状态不发生变化,其状态仍然保持在用户态。
2.11 试述终端命令解释程序的处理过程。
答:终端命令解释程序的处理过程如下:①判断命令的合法性②识别命令,如果是简单命令则处理命令,然后继续读取下一条命令③如果是不认识的命令关键字,则在约定目录下查找与命令关键字同名的执行文件,创建子进程去执行“执行文件”程序,等待子进程结束后转继续读取下一条命令。
3.1 什么是进程?为什么要引入此概念?试述进程的特点及它与程序的区别。
答:进程是支持程序执行的机制,是程序针对某一数据集合的执行过程。
引入此概念的原因:随着操作系统的发展而产生。
在监督程序时代以作业形式表示程序运行,那时,作业以同步方式串行地运行每个作业步,当操作系统发展到分时系统时,为了开发同一作业中不同作业步之间的并发,作业机制已经不能满足需要,因而引入了进程机制。
进程的特点:动态性:可动态创建,结束,也可是被调度进程并发性:可以被独立调度,占用处理机运行独立性:尽量把并发事务安排到不同的进程制约性:因访问共享数据或进程间同步而产生制约.与程序的区别:进程是程序的执行过程,程序是静态的,进程是动态的。
一个进程至少是一个可执行程序,同一个程序可以由多个进程分别执行。
3.2进程控制块的作用是什么?PCB中应包括哪些信息?答:进程控制块的作用是:进程控制块用于保存每个进程和资源的相关信息,包括进程标识、空间、运行状态、资源等信息。
以便于操作系统管理和控制进程和资源。
PCB中应包括:1、进程标识信息:本进程的标识、父进程的标识、进程所属用户的标识。
2、处理机状态信息。
保存进程的运行现场信息,包括用户可用寄存器的信息;控制和状态寄存器的信息;栈指针。
3.4 为什么进程状态会发生变化?何时变化?(P54)答:进程在它的生存周期中,由于系统中各进程并发运行及相互制约的结果,使得它的状态不断发生变化。
状态变化的时机:空→创建:当一个新进程被产生来执行一个程序时。
创建→就绪:当进程被创建完成,初始化后,一切就绪准备运行时。
就绪→运行:当处于就绪状态的进程被进程调度程序选中后。
运行→结束:当进程指示它已经完成或者因错流产时。
运行→就绪:处于运行状态的进程在其运行过程中,分给它的处理机时间片用完而让出处理机;或者在可剥夺的操作系统中,当有更高优先级的进程就绪时。
运行→阻塞:当进程请求某样东西且必须等待时。
阻塞→就绪:当进程要等待事件到来时。
3.5 进程创建的主要工作是什么?(P54)答:进程创建时的主要工作如下:1、接收进程运行现场初始值,初始优先级,初始执行程序描述,其它资源等参数。
2、请求分配进程描述块PCB空间,得到一个内部数字进程标识。
3、用从父进程传来的参数初始化PCB表。
4、产生描述进程空间的数据结构,用初始执行文件初始化进程空间,建立程序段,数据段、栈段等。
5、用进程运行现场初始值设置处理机现场保护区。
造一个进程运行栈帧。
6、置好父进程等关系域。
7、将进程置成就绪状态。
8、将PCB表挂入就绪队列,等待时机被调度运行。
3.7 详细说明几个引起进程调度的原因。
(P62)答:1、进程主动放弃处理机时:正在执行的进程执行完毕。
操作系统在处理进程结束系统调用后应请求重新调度。
正在执行的进程发出I/O请求,当操作系统代其启动外设I/O后,在I/O请求没有完成前要将进程变成阻塞状态,应该请求重新调度。
正在执行的进程要等待其它进程或系统发出的事件时。
如等待另一个进程通讯数据,这时操作系统应将现运行进程挂到等待队列,并且请求重新调度。
正在执行的进程得不到所要的系统资源,如要求进入临界区,但没有得到锁时,这时等锁的进程应自动放弃处理机或者阻塞到等锁队列上,并且请求重新调度。
2、为了支持可剥夺的进程调度方式,在以下情况发生时,因为新就绪的进程可能会按某种调度原则剥夺正运行的进程,因此也应该申请进行进程调度:当中断处理程序处理完中断,如I/O中断、通讯中断,引起某个阻塞进程变成就绪状态时,应该请求重新调度。
当进程释放资源,走出临界区,引起其他等待该资源进程从阻塞状态进入就绪状态时,应该请求重新调度。
当进程发系统调用,引起某个事件发生,导致等待事件的进程就绪时。
其它任何原因引起有进程从其它状态变成就绪状态,如进程被中调选中时。
3、为了支持可剥夺调度,即使没有新就绪进程,为了让所有就绪进程轮流占用处理机,可在下述情况下申请进行进程调度:当时钟中断发生,时钟中断处理程序调用有关时间片的处理程序,发现正运行进程时间片到,应请求重新调度。
以便让其他进程占用处理机。
在按进程优先级进行进程调度的操作系统中,任何原因引起进程的优先级发生变化时,应请求重新调度。
如进程通过系统调用自愿改变优先级时或者系统处理时钟中断时,根据各进程等待处理机的时间长短而调整进程的优先级。
3.8 什么时候进行进程调度最为合适?请说明理由。
(P63)答:进程调度的时机:当发生引起调度条件,且当前进程无法继续运行下去时(如发生各种进程放弃处理机的条件)可以马上进行调度与切换。
当中断处理结束或自陷处理结束返回被中断进程的用户态程序执行前,若请求调度标志置上,即可马上进行进程调度与切换。
如果操作系统支持这种情况下运行调度程序,即实现了剥夺方式的调度。