操作系统_第四章作业讲解
MSE计算机操作系统第四章笔记
第四章1.一个作业从提交给计算机系统到执行结束退出系统,一般都要经历提交、收容、执行和完成四个状态。
一个作业在其处于从输入设备进入外部存储设备的过程成为提交状态。
处于提交状态的作业,因其信息尚未全部进入系统,所以不能被调用程序选取。
收容状态也称为后备状态,输入管理系统不断地将作业输入到外存中对应部分(或称输入井,即专门用来存放待处理作业信息的一组外存分区)。
若一个作业的全部信息已全部被输入进输入井,那么,在它还未被调度去执行之前,该作业处于收容状态。
作业调度程序从后备作业中选取若干作业到内存投入运行。
它为被选中作业建立进程并分配必要的资源,这时,这些被选中的作业处于执行状态。
当作业运行完毕,但它所占用的资源尚未全部被系统收回时,该作业处于完成状态。
一般来说,处理机调度可分为4级:作业调度、交换调度、进程调度、线程调度。
作业调度:又称宏观调度或高级调度,其主要任务是按一定的原则对外存输入井上的大量后备作业进行选择,给选出的作业分配内存、输入输出设备等必要的资源,并建立相应的根程序,以使该作业的进程获得竞争处理机的权利,另外,当该作业执行完毕时,还负责回收系统资源。
交换调度:又称中级调度,其主要任务是按照给定的原则和策略,将处于外存交换区中的就绪状态或就绪等待状态的进程调入内存,或把处于内存就绪状态或内存等待状态的进程交换到外存交换区。
交换调度主要涉及内存的管理和扩充,一般将它归在存储管理之中。
进程调度:又称微观调度或低级调度,其主要任务是按照某种策略和方法选取一个处于就绪状态的进程占用处理机。
只有在多道批处理系统中才有作业调度,而在分时和实时系统中一般只有进程调度、交换调度和线程调度。
这是因为在分时和实时系统中,为了缩短响应时间或为了满足用户需求的截止时间,作业不是建立在外存中,而是直接建立在内存中。
2.作业调度作业调度的功能:(1)记录系统中各作业的状况,包括执行阶段的有关情况。
通常,系统为每个作业建立一个作业控制表JCB记录这些有关信息。
计算机操作系统第四章存储器管理复习资料
第四章存储器管理第一部分教材习题(P159)15、在具有快表的段页式存储管理方式中,如何实现地址变换?答:在段页式系统中,为了便于实现地址变换,须配置一个段表寄存器,其中存放段表始址和段长TL。
进行地址变换时,首先利用段号S,将它与段长TL进行比较。
若S<TL,表示未越界,利用段表始址和段号来求出该段所对应的段表项在段表中的位置,从中得到该段的页表始址,并利用逻辑地址中的段内页号P来获得对应页的页表项位置,从中读出该页所在的物理块号b,再利用块号b和页内地址来构成物理地址。
在段页式系统中,为了获得一条指令或数据,须三次访问内存。
第一次访问内存中的段表,从中取得页表始址;第二次访问内存中的页表,从中取出该页所在的物理块号,并将该块号与页内地址一起形成指令或数据的物理地址;第三次访问才是真正从第二次访问所得的地址中,取出指令或数据。
显然,这使访问内存的次数增加了近两倍。
为了提高执行速度,在地址变换机构中增设一个高速缓冲寄存器。
每次访问它时,都须同时利用段号和页号去检索高速缓存,若找到匹配的表项,便可从中得到相应页的物理块号,用来与页内地址一起形成物理地址;若未找到匹配表项,则仍须再三次访问内存。
19、虚拟存储器有哪些特征?其中最本质的特征是什么?答:虚拟存储器有以下特征:多次性:一个作业被分成多次调入内存运行,亦即在作业运行时没有必要将其全部装入,只需将当前要运行的那部分程序和数据装入内存即可;以后每当要运行到尚未调入的那部分程序时,再将它调入。
多次性是虚拟存储器最重要的特征,任何其他的存储器管理方式都不具有这一特征。
因此,认为虚拟存储器是具有多次性特征的存储器系统。
对换性:允许在作业的运行过程中进行换进、换出,也即,在进程运行期间,允许将那些暂不使用的程序和数据,从内存调至外存的对换区(换出),待以后需要时再将它们从外存调至内存(换进);甚至还允许将暂不运行的进程调至外存,待它们重又具备运行条件时再调入内存。
操作系统第4章答案(上)
赵盈盈 93 第四章作业上1. 解释名词:程序的顺序执行;程序的并发执行。
答:程序的顺序执行:一个具有独立功能的程序独占cpu直到得到最终结果的进程。
程序的并发执行:两个或两个以上程序在计算机系统中同时处于一开始执行且尚未结束的状态。
2. 什么是进程进程与程序的主要区别是什么答:进程:进程是具有独立功能的程序关于某个数据集合的一次运行活动,进程是系统进行资源分配和调度的独立单元。
进程和程序的区别:●程序是静态的,进程是动态的●进程有程序和数据两部分组成●进程具有生命周期,有诞生和消亡,是短暂的;而程序是相对长久的●进程能更真实的描述并发,而程序不行。
●一个进程可以对应多个程序。
一个程序可以对应多个进程●进程可以创建其他进程,程序不能3. 图1所示,设一誊抄程序,将f中记录序列正确誊抄到g中,这一程序由get、copy、put三个程序段组成,它们分别负责获得记录、复制记录、输出记录。
请指出这三个程序段对f中的m个记录进行处理时各种操作的先后次序,并画出誊抄此记录序列的先后次序图(假设f中有1,2,…,m个记录,s,t为设置在主存中的软件缓冲区,每次只能装一个记录)。
图1 改进后的誊抄过程答:4. 进程有哪几种基本状态试画出进程状态变迁图,并标明发生变迁的可能原因。
答:进程基本状态:运行、就绪、等待就绪到运行:调度程序选择一个新的进程运行 运行到就绪:运行进程用完了时间片或运行进程被中断,因为一个高优先级的进程处于就绪状态 运行到等待:OS 尚未完成服务 或对一资源的访问尚不能进行或初始化I/O 且必须等待结果 或等待某一进程提供输入(IPC ) 等待到就绪:当所有的事件发生时5. 什么是进程控制块它有什么作用答:PCB :为了便于系统控制和描述进程的活动过程,在操作系统核心中为进程定义的一个专门的数据结构。
作用:系统用PCB 来控制和管理进程的调用,PCB 也是系统感知进程存在的唯一标志GCGPCP G…CP6. n 个并发进程共用一个公共变量Q ,写出用信号灯的p 、v 操作实现n 个进程互斥时的程序描述,并说明信号灯值的取值范围。
计算机操作系统教程(张尧学 史美林 张高)(第三版)第四章
精品课程系列-计算机学院版权所有
重庆大学计算机学院 《操作系统》教程
4.2
作业调度
制 制 作 作 者 者 : : 郭 郭 平 平 、 、 王 王 在 在 模 模 、 、 何 何 静 静 媛 媛
作业调度是按照某种规则,从后备作业 队列中挑选作业进入内存,参与处理机的竞 争的过程。
精品课程系列-计算机学院版权所有
从后备队列中选 出一个作业 审核资源要求 否 放弃作业 资源要求 能满足吗? 是 分配资源 建立进程 进程调度 (a) 后备状态到执行状态的转变
回收分配给作业的全部资源 计算作业的执行费用 撤消作业的所有进程,以及JCB 调度下一个作业
(b) 执行状态到完成状态的转变
精品课程系列-计算机学院版权所有
外存
就绪
等待
提交状态
收容状态
就绪 等待
交换调度 执行状态 完成状态 执行
作业注册
作业调度
进程调度
内存
线程调度
作业的状态及转换
返回
精品课程系列-计算机学院版权所有
重庆大学计算机学院 《操作系统》教程
4.1.2 调度的层次
制 制 作 作 者 者 : : 郭 郭 平 平 、 、 王 王 在 在 模 模 、 、 何 何 静 静 媛 媛
又称为作业调度,用于决定把外存上处于后备队列中的作业调入 内存,并为它们创建进程、分配必要的资源,然后,将新创建的进程 排在就绪队列中,准备执行。在作业调度中,必须解决两个问题: 1) 接纳多少个作业:多道程序的度数的确定应该系统的规模和运行 速度,做适当的折中。 2) 接纳哪些作业:应该将作业从外存中调入内存,将取决于所采用 的调度算法。关于各种不同的调度算法将随后讨论。
精品课程系列-计算机学院版权所有
《计算机操作系统》课件第4章
第四章 存 储 器 管 理
3. 运行时动态链接(Run-time Dynamic Linking) 在许多情况下,应用程序在运行时,每次要运行的模块 可能是不相同的。但由于事先无法知道本次要运行哪些模块, 故只能是将所有可能要运行到的模块全部都装入内存,并在 装入时全部链接在一起。显然这是低效的,因为往往会有部 分目标模块根本就不运行。比较典型的例子是作为错误处理 用的目标模块,如果程序在整个运行过程中都不出现错误, 则显然就不会用到该模块。
2
第四章 存 储 器 管 理
4.1.1 多层结构的存储器系统 1. 存储器的多层结构 对于通用计算机而言,存储层次至少应具有三级:最高
层为CPU寄存器,中间为主存,最底层是辅存。在较高档的 计算机中,还可以根据具体的功能细分为寄存器、高速缓存、 主存储器、磁盘缓存、固定磁盘、可移动存储介质等6层。 如图4-1所示。
19
第四章 存 储 器 管 理
4.3 连续分配存储管理方式
4.3.1 单一连续分配 在单道程序环境下,当时的存储器管理方式是把内存分
为系统区和用户区两部分,系统区仅提供给OS使用,它通常 是放在内存的低址部分。而在用户区内存中,仅装有一道用 户程序,即整个内存的用户空间由该程序独占。这样的存储 器分配方式被称为单一连续分配方式。
9
第四章 存 储 器 管 理
4.2 程序的装入和链接
用户程序要在系统中运行,必须先将它装入内存,然后 再将其转变为一个可以执行的程序,通常都要经过以下几个 步骤:
(1) 编译,由编译程序(Compiler)对用户源程序进行编译, 形成若干个目标模块(Object Module);
(2) 链接,由链接程序(Linker)将编译后形成的一组目标 模块以及它们所需要的库函数链接在一起,形成一个完整的 装入模块(Load Module);
操作系统PV例题讲解
问题:(实现 4 个进程使用某一个需互斥使用的资源) 1)这样定义 P、V 操作是否有问题?
不合理:先进后出;可能“无限等待”
2)先考虑用这样的 P、V 操作实现 N 个进程竞争使用某一共享变量的互斥机制。 思路:令等待队列中始终只有一个进程。 将 “栈” 变成 “队列”
IF fork [i]=used THEN test_and_pick_up=false
ELSE BEGIN fork [i]:=used; test_and_pick_up:=true END
END;
PROCEDURE put_down(i:0..4); BEGIN fork [i]=free; signal (queue [i]); END;
Then V(buff[j].empty); V(buff[j].mutex); j:=(j+1) mod k Until false; End
37.对 PV 操作定义做如下修改
P(s):
s:=s-1;
If s<0
Then 将本进程插入相应队列末尾等待;
V(s):
s:=s+1; If s<=0 Then
} }
消费者: Void consumer (void); {
int item, I;
Message m; For (i=0;i<N; i++) send (producer, &m); While (TRUE){
Receive ( producer ,&m); Extract_item( &m, &item); Send (producer ,&m); Consumer_item(item); } }
(完整版)操作系统第4章答案(上)
赵盈盈2011210593 第四章作业上1.解释名词:程序的顺序执行;程序的并发执行。
答:程序的顺序执行:一个具有独立功能的程序独占 cpu 直到得到最终结果的进程。
程序的并发执行:两个或两个以上程序在计算机系统中同时处于一开始执行且尚未结束的状态。
2.什么是进程?进程与程序的主要区别是什么?答:进程:进程是具有独立功能的程序关于某个数据集合的一次运行活动,进程是系统进行资源分配和调度的独立单元。
进程和程序的区别:●程序是静态的,进程是动态的●进程有程序和数据两部分组成●进程具有生命周期,有诞生和消亡,是短暂的;而程序是相对长久的●进程能更真实的描述并发,而程序不行。
●一个进程可以对应多个程序。
一个程序可以对应多个进程●进程可以创建其他进程,程序不能3.图1 所示,设一誊抄程序,将 f 中记录序列正确誊抄到 g 中,这一程序由get、copy、put 三个程序段组成,它们分别负责获得记录、复制记录、输出记录。
请指出这三个程序段对 f 中的m 个记录进行处理时各种操作的先后次序,并画出誊抄此记录序列的先后次序图(假设f 中有1,2,…,m 个记录,s,t 为设置在主存中的软件缓冲区,每次只能装一个记录)。
图1 改进后的誊抄过程答:PPG4.进程有哪几种基本状态?试画出进程状态变迁图,并标明发生变迁的可能原因。
答:进程基本状态:运行、就绪、等待就绪到运行:调度程序选择一个新的进程运行运行到就绪:运行进程用完了时间片或运行进程被中断,因为一个高优先级的进程处于就绪状态运行到等待:OS 尚未完成服务或对一资源的访问尚不能进行或初始化 I/O 且必须等待结果或等待某一进程提供输入(IPC)等待到就绪:当所有的事件发生时5.什么是进程控制块?它有什么作用?答:PCB:为了便于系统控制和描述进程的活动过程,在操作系统核心中为进程定义的一个专门的数据结构。
作用:系统用 PCB 来控制和管理进程的调用,PCB 也是系统感知进程存在的唯一标志S36. n 个并发进程共用一个公共变量 Q ,写出用信号灯的 p 、v 操作实现 n 个进程互斥时的程序描述,并说明信号灯值的取值范围。
操作系统 第三章,第四章,第九章课后习题整理
第3章进程描述和控制复习题:什么是指令跟踪?答:指令跟踪是指为该进程而执行的指令序列。
通常那些事件会导致创建一个进程?答:新的批处理作业;交互登录;操作系统因为提供一项服务而创建;由现有的进程派生。
(详情请参考表3.1)对于图3.6中的进程模型,请简单定义每个状态。
答:运行态:该进程正在执行。
就绪态:进程做好了准备,只要有机会就开始执行。
阻塞态:进程在某些事件发生前不能执行,如I/O操作完成。
新建态:刚刚创建的进程,操作系统还没有把它加入到可执行进程组中。
退出态:操作系统从可执行进程组中释放出的进程,或者是因为它自身停止了,或者是因为某种原因被取消。
抢占一个进程是什么意思?答:处理器为了执行另外的进程而终止当前正在执行的进程,这就叫进程抢占。
什么是交换,其目的是什么?答:交换是指把主存中某个进程的一部分或者全部内容转移到磁盘。
当主存中没有处于就绪态的进程时,操作系统就把一个阻塞的进程换出到磁盘中的挂起队列,从而使另一个进程可以进入主存执行。
为什么图3.9(b)中有两个阻塞态?答:有两个独立的概念:进程是否在等待一个事件(阻塞与否)以及进程是否已经被换出主存(挂起与否)。
为适应这种2*2的组合,需要两个阻塞态和两个挂起态。
列出挂起态进程的4个特点。
答:1.进程不能立即执行。
2.进程可能是或不是正在等待一个事件。
如果是,阻塞条件不依赖于挂起条件,阻塞事件的发生不会使进程立即被执行。
3.为了阻止进程执行,可以通过代理把这个进程置于挂起态,代理可以是进程自己,也可以是父进程或操作系统。
4.除非代理显式地命令系统进行状态转换,否则进程无法从这个状态中转移。
对于哪类实体,操作系统为了管理它而维护其信息表?答:内存、I/O、文件和进程。
列出进程控制块中的三类信息。
答:进程标识,处理器状态信息,进程控制信息。
为什么需要两种模式(用户模式和内核模式)?答:用户模式下可以执行的指令和访问的内存区域都受到限制。
这是为了防止操作系统受到破坏或者修改。
操作系统第四章习题及答案
操作系统第四章习题及答案第四章进程管理1、⼀个由3个页⾯每页有2048个字节组成的程序,将它装⼊⼀个8个物理块组成的存储器中,装⼊的情况如下表所⽰:给出下列逻辑地址,请计算出2617对应的物理地址:2、某请求页式存储管理,允许⽤户编程空间为32个页⾯(每页1KB),主存为16KB, 如有⼀个⽤户程序有10页长,且某时刻该⽤户页⾯映射表如表所⽰。
如果程序执⾏时遇到以下的虚地址:0AC5H ,1AC5H 试计算对应的物理地址。
3、假设某分页系统中,主存储器的容量为1MB ,被分为256块,回答:1)主存地址应该⽤位来表⽰。
2)作业每⼀页的长度为;逻辑地址中的页内地址应该为位。
4、在段式管理系统中,段表为求下⾯逻辑地址对应的物理地址。
12 7 1 4 0 块号页号 95 1938 4 590 13503 90 100 220 2350 1 500 210 0 段长内存起始地址段号(1,10);(2,500);(3,400);(5,32)5、在⼀分页存储管理系统中,逻辑地址长度为16位,页⾯⼤⼩为4096字节,分别计算逻辑地址14AAH,235BH,3B4CH,78DDH所对应的物理地址,并指出可能发⽣何种中断?(8分)注:1表⽰可寻址,0表⽰在外存。
6、在⼀个请求分页系统中,假定系统分配给作业的物理块数为3,并且此作业的页⾯⾛向为2、3、2、1、5、2、4、5、3、2、5、2。
试⽤LRU算法计算出程序访问过程所发⽣的缺页次数和被替换的页⾯序列。
答案:1、P=int(2617/2048)=1 d=569物理地址=4*2048+569=87612、0AC5H的页号是2,对应的物理页号是4,所以物理地址应该为12C5H,1AC5H的页号是6,超过了页表的范围,所以该地址⾮法,产⽣越界中断3、假设某分页系统中,主存储器的容量为1MB,被分为256块,回答:1)主存地址应该⽤ 20 位来表⽰。
2)作业每⼀页的长度为 2048 ;逻辑地址中的页内地址应该为 12 位。
操作系统课后答案——第四章
第四章存储器管理1. 为什么要配置层次式存储器?这是因为:a.设置多个存储器可以使存储器两端的硬件能并行工作。
b.采用多级存储系统,特别是Cache技术,这是一种减轻存储器带宽对系统性能影响的最佳结构方案。
c.在微处理机内部设置各种缓冲存储器,以减轻对存储器存取的压力。
增加CPU中寄存器的数量,也可大大缓解对存储器的压力。
2. 可采用哪几种方式将程序装入内存?它们分别适用于何种场合?将程序装入内存可采用的方式有:绝对装入方式、重定位装入方式、动态运行时装入方式;绝对装入方式适用于单道程序环境中,重定位装入方式和动态运行时装入方式适用于多道程序环境中。
3. 何为静态链接?何谓装入时动态链接和运行时动态链接?a.静态链接是指在程序运行之前,先将各自目标模块及它们所需的库函数,链接成一个完整的装配模块,以后不再拆开的链接方式。
b.装入时动态链接是指将用户源程序编译后所得到的一组目标模块,在装入内存时,采用边装入边链接的一种链接方式,即在装入一个目标模块时,若发生一个外部模块调用事件,将引起装入程序去找相应的外部目标模块,把它装入内存中,并修改目标模块中的相对地址。
c.运行时动态链接是将对某些模块的链接推迟到程序执行时才进行链接,也就是,在执行过程中,当发现一个被调用模块尚未装入内存时,立即由OS去找到该模块并将之装入内存,把它链接到调用者模块上。
4. 在进行程序链接时,应完成哪些工作?a.对相对地址进行修改b.变换外部调用符号6. 为什么要引入动态重定位?如何实现?a.程序在运行过程中经常要在内存中移动位置,为了保证这些被移动了的程序还能正常执行,必须对程序和数据的地址加以修改,即重定位。
引入重定位的目的就是为了满足程序的这种需要。
b.要在不影响指令执行速度的同时实现地址变换,必须有硬件地址变换机构的支持,即须在系统中增设一个重定位寄存器,用它来存放程序在内存中的起始地址。
程序在执行时,真正访问的内存地址是相对地址与重定位寄存器中的地址相加而形成的。
操作系统第4章作业答案(下)
赵盈盈93第四章作业下1. 某系统进程调度状态变迁图如图1所示(设调度方式为非剥夺方式),请说明:(1)什么原因将引起发生变迁2、变迁3、变迁4答:(1)当进程分配的时间片用完的时候,会发生变迁2;当进程必须等待某事件发生时候发生变迁3;进程锁等待事件已发生的时候,发生变迁4(2)当观察系统中所有进程时,能够看到某一进程产生的一次状态变迁能引起另一进程作一次状态变迁,在什么情况下,一个进程的变迁3能立即引起另一个进程发生变迁1答:(2)当一个进程释放对cpu的占用,从运行队列进入等待队列,而且此时就绪序列不为空的时候,就会发生变迁1.(3)下述因果变迁是否要能发生如果可能的话,在什么情况下发生(a)3→1;(b)3→2;(c)2→1答:(3)(a)31 能当一个进程释放对cpu的占用,从运行队列进入等待队列,而且此时就绪序列不为空的时候,就会发生变迁1.(b)32 不能(c)21 能当一个进程释放对cpu的占用,从运行队列进入就绪队列,而且此时就绪序列不为空的时候,就会发生变迁1.2. 若题1中所采用的调度方式为可剥夺方式,请回答题1中提出的问题。
答2:只有一个不同:21 当新建进程B比现在正在运行进程A的优先级高的时候,不管A的时间片有没有用完,都会发生变迁2,A从运行状态变成就绪状态,因此也会发生变迁1,B从就绪状态转变成运行状态。
3. 某系统的进程状态变迁图如图2所示(设该系统的进程调度方式为非剥夺方式),请说明:(1)一个进程发生变迁3的原因是什么发生变迁2、变迁4的原因又是什么答(1):当运行进程因I/O而阻塞。
这时候进程会从运行状态转到等待状态。
发生变迁3。
当高就绪队列为空是会发生变迁2。
当等待使劲已经发生时,会发生变迁4。
(2)下述因果变迁是否会发生,如果有可能的话,在什么情况下发生(a)2→1;(b)3→2;(c)4→5;(d)4→2;(e)3→5答:(2)(a)21:是因果变迁,当进程从运行状态转为就绪,并进入低优先就绪,而此时,当高优先就绪为空时,就会发生变迁1.(b)32:不是因果变迁。
操作系统第4章答案(上)
赵盈盈 93 第四章作业上1. 解释名词:程序的顺序执行;程序的并发执行。
答:程序的顺序执行:一个具有独立功能的程序独占cpu直到得到最终结果的进程。
程序的并发执行:两个或两个以上程序在计算机系统中同时处于一开始执行且尚未结束的状态。
2. 什么是进程进程与程序的主要区别是什么答:进程:进程是具有独立功能的程序关于某个数据集合的一次运行活动,进程是系统进行资源分配和调度的独立单元。
进程和程序的区别:●程序是静态的,进程是动态的●进程有程序和数据两部分组成●进程具有生命周期,有诞生和消亡,是短暂的;而程序是相对长久的●进程能更真实的描述并发,而程序不行。
●一个进程可以对应多个程序。
一个程序可以对应多个进程●进程可以创建其他进程,程序不能3. 图1所示,设一誊抄程序,将f中记录序列正确誊抄到g中,这一程序由get、copy、put三个程序段组成,它们分别负责获得记录、复制记录、输出记录。
请指出这三个程序段对f中的m个记录进行处理时各种操作的先后次序,并画出誊抄此记录序列的先后次序图(假设f中有1,2,…,m个记录,s,t为设置在主存中的软件缓冲区,每次只能装一个记录)。
图1 改进后的誊抄过程答:4. 进程有哪几种基本状态试画出进程状态变迁图,并标明发生变迁的可能原因。
答:进程基本状态:运行、就绪、等待状态转换图:就绪到运行:调度程序选择一个新的进程运行 运行到就绪:运行进程用完了时间片或运行进程被中断,因为一个高优先级的进程处于就绪状态运行到等待:OS 尚未完成服务或对一资源的访问尚不能进行或初始化I/O 且必须等待结果 或等待某一进程提供输入(IPC )等待到就绪:当所有的事件发生时GCGPCP G… CP5. 什么是进程控制块它有什么作用答:PCB:为了便于系统控制和描述进程的活动过程,在操作系统核心中为进程定义的一个专门的数据结构。
作用:系统用PCB来控制和管理进程的调用,PCB也是系统感知进程存在的唯一标志6. n个并发进程共用一个公共变量Q,写出用信号灯的p、v操作实现n个进程互斥时的程序描述,并说明信号灯值的取值范围。
操作系统原理-第四章处理机调度知识点及习题
第四章处理机调度与死锁4.1 知识点汇总1、处理机调度级别⑴调度:选出待分派的作业或进程⑵处理机调度:分配处理机⑶三级调度:高级调度(作业调度)、中级调度(内存对换)、低级调度(进程调度)2、作业状态⑴作业状态分为四种:提交、后备、执行和完成。
⑵作业状态变迁图:图4-1 作业状态及变迁3、作业调度和调度的功能⑴. 作业调度的任务后备状态→执行状态执行状态→完成状态⑵作业调度的功能①记录系统中各个作业的情况②按照某种调度算法从后备作业队列中挑选作业③为选中的作业分配内存和外设等资源④为选中的作业建立相应的进程⑤作业结束后进行善后处理工作4、进程调度和调度的功能1). 进程调度:后备状态→执行状态2). 进程调度时机:任务完成后、等待资源时、运行到时了、发现重调标志3). 进程调度的功能:保存现场、挑选进程、恢复现场5、两级调度模型 作业调度和进程调度的区别6、评价调度算法的指标调度性能评价准则:CPU利用率、吞吐量、周转时间、就绪等待时间和响应时间(1)吞吐量:单位时间内CPU完成作业的数量(2)周转时间:1) 周转时间=完成时刻-提交时刻2) 平均周转时间=周转时间/n3) 带权周转时间=周转时间/实际运行时间4) 平均带权周转时间=带权周转时间/n7、作业与进程调度算法(1)先来先服务(FCFS)调度算法的实现思想:按作业(进程)到来的先后次序进行调度,即先来的先得到运行。
用于作业调度:从作业对列(按时间先后为序)中选择队头的一个或几个作业运行。
用于进程调度:从就绪队列中选择一个最先进入该队列的进程投入运行。
例如设有三个作业,编号为1,2,3。
各作业分别对应一个进程。
各作业依次到达,相差一个时间单位。
①图示出采用FCFS方式调度时这三个作业的执行顺序②算出各作业的周转时间和带权周转时间(2)时间片轮转(RR)调度算法的实现思想:系统把所有就绪进程按先进先出的原则排成一个队列。
新来的进程加到就绪队列末尾。
操作系统_第四章作业讲解
1、“整体对换从逻辑上也扩充了内存,因此也实现了虚拟存储器的功能”这种说法是否正确?请说明理由答:上述说明法是错误的。
整体对换将内存中暂时不用的某个程序及其数据换出至外存,腾出足够的内存空间以装入在外存中的、具备运行条件的进程所对应的程序和数据。
虚拟存储器是指仅把作业的一部分装入内存便可运行作业的存储器系统,是指具有请求调入功能和置换功能,能从逻辑上对内存容量进行扩充的一种存储器系统,它的实现必须建立在离散分配的基础上。
虽然整体对换和虚拟存储器均能从逻辑上扩充内存空间,但整体对换不具备离散性。
实际上,在具有整体对换功能的系统中,进程的大小仍受到实际内存容量的限制。
2、某系统采用页式存储管理策略,拥有逻辑空间32页,每页为2KB,拥有物理空间1MB。
1)写出逻辑地址的格式2)若不考虑访问权限等,进程的页表有多少项?每项至少有多少位?3)如果物理空间减少一半,页表结构应相应作怎样的改变?答:1)该系统拥有逻辑空间32页,故逻辑地址中页号必须用5位来描述,而每页为2KB,因此,页内地址必须用11位来描述。
这样,可得到它的逻辑地址格式如下:2)每个进程最多有32个页面,因此,进程的页表项最多为32项;若不考虑访问权限等,则页表项中只需给出页所对应的物理块号。
1MB的物理空间可分成29个内存块,故每个页表项至少有9位。
3)如果物理空间减少一半,则页表中项表项数仍不变,但每项的长度可减少1位。
3、已知某系统页面长4KB,每个页表项为4B,采用多层分页策略映射64位的用户地址空间。
若限定最高层页表只占1页,则它可采用几层分页策略答:方法一:由题意可知,该系统的用户地址空间为264B,而页的大小为4KB,故作业最多可有264/212(即252)个页,其页表的大小则为252*4(即254)B。
因此,又可将页表分成242个页表页,并为它建立两级页表,两级页表的大小为244B。
依次类推,可知道它的3、4、5、6级页表的长度分别是234B、224B、214B、24B,故必须采取6层分页策略。
操作系统第4章5.6 本单元作业参考答案
单元四课后作业答案一、填空1.磁带、磁盘这样的存储设备都是以块为单位与内存进行信息交换的。
2.根据用户作业发出的磁盘I/O请求的柱面位置,来决定请求执行顺序的调度,被称为移臂调度。
3.DMA控制器在获得总线控制权的情况下能直接与内存储器进行数据交换,无需CPU介入。
4.在DMA方式下,设备与内存储器之间进行的是成批数据传输。
5.通道程序是由通道执行的。
6.通道是一个独立与CPU的、专门用来管理输入/输出操作的处理机。
7.缓冲的实现有两种方法:一种是采用专门硬件寄存器的硬件缓冲,一种是在内存储器里开辟一个区域,作为专用的I/O缓冲区,称为软件缓冲。
8.设备管理中使用的数据结构有系统设备表(SDT)和设备控制块(DCB)。
9.基于设备的分配特性,可以把系统中的设备分为独享、共享和虚拟三种类型。
10.引起中断发生的事件称为中断源。
二、选择1.在对磁盘进行读/写操作时,下面给出的参数中,C 是不正确的。
A.柱面号B.磁头号C.盘面号D.扇区号2.在设备管理中,是由B 完成真正的I/O操作的。
A.输入/输出管理程序B.设备驱动程序C.中断处理程序D.设备启动程序3.在下列磁盘调度算法中,只有D 考虑I/O请求到达的先后次序。
A.最短查找时间优先调度算法B.电梯调度算法C.单向扫描调度算法D.先来先服务调度算法4.下面所列的内容里,C 不是DMA方式传输数据的特点。
A.直接与内存交换数据B.成批交换数据C.与CPU并行工作D.快速传输数据5.在CPU启动通道后,由A 执行通道程序,完成CPU所交给的I/O任务。
A.通道B.CPU C.设备D.设备控制器6.利用SPOOL技术实现虚拟设备的目的是A 。
A.把独享的设备变为可以共享B.便于独享设备的分配C.便于对独享设备的管理D.便于独享设备与CPU并行工作7.通常,缓冲池位于C 中。
A.设备控制器B.辅助存储器C.主存储器D.寄存器8. B 是直接存取的存储设备。
操作系统第4章答案(上)
赵盈盈2011210593 第四章作业上1. 解释名词:程序的顺序执行;程序的并发执行。
答:程序的顺序执行:一个具有独立功能的程序独占cpu直到得到最终结果的进程。
程序的并发执行:两个或两个以上程序在计算机系统中同时处于一开始执行且尚未结束的状态。
2. 什么是进程?进程与程序的主要区别是什么?答:进程:进程是具有独立功能的程序关于某个数据集合的一次运行活动,进程是系统进行资源分配和调度的独立单元。
进程和程序的区别:●程序是静态的,进程是动态的●进程有程序和数据两部分组成●进程具有生命周期,有诞生和消亡,是短暂的;而程序是相对长久的●进程能更真实的描述并发,而程序不行。
●一个进程可以对应多个程序。
一个程序可以对应多个进程●进程可以创建其他进程,程序不能3. 图1所示,设一誊抄程序,将f中记录序列正确誊抄到g中,这一程序由get、copy、put三个程序段组成,它们分别负责获得记录、复制记录、输出记录。
请指出这三个程序段对f中的m个记录进行处理时各种操作的先后次序,并画出誊抄此记录序列的先后次序图(假设f中有1,2,…,m个记录,s,t为设置在主存中的软件缓冲区,每次只能装一个记录)。
图1 改进后的誊抄过程答:4. 进程有哪几种基本状态?试画出进程状态变迁图,并标明发生变迁的可能原因。
答:进程基本状态:运行、就绪、等待就绪到运行:调度程序选择一个新的进程运行 运行到就绪:运行进程用完了时间片或运行进程被中断,因为一个高优先级的进程处于就绪状态运行到等待:OS 尚未完成服务或对一资源的访问尚不能进行或初始化I/O 且必须等待结果 或等待某一进程提供输入(IPC )等待到就绪:当所有的事件发生时5. 什么是进程控制块?它有什么作用?答:PCB :为了便于系统控制和描述进程的活动过程,在操作系统核心中为进程定义的一个专门的数据结构。
作用:系统用PCB 来控制和管理进程的调用,PCB 也是系统感知进程存在的唯一标志GCGPCP G… CP6. n 个并发进程共用一个公共变量Q ,写出用信号灯的p 、v 操作实现n 个进程互斥时的程序描述,并说明信号灯值的取值范围。
计算机操作系统第四章习题讲解与讨论
内存管理基础
• 碎片现象的存在使得() A、内存空间利用率降低 B、内存空间利用率提高 C、内存空间利用率得以改善 D、内存空间利用率不影响 • 以下解决主存碎片问题较好的存储管理方式是() A、可变式分区 B、分页管理 C、分段管理 D、单一连续管理 • ()存储管理支持多道程序设计,算法简单,但碎片较多 A、段式 B、页式 C、固定分区 D、段页式
第四章 存储器管理
内存管理基础
• 对主存储器的访问,是() A、以块(页)或段为单位 B、以字节或字为单位 C、随存储器的管理方案不同而异 D、以用户的逻辑记录为单位 • 把作业空间中使用的逻辑地址变为物理地址称为() A、加载 B、重定位 C、物理化 D、逻辑化 • 经过(),目标程序可以不经过任何改动而装入物理内存 单元 A、静态重定位 B、动态重定位 C、编译或汇编 D、存储扩充
虚拟内存管理
• 以下存储管理技术中,支持虚拟存储器的技术是() A、动态分区法 B、可重定位分区法 C、请求分页技术 D、对换技术 • 在请求分页系统中,()没有优先考虑最近使用过的页面 A、最佳置换算法 B、最近最久未使用算法 C、先进先出算法 D、时钟置换算法 • 以下置换算法中,()可能会产生Belady现象 A、最佳置换算法 B、最近最久未使用算法 C、先进先出算法 D、时钟置换算法
内存管理基础
• 在存储器中采用交换与覆盖,目的是() A、从物理上扩充内存 B、实现主存共享 C、节省存储空间 D、提高内存的利用率 • 在以下存储管理方式中,()可以采用覆盖技术 A、单一连续分区存储管理 B、可变分区存储管理 C、段式存储管理 D、段页式存储管理 • 分区分配内存管理方式的主要保护措施是() A、界地址保护 B、程序代码保护 C、数据保护 D、栈保护
操作系统第四章课后题答案
第四章1.为什么说多级反馈队列调度算法能较好地满足各类用户的需要(来自百度):答案一:多级反馈队列调度算法能较好地满足各种类型用户的需要。
对终端型作业用户而言,由于他们所提交的大多属于交互型作业,作业通常比较短小,系统只要能使这些作业在第1级队列所规定的时间片内完成,便可使终端型作业用户感到满意;对于短批处理作业用户而言,他们的作业开始时像终端型作业一样,如果仅在第1级队列中执行一个时间片即可完成,便可以获得与终端型作业一样的响应时间,对于稍长的作业,通常也只需要在第2级队列和第3级队列中各执行一个时间片即可完成,其周转时间仍然较短;对于长批处理作业用户而言,它们的长作业将依次在第1,2,…,直到第n级队列中运行,然后再按时间片轮转方式运行,用户不必担心其作业长期得不到处理。
答案二:(惠州学院操作系统课后题)与答案一基本相似,可看做精简版。
答:(1)终端型作业用户提交的作业大多属于较小的交互型作业,系统只要使这些作业在第一队列规定的时间片内完成,终端作业用户就会感到满足。
(2)短批处理作业用户,开始时像终端型作业一样,如果在第一队列中执行一个时间片段即可完成,便可获得与终端作业一样的响应时间。
对于稍长作业,通常只需在第二和第三队列各执行一时间片即可完成,其周转时间仍然较短。
(3)长批处理作业,它将依次在第1 ,2 ,…,n个队列中运行,然后再按轮转方式运行,用户不必担心其作业长期得不到处理。
所以,多级反馈队列调度算法能满足多用户需求。
2.分别对以上两个进程集合,计算使用先来先服务(FCFS)、时间片轮转法(时间片q=1)、短进程优先(SPN)、最短剩余时间优先(SRT,时间片q=1)、响应比高者优先(HRRN)及多级反馈队列(MFQ,第1个队列的时间片为1,第i(i<1)个队列的时间片q=2(i-1))算法进行CPU调度,请给出各进程的完成时间、周转时间、带权周转时间,及所有进程的平均周转时间和平均带权周转时间。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1、“整体对换从逻辑上也扩充了内存,因此也实现了虚拟存储器的功能”这种说法是否正确?请说明理由
答:上述说明法是错误的。
整体对换将内存中暂时不用的某个程序及其数据换出至外存,腾出足够的内存空间以装入在外存中的、具备运行条件的进程所对应的程序和数据。
虚拟存储器是指仅把作业的一部分装入内存便可运行作业的存储器系统,是指具有请求调入功能和置换功能,能从逻辑上对内存容量进行扩充的一种存储器系统,它的实现必须建立在离散分配的基础上。
虽然整体对换和虚拟存储器均能从逻辑上扩充内存空间,但整体对换不具备离散性。
实际上,在具有整体对换功能的系统中,进程的大小仍受到实际内存容量的限制。
2、某系统采用页式存储管理策略,拥有逻辑空间32页,每页为2KB,拥有物理空间1MB。
1)写出逻辑地址的格式
2)若不考虑访问权限等,进程的页表有多少项?每项至少有多少位?
3)如果物理空间减少一半,页表结构应相应作怎样的改变?
答:1)该系统拥有逻辑空间32页,故逻辑地址中页号必须用5位来描述,而每页为2KB,因此,页内地址必须用11位来描述。
这样,可得到它的逻辑地址格式如下:
2)每个进程最多有32个页面,因此,进程的页表项最多为32项;若不考虑访问权限等,则页表项中只需给出页所对应的物理块号。
1MB的物理空间可分成29个内存块,故每个页表项至少有9位。
3)如果物理空间减少一半,则页表中项表项数仍不变,但每项的长度可减少1位。
3、已知某系统页面长4KB,每个页表项为4B,采用多层分页策略映射64位的用户地址空
间。
若限定最高层页表只占1页,则它可采用几层分页策略
答:方法一:由题意可知,该系统的用户地址空间为264B,而页的大小为4KB,故作业最多可有264/212(即252)个页,其页表的大小则为252*4(即254)B。
因此,又可将页表分成242个页表页,并为它建立两级页表,两级页表的大小为244B。
依次类推,可知道它的3、4、5、6级页表的长度分别是234B、224B、214B、24B,故必须采取6层分页策略。
方法二:页面大小为4KB=212B,页表项4B=22B,因此一个页面可以存放212/22=210个面表项,因此分层数=INT[64/10]=6层
4、对于表所示的段表,请将逻辑地址(0,137)、(1,4000)、(2,3600)、(5,230)转换
成物理地址。
答:[0,137]:50KB+137=51337;
[1,4000]:段内地址越界;
[2,3600]:70KB+3600=75280;
[5,230]:段号越界。
5、在一个请求分页系统中,假如一个作业的页面走向为4、3、2、1、4、3、5、4、3、2、
1、5,目前它还没有任何页装入内存,当分配给该作业的物理块数目M分别为3和4
时,请分别计算采用OPT、LRU和FIFO页面淘汰算法时,访问过程中所发生的缺页次数和缺页率,并比较所得结果。
(选做括号内的内容:根据本题的结果,请查找资料,说明什么是Belady现象,在哪种置换算法中会产生Belady现象,为什么
答:1)使用OPT算法时,访问过程中发生缺页的情况为:当M=3时,缺页次数为7,缺页率为7/12;当M=4时,缺页次数为6,缺页率为6/12。
可见,增加分配给作业的内存块数,可减少缺页次数,从而降低缺页率。
页率为10/12;当M=4时,缺页次数为8,缺页率为8/12。
可见,增加分配给作业的内存块数,可减少缺页次数,从而降低缺页率。
访问过程中的缺页情况(M=3,LRU算法)
2)使用FIFO算法时,访问过程中发生缺页的情况为:当M=3时,缺页次数为9,缺页率为9/12;当M=4时,缺页次数为10,缺页率为10/12。
可见,增加分配给作业的内存块数,反而增加了缺页次数,提高了缺页率,这种现象被称做Belady现象。
访问过程中的缺页情况(M=3,FIFO算法)
6、现有一请求调页系统,页表保存在寄存器中。
若一个被替换的页未被修改过,则处理一
个缺页中断需要8ms;若被替换的页已被修改过,则处理一个缺页中断需要20ms。
内存存取时间为1us,访问页表的时间可忽略不计。
假定70%被替换的页被修改过,为保证有效存取时间不超过2us,可接受的最大缺页率是什么?
答:如果用p表示缺页率,则有效访问时间不超过2us可表示为(1-p)×1us+p×(0.7×20ms+0.3×8ms+1us)≦2us
因此可计算出:p≦1/16400≈0.00006
即可接受的最大缺页率为0.00006。
7、有一个二维数组:V AR A:ARRAY(1..100, 1..100)OF integer;按先行后列的次序
存储。
对一采用LRU置换算法的页式虚拟存储器系统,假设每页可存放200个整数。
若分配给一个进程的内存块数为3,其中一块用来装入程序和变量i、j,另外两块专门用来存放数组(不作他用),且程序段已在内存,但存放数组的页面尚未装入内存。
请分别就下列程序计算执行过程中的缺页次数。
程序1:
FOR i:=1 TO 100 DO FOR j:=1 TO 100 DO A[i, j]:= 0 程序2:
FOR j:=1 TO 100 DO FOR i:=1 TO 100 DO A[i, j]:= 0
答:对于程序1,首次缺页中断(访问A[0,0]时产生)将装入数据的第1、2行共200个整数,由于程序是按行对数组进行访问的,只有在处理完200个整数后才会再次产生缺页中断;以后每调入一页,也能处理200个整数,因此处理100×100个整数共将发生50次缺页。
对于程序2,首次缺页中断(访问A[0,0]时产生)将装入数据的第1、2行共200个整
数,但由于程序是按列对数组进行访问的,因此在处理完2个整数后又会再次产生缺页中断;以后每调入一页,也只能处理2个整数,因此处理100×100个整数共将发生5000次缺页。