计算机操作系统(第三版) 第4章
计算机操作系统(第三版)汤小丹第4章
![计算机操作系统(第三版)汤小丹第4章](https://img.taocdn.com/s3/m/04285d3f0912a21614792948.png)
注意:1)“本章要点”部分,用红字标注的不是期末考试出题范围。
2)“习题部分”用蓝字标注的是重点习题,期末考试50%的题目是这些习题的原题。
红字标注的习题期末考试不考,仅供考研的同学参考。
3)大部分习题答案只给出要点,同学们可以自行适当补充,但一定要简明扼要。
4)如“本章要点”部分用红字标注的非考试内容,在“习题”部分有相关的重点习题,则对该部分内容只需做该习题即可。
------------------------------------------------------------第四章存储器管理要点4.1 存储器的层次结构理解P116图4-1的存储器层次结构,知道这种结构从经济上考虑,具有好的性能/价格比。
了解P117-118高速缓存CACHE和磁盘缓存,知道它们使用的淘汰算法与虚拟内存的页面置换算法是基本相同的。
4.2 程序的装入和链接这一小节的内容是一些重要的专业常识。
应了解本小节介绍的各种装入和链接方法,要求结合Windows操作系统及C 语言的实际去理解上述装入和链接方法(联系实际部分可上网查询)。
4.3 连续分配方式通用操作系统大都不用连续分配方式,有些嵌入式OS可能使用这种分配方式。
这一小节只需阅读P121-124即可。
4.4 基本分页存储管理方式这是本章最重要的一小节,要求全读。
重点理解页面、物理块、页表、页表的访存、物理地址、逻辑地址、快表(TLB)等概念及相互关系。
4.5 基本分段存储管理方式阅读4.5.1,知道为什么要分段。
阅读4.5.2 知道分段的原理。
考研的同学要知道段表、地址变换,知道分段和分页的主要区别。
阅读4.5.3 知道分段有利于信息共享,知道“纯代码”的概念。
阅读4.5.4 知道什么是段页式存储。
需要补充说明的是:教材说过,分段方便编程,主要是指方便汇编语言程序员,和设计高级语言编译器的程序员。
对使用高级语言进行应用编程的程序员来说,段是透明的,一般不能用高级语言代码去操作段。
《操作系统》第三版第四章课后答案
![《操作系统》第三版第四章课后答案](https://img.taocdn.com/s3/m/3add5aabc1c708a1294a4432.png)
2、Spooling技术
也备的技术
六、简答题
1、操作系统设备管理的目标是什么?
*提高I/O设备和CPU的利用率
*提高I/O速度
*为用户使用设备提供方便、统一的界面
3、引入Spooling系统有哪些好处
*提高了I/O速度,将独占设备改造成共享设备,实现了虚拟设备功能,提高了系统的并行性,减少了用户进程的等待时间,提高了进程的推进速度。
5、什么是设备独立性?引入设备独立性有哪些好处?
*设备独立性也称设备无关性,指应用程序与实际使用的物理设备无关,亦即它独立于具体的物理设备。用户程序中使用逻辑设备,由操作系统完成逻辑设备到物理设备的映射
第四章(与磁盘相关不做)
一、填空题
1:字符、块、字符
2:设备驱动
3:缓冲
5:输入井和输出井、输入缓冲区和输出缓冲区、输入进程和输出进程
6:中断源
7:中断、DMA、通道
二、单项选择题
1、B
2、B C
6、C
7、A
三、多项选择题
1、BC
2、AB
3、AB DE
四、判断题
1、×
2、√
3、√
4、×
五、名词解释
1、设备驱动程序
*好处:设备分配时的灵活性、易于实现I/O重定向、方便用户编程
计算机操作系统第四章-存储器管理
![计算机操作系统第四章-存储器管理](https://img.taocdn.com/s3/m/5b05149b6bec0975f465e253.png)
第四章存储器管理第0节存储管理概述一、存储器的层次结构1、在现代计算机系统中,存储器是信息处理的来源与归宿,占据重要位置。
但是,在现有技术条件下,任何一种存储装置,都无法从速度、容量、是否需要电源维持等多方面,同时满足用户的需求。
实际上它们组成了一个速度由快到慢,容量由小到大的存储装置层次。
2、各种存储器•寄存器、高速缓存Cache:少量的、非常快速、昂贵、需要电源维持、CPU可直接访问;•内存RAM:若干(千)兆字节、中等速度、中等价格、需要电源维持、CPU可直接访问;•磁盘高速缓存:存在于主存中;•磁盘:数千兆或数万兆字节、低速、价廉、不需要电源维持、CPU 不可直接访问;由操作系统协调这些存储器的使用。
二、存储管理的目的1、尽可能地方便用户;提高主存储器的使用效率,使主存储器在成本、速度和规模之间获得较好的权衡。
(注意cpu和主存储器,这两类资源管理的区别)2、存储管理的主要功能:•地址重定位•主存空间的分配与回收•主存空间的保护和共享•主存空间的扩充三、逻辑地址与物理地址1、逻辑地址(相对地址,虚地址):用户源程序经过编译/汇编、链接后,程序内每条指令、每个数据等信息,都会生成自己的地址。
●一个用户程序的所有逻辑地址组成这个程序的逻辑地址空间(也称地址空间)。
这个空间是以0为基址、线性或多维编址的。
2、物理地址(绝对地址,实地址):是一个实际内存单元(字节)的地址。
●计算机内所有内存单元的物理地址组成系统的物理地址空间,它是从0开始的、是一维的;●将用户程序被装进内存,一个程序所占有的所有内存单元的物理地址组成该程序的物理地址空间(也称存储空间)。
四、地址映射(变换、重定位)当程序被装进内存时,通常每个信息的逻辑地址和它的物理地址是不一致的,需要把逻辑地址转换为对应的物理地址----地址映射;地址映射分静态和动态两种方式。
1、静态地址重定位是程序装入时集中一次进行的地址变换计算。
物理地址= 重定位的首地址+ 逻辑地址•优点:简单,不需要硬件支持;•缺点:一个作业必须占据连续的存储空间;装入内存的作业一般不再移动;不能实现虚拟存储。
计算机操作系统第三版课后答案汤子瀛等著全部的
![计算机操作系统第三版课后答案汤子瀛等著全部的](https://img.taocdn.com/s3/m/0ae391303968011ca30091d0.png)
因为程序在并发执行过程中存在相互制约性.
4.程序并发执行为何会失去封闭性和可再现性?
因为程序并发执行时,多个程序共享系统中的各种资源,资源状态需要多个程序来改变,即存在资源共
享性使程序失去封闭性;而失去了封闭性导致程序失去可再现性.
5.在操作系统中为什么要引入进程概念?它会产生什么样的影响?
---多道批处理系统则具有调度性,无序性和多道性的特点;
b.单道批处理系统是在解决人机矛盾及CPU和I/O设备之间速度不匹配的矛盾中形成的,旨在提高系统
资源利用率和系统吞吐量,但是仍然不能很好的利用系统资源;
---多道批处理系统是对单道批处理系统的改进,其主要优点是资源利用率高,系统吞吐量大;缺点是
---进程通信的任务是实现在相互合作进程之间的信息交换.
---调度分为作业调度和进程调度.作业调度的基本任务是从后备队列中按照一定的算法,选择出若干个
作业,为它们分配必要的资源;而进程调度的任务是从进程的就绪队列中,按照一定的算法选出一新
进程,把处理机分配给它,并为它设置运行现场,是进程投入运行.
14设备管理有哪些主要功能?其主要任务是什么?
a. PCB是进程实体的一部分,是操作系统中最重要的记录型数据结构.PCB中记录了操作系统所需的用于
描述进程情况及控制进程运行所需的全部信息.因而它的作用是使一个在多道程序环境下不能独立运行
的程序(含数据),成为一个能独立运行的基本单位,一个能和其它进程并发执行的进程.
b.在进程的整个生命周期中,系统总是通过其PCB对进程进行控制,系统是根据进程的PCB而不是任何别
证明:
R(S2)={x,a}, W(S2)={b}, R(S3)={x}, W(S3)={c};
《计算机操作系统教程》第三版答案
![《计算机操作系统教程》第三版答案](https://img.taocdn.com/s3/m/9443206d31126edb6f1a10af.png)
第一章操作系统概述课后习题1. 硬件将处理机划分为两种状态,即管态和目态,这样做给操作系统设计带来什么好处 ? 答:便于设计安全可靠的操作系统。
管态和目态是计算机硬件为保护操作系统免受用户程序的干扰和破坏而引入的两种状态。
通常操作系统在管态下运行,可以执行所有机器指令;而用户程序在目态下运行,只能执行非特权指令。
如果用户程序企图在目态下执行特权指令,将会引起保护性中断,由操作系统终止该程序的执行,从而保护了操作系统。
2. 何为特权指令?举例说明之。
如果允许用户执行特权指令,会带来什么后果?答:只能在态下才能执行的指令称为特权指令。
如开关中断、置程序状态寄存器等。
如果允许用户执行特权指令,它将不仅影响当前运行的程序,而且还有可能影响操作系统的正常运行,甚至整个系统。
3. 中断向量在机器中的存储位置是由硬件确定的,还是由软件确定的 ? 答:中断向量在机器中的位置是由硬件确定的。
例如,在 INTEL 80x86 CPU 中,内存空间0x00000——0x003ff为中断向量空间。
4. 中断向量的内容是由操作系统程序确定的还是由用户程序确定的?答:中断向量的内容是由操作系统程序确定的。
向量的内容包括中断处理程序的入口地址和程序状态字(中断处理程序运行环境),中断处理程序是由操作系统装入内存的,操作系统将根据装入的实际地址和该中断处理程序的运行环境来填写中断向量。
5. 中断向量内的处理机状态位应当标明是管态还是目态 ? 为什么? 答:应当标明是管态。
该状态由系统初试化程序设置,这样才能保证中断发生后进入操作系统规定的中断处理程序。
6. 中断和程序并发之间的关系是什么?答:中断是程序并发的必要条件。
如果没有中断,操作系统不能获得系统控制权,无法按调度算法对处机进行重新分配,一个程序将一直运行到结束而不会被打断。
7. 说明“栈”和“堆”的差别.答:栈是一块按后进先出(FIFO)规则访问的存储区域,用来实现中断嵌套和子程序调用的参数和返回断点。
计算机操作系统第三版全部
![计算机操作系统第三版全部](https://img.taocdn.com/s3/m/530f56fa4b73f242326c5f41.png)
3.1.2 进程的定义
• 进程与程序的区别与联系: ★进程是一个动态概念,程序是一个静态概念。 ★进程具有并发特征,而程序没有。 ★进程是竞争计算机系统资源的基本单位。 ★不同的进程可以包含同一程序,只要该程序所
对应的数据集不同。
Redhat Linux 9.0的窗口界面
2.4.1Linux的命令控制界面
Linux的命令一般包含9类: 1 系统维护与管理命令 2 文件操作与管理命令 3 进程管理命令 4 磁盘及设备管理命令 5 用户管理命令 6 文档操作命令 7 网络通信命令 8 程序开发命令 9 X Windows管理命令
操作系统原理 Operating System
第1章 操作系统绪论
• 操作系统的概念 • 操作系统的历史 • 操作系统的特性 • 操作系统的基本类型 • 操作系统的功能 • 计算机硬件简介 • 算法的描述 • 研究操作系统的观点
1.1 操作系统概念
• 操作系统的地位 • 引入操作系统的目的 • 操作系统定义
• 操作系统的产生
– 手工操作阶段 – 成批处理阶段 – 执行系统阶段
• 操作系统的完善
– 多道批处理系统 – 分时系统 – 实时处理系统 – 通用操作系统
• 操作系统的发展
– 网络操作系统 – 分布式操作系统 – 多处理机操作系统 – 单用户操作系统 – 面向对象操作系统 – 嵌入式操作系统 – 智能卡操作系统
1.4.6 网络操作系统
建立在宿主操作系统之上,提供网络通讯、网 络资源共享、网络服务的软件包。
host1 NOS1
DOS3 host3
host2 NOS2
Printer
网络操作系统的目标
• 相互通讯
• 资源共享(信息,设备)
计算机操作系统第三版课后习题答案
![计算机操作系统第三版课后习题答案](https://img.taocdn.com/s3/m/cdc461f2700abb68a982fbd0.png)
第一章1.设计现代OS的主要目标是什么?答:(1)有效性(2)方便性(3)可扩充性(4)开放性2.OS的作用可表现在哪几个方面?答:(1)OS作为用户与计算机硬件系统之间的接口(2)OS作为计算机系统资源的管理者(3)OS实现了对计算机资源的抽象12.试从交互性、及时性以及可靠性方面,将分时系统不实时系统进行比较。
答:(1)及时性:实时信息处理系统对实时性的要求与分时系统类似,都是以人所能接受的等待时间来确定;而实时控制系统的及时性,是以控制对象所要求的开始截止时间或完成截止时间来确定的,一般为秒级到毫秒级,甚至有的要低于100微妙。
(2)交互性:实时信息处理系统具有交互性,但人与系统的交互仅限于访问系统中某些特定的专用服务程序。
不像分时系统那样能向终端用户提供数据和资源共享等服务。
(3)可靠性:分时系统也要求系统可靠,但相比之下,实时系统则要求系统具有高度的可靠性。
因为任何差错都可能带来巨大的经济损失,甚至是灾难性后果,所以在实时系统中,往往都采取了多级容错措施保障系统的安全性及数据的安全性。
13.OS有哪几大特征?其最基本的特征是什么?答:并发性、共享性、虚拟性和异步性四个基本特征;最基本的特征是并发性。
第二章6.试从动态性,并发性和独立性上比较进程和程序?答:(1)动态性是进程最基本的特性,表现为由创建而产生,由调度而执行,因得不到资源而暂停执行,由撤销而消亡。
进程有一定的生命期,而程序只是一组有序的指令集合,是静态实体。
(2)并发性是进程的重要特征,同时也是OS的重要特征。
引入进程的目的正是为了使其程序能和其它进程的程序并发执行,而程序是不能并发执行的。
(3)独立性是指进程实体是一个能独立运行的基本单位,也是系统中独立获得资源和独立调度的基本单位。
对于未建立任何进程的程序,不能作为独立单位参加运行。
7.试说明PCB的作用,为什么说PCB是进程存在的惟一标志?答:PCB是进程实体的一部分,是操作系统中最重要的记录型数据结构。
第4章存储管理ppt课件计算机操作系统第三版
![第4章存储管理ppt课件计算机操作系统第三版](https://img.taocdn.com/s3/m/06a2074d0640be1e650e52ea551810a6f524c8a3.png)
第4章 存储管理
4.2.1 单一连续分区存储管理 单一连续分区存储管理把整个内存空间的最低端
和最高端作为操作系统区,中间作为用户程序区。在 DOS操作系统中就采用了这种方法,如图4.7所示。
第4章 存储管理
0xFFF… 操作系统
0xFFF… ROM中 的 设 备
驱动程序
分配给用户 作业的空间
用户程序
动态地址再定位的优点是:程序在执行期间可以换 入和换出内存,这样可以缓解内存紧张的矛盾;可以把 内存中的碎片集中起来,以充分利用空间;不必给程序 分配连续的内存空间,可以较好地利用较小的内存块; 若干用户可以共享同一程序。
动态地址再定位的缺点:需要附加的硬件支持, 而且实现存储管理的软件算法比较复杂。
未用 0
用户程序
位 于 RAM中 的 操作系统 0
图4.7 单一连续分区存储管理的分配方式
第4章 存储管理
这种存储分配思想将内存分为两个区域:系统区 和用户区。应用程序装入到用户区,可使用用户区全 部空间。
单一连续分区的优点是:简单,适用于单用户、 单任务的操作系统(比如CP/M和DOS操作系统),不需 要复杂的硬件支持。
静态重定位示意图
0
0
100 LOAD 1,500
5 000
500 12 345
5 100LOAD 1,5 500
700 程 序 A的 地 址 空 间
5 500
12 345
5 700
程 序 A的 存 储 空 间
第4章 存储管理
静态地址再定位的优点是:无需硬件地址变化机 构支持,容易实现;无需硬件支持,它只要求程序本 身是可再定位的;它只对那些要修改的地址部分做出 某种标识,再由专门设计的程序来完成。在早期的操 作系统中大多数都采用这种方法。
os4-计算机操作系统原理分析(第三版)-丁善镜-清华大学出版社
![os4-计算机操作系统原理分析(第三版)-丁善镜-清华大学出版社](https://img.taocdn.com/s3/m/ec746096b307e87100f6962c.png)
进程调度方式实现进程之间的轮流交替的一个方面。
4.进程调度算法 ➢ 先来先服务算法(FCFS) ➢ 时间片轮转算法(RR)
RR算法需要设计一个定时器,定时器的值为0时将产生一个中断。系统 用分配给进程的时间片设置定时器的初值,之后进程开始执行。进程运 行过程有三种可能情况:
同时到达。已知它们都是纯计算性的简单任务,运行时需要占用处理器时间分别 是10、3、2和5。把到达时间(提交时间)设为0。
TA=10,TB=13,TC=15,TA=20,TB=3,TC=5,
TD=20;
TD=10;
T=( TA+ TB+ TC+ TD)/4 T=( TA+ TB+ TC+TD)/4
• 一个作业的响应比R是
作业等待时间 作业大小
其中,作业等待时间 = 系统当前时间 - 作业提交时刻
• HRN思想 • HRN特点
• 综合了先来先服务算法(FCFS)和短作业优先算法(SJF) • 响应比R与作业的大小成反比,体现SJF算法 • 响应比R与作业的等待时间成正比,体现FCFS算法
4.作业调度算法例子
例4-3:假定某分时系统有3个同时依次到达的进程A、B和C,它们的任务如下:
进程A: 2ms CPU 10ms I/O 2ms CPU
进程B: 9ms CPU 5ms I/O 2ms CPU
进程C: 8ms CPU
在采用简单RR算法,时间片为3ms时,请画出RR算法的调度图。
➢ 响应时间
简单RR算法,假设就绪队列中的进程数为n,时间片为T,那么,响 应时间R,则
9:00
0.8
精品文档-计算机操作系统(第三版)汤小丹-第4章
![精品文档-计算机操作系统(第三版)汤小丹-第4章](https://img.taocdn.com/s3/m/75db4f6efd0a79563c1e72eb.png)
第四章 存储器管理
0 模块 A CALL B;
L-1 Return;
0 M-1
模块 B CALL C; Return;
0 模块 C
N-1 Return; (a) 目标模块
0 模块 A JSR“L”
L-1 Return; L 模块 B JSR“L+ M”
L+M-1 Return; L+M 模块 C
L+M+-N1 Return;
第四章 存储器管理
库
编译程序 产生的目 标模块
内存
链接 程序
装入模块
装入 程序
…
第一步
第二步
第三步
图4-2 对用户程序的处理步骤
第四章 存储器管理
4.2.1 程序的装入
1.绝对装入方式(Absolute Loading Mode)
在编译时,如果知道程序将驻留在内存的什么位置,那么, 编译程序将产生绝对地址的目标代码。例如,事先已知用户程 序(进程)驻留在从R处开始的位置,则编译程序所产生的目标模 块(即装入模块)便从R处开始向上扩展。绝对装入程序按照装入 模块中的地址,将程序和数据装入内存。装入模块被装入内存 后,由于程序中的逻辑地址与实际内存地址完全相同,故不须 对程序和数据的地址进行修改。
第四章 存储器管理
CPU寄 存 器 主存
辅存
寄存器 高速缓存
主存 磁盘缓存
磁盘 可移动存储介质
图4-1 计算机系统存储层次示意
第四章 存储器管理
4.1.2 主存储器与寄存器
1.主存储器
主存储器(简称内存或主存)是计算机系统中一个主要部件, 用于保存进程运行时的程序和数据,也称可执行存储器,其容 量对于当前的微机系统和大中型机,可能一般为数十MB到数GB, 而且容量还在不断增加,而嵌入式计算机系统一般仅有几十KB 到几MB。CPU的控制部件只能从主存储器中取得指令和数据,数 据能够从主存储器读取并将它们装入到寄存器中,或者从寄存 器存入到主存储器。CPU与外围设备交换的信息一般也依托于主 存储器地址空间。由于主存储器的访问速度远低于CPU执行指令 的速度,为缓和这一矛盾,在计算机系统中引入了寄存器和高 速缓存。
计算机操作系统课件(第三版)第四章_
![计算机操作系统课件(第三版)第四章_](https://img.taocdn.com/s3/m/7f0275227375a417866f8f41.png)
第 四 章 存 储 器 管 理
4.5分段存储管理
操 3、地址转换: 作 控制寄存器 系 统
段表始址 + 段号 段长 基址 0 1K 6K 1 6 00 4 K 2 5 00 8 K 3 2 00 9 20 0 + 段号S 2 位移量W 1 00 有效地址
越界 >
段表长度
第 四 章 存 储 器 管 理
20
4.5分段存储管理
操 作 系 统 一、基本段式存储器管理 1、基本原理:一个段定义为一组逻辑信息,如主程序、过程、数组等都可 作为一个段,每个作业地址空间按其内在的逻辑关系分成若干段,每段 都有自己的段名,且段内都是从0开始编址的连续地址空间。 要点:*段的长度是不固定的、由相应逻辑组的大小决定 *段间的地址空间是不连续的,整个作业的地址空间是二维的。 *页式存储管理中提供连续的逻辑地址,有系统自动地进行分页;而在段式 存储管理中作业的分段由用户决定的,每段独立编程,因此,段间的逻 辑地址是不连续的。 *段式管理中,为作业的每一段分配一个连续的主存区域,作业的各段可被 封装到不相连的几个区域中。 *系统为每个作业建立一个段表(段名、长度、在主存中的起始地址等) *原理图示:(下页)
17
4.4分页式存储器管理
操 作 系 4、淘汰算法 统 淘汰算法:也称臵换算法,当要访问的页面不在主存中,需要将其调入主 存,如果此时主存中无空闲页面,则需要将内存中某页面移植外存,被 移出的页面称作淘汰页面,用来选择淘汰页面的算法称作淘汰算法。 (1)最佳淘汰算法:淘汰以后不会再需要的页面,或者在最长的时间以后 才会用到的页面。(缺页率低、不是一种实际的算法,因页面访问的未 第 来顺序不能预先确定,可作为评价其他算法优劣的一种算法) 四 (2)先进先出淘汰算法:基于CPU按线性顺序访问地址空间,易于理解编 章 程,但效率低,而且有异常现象,事实上许多时候CPU不是按线性顺序 存 访问的。 储 器 (3)最近最久未使用页面臵换算法:淘汰最近一段时间内最久不用的页面 管 予以淘汰,(实现方法:计时法(访问计时器)、堆栈法(见教材P106 理 页)。 (4-)最近最不常用调度算法:将最近访问次数最少的淘汰(计数器)
(完整word版)计算机操作系统第三版第4章练习题
![(完整word版)计算机操作系统第三版第4章练习题](https://img.taocdn.com/s3/m/1c23f15ad1f34693dbef3eb8.png)
一、单项选择题1.要保证一个程序在主存中被改变了存放位置后仍能正确执行,则对主存空间应采用()技术。
A.动态重定位B.静态重定位C.动态分配D.静态分配2.固定分区存储管理把主存储器划分成若干个连续区,每个连续区称一个分区。
经划分后分区的个数是固定的,各个分区的大小()。
A.是一致的B.都不相同C.可以相同,也可以不相同,但根据作业长度固定D.在划分时确定且长度保持不变3.采用固定分区方式管理主存储器的最大缺点是()。
A.不利于存储保护B.主存空间利用率不高C.要有硬件的地址转换机构D.分配算法复杂4.采用可变分区方式管理主存储器时,若采用最优适应分配算法,宜将空闲区按()次序登记在空闲区表中。
A.地址递增B.地址递减C.长度递增D.长度递减5.在可变分区存储管理中,某作业完成后要收回其主存空间,该空间可能要与相邻空闲区合并。
在修改未分配区表时,使空闲区个数不变且空闲区始址不变的情况是()空闲区。
A.无上邻也无下邻B.无上邻但有下邻C.有上邻也有下邻D.有上邻但无下邻6.在可变分区存储管理中,采用“紧凑"技术可以()。
A.汇集主存中的空闲区B.增加主存容量C.缩短访问周期D.加速地址转换7.页式存储管理中的页表是由()建立的。
A.操作员B.系统程序员C.用户D.操作系统8.采用页式存储管理时,重定位的工作是由()完成的。
A.操作系统B.用户C.地址转换机构D.主存空间分配程序9.采用段式存储管理时,一个程序如何分段是在()决定的。
A.分配主存时B.用户编程时C.装人作业时D.程序执行时10.采用段式存储管理时,一个程序可以被分成若干段,每一段的最大长度是由( )限定的。
A.主存空闲区的长度B.硬件的地址结构C.用户编程时D.分配主存空间时11.实现虚拟存储器的目的是()。
A.扩充主存容量B.扩充辅存容量C.实现存储保护D.加快存取速度12.LRU页面调度算法是选择( )的页面先调出.A.最近才使用B.最久未被使用C.驻留时间最长D.驻留时间最短13.若进程执行到某条指令时发生了缺页中断,经操作系统处理后,当该进程再次占用处理器时,应从()指令继续执行。
计算机操作系统(汤小丹等,第三版)课后答案
![计算机操作系统(汤小丹等,第三版)课后答案](https://img.taocdn.com/s3/m/f7c5d461102de2bd9705887b.png)
第四章存储器管理1. 为什么要配置层次式存储器?这是因为:a.设置多个存储器可以使存储器两端的硬件能并行工作。
b.采用多级存储系统,特别是Cache技术,这是一种减轻存储器带宽对系统性能影响的最佳结构方案。
c.在微处理机内部设置各种缓冲存储器,以减轻对存储器存取的压力。
增加CPU中寄存器的数量,也可大大缓解对存储器的压力。
2. 可采用哪几种方式将程序装入内存?它们分别适用于何种场合?将程序装入内存可采用的方式有:绝对装入方式、重定位装入方式、动态运行时装入方式;绝对装入方式适用于单道程序环境中,重定位装入方式和动态运行时装入方式适用于多道程序环境中。
3. 何为静态链接?何谓装入时动态链接和运行时动态链接?a.静态链接是指在程序运行之前,先将各自目标模块及它们所需的库函数,链接成一个完整的装配模块,以后不再拆开的链接方式。
b.装入时动态链接是指将用户源程序编译后所得到的一组目标模块,在装入内存时,采用边装入边链接的一种链接方式,即在装入一个目标模块时,若发生一个外部模块调用事件,将引起装入程序去找相应的外部目标模块,把它装入内存中,并修改目标模块中的相对地址。
c.运行时动态链接是将对某些模块的链接推迟到程序执行时才进行链接,也就是,在执行过程中,当发现一个被调用模块尚未装入内存时,立即由OS 去找到该模块并将之装入内存,把它链接到调用者模块上。
4. 在进行程序链接时,应完成哪些工作?a.对相对地址进行修改b.变换外部调用符号6. 为什么要引入动态重定位?如何实现?a.程序在运行过程中经常要在内存中移动位置,为了保证这些被移动了的程序还能正常执行,必须对程序和数据的地址加以修改,即重定位。
引入重定位的目的就是为了满足程序的这种需要。
b.要在不影响指令执行速度的同时实现地址变换,必须有硬件地址变换机构的支持,即须在系统中增设一个重定位寄存器,用它来存放程序在内存中的起始地址。
程序在执行时,真正访问的内存地址是相对地址与重定位寄存器中的地址相加而形成的。
计算机操作系统课后习题答案
![计算机操作系统课后习题答案](https://img.taocdn.com/s3/m/55eb9fbefe4733687f21aae3.png)
计算机操作系统(第三版)课后习题答案第一章操作系统引论1.设计现代OS的主要目标是什么?答:(1)有效性(2)方便性(3)可扩充性(4)开放性13.OS有哪几大特征?其最基本的特征是什么?答:并发性、共享性、虚拟性和异步性四个基本特征;最基本的特征是并发性。
14.处理机管理有哪些主要功能?答:处理机管理的主要功能是:进程管理、进程同步、进程通信和处理机调度;15.内存管理有哪些主要功能?答:内存管理的主要功能有:内存分配、内存保护、位置映射和内存扩充。
内存分配:为每道程序分配内存。
16.设备管理有哪些主要功能?答:主要功能有: 缓冲管理、设备分配和设备处理以及虚拟设备等。
17.文件管理有哪些主要功能?答:文件管理主要功能:文件存储空间的管理、目录管理、文件的读/写管理和保护。
计算机操作系统第二章进程管理2. 画出下面四条诧句的前趋图:S1=a:=x+y; S2=b:=z+1; S3=c:=a –b;S4=w:=c+1;答:其前趋图为:8.试说明迚程在三个基本状态之间转换的典型原因。
图P38答:(1)就绪状态→执行状态:进程分配到CPU资源(2)执行状态→就绪状态:时间片用完(3)执行状态→阻塞状态:I/O请求(4)阻塞状态→就绪状态:I/O完成16.进程在运行时存在哪两种形式的制约?答:(1)间接相互制约关系。
同处于一个系统中的进程,通常都共享着某种系统资源,也叫资源共享(2)直接相互制约关系。
这种资源于进程间的合作。
互斥:指几个并发进程若共享同一个临界资源,它们必须错开使用这个临界资源,即当一个进程正在使用临界资源且尚未使用完毕之前,其他进程不能抢夺使用该临界资源18. 同步机构应遵循哪些基本准则?答:同步机构应遵循的基本准则是空闲让进、忙则等待、有限等待、让权等待。
19. 试从物理概念上说明记录型信号量wait 和signal。
答:wait(S):当S.value>0 时,表示目前系统中这类资源还有可用的。
计算机操作系统课件(第三版)课后答案
![计算机操作系统课件(第三版)课后答案](https://img.taocdn.com/s3/m/d5e17bed4028915f814dc20e.png)
第二章进程管理5. 在操作系统中为什么要引入进程概念?它会产生什么样的影响?为了使程序在多道程序环境下能并发执行,并能对并发执行的程序加以控制和描述,从而在操作系统中引入了进程概念。
影响: 使程序的并发执行得以实行。
6. 试从动态性,并发性和独立性上比较进程和程序?a. 动态性是进程最基本的特性,可表现为由创建而产生,由调度而执行,因得不到资源而暂停执行,以及由撤销而消亡,因而进程由一定的生命期;而程序只是一组有序指令的集合,是静态实体。
b. 并发性是进程的重要特征,同时也是OS的重要特征。
引入进程的目的正是为了使其程序能和其它建立了进程的程序并发执行,而程序本身是不能并发执行的。
c. 独立性是指进程实体是一个能独立运行的基本单位,同时也是系统中独立获得资源和独立调度的基本单位。
而对于未建立任何进程的程序,都不能作为一个独立的单位来运行。
13.在创建一个进程时所需要完成的主要工作是什么?(1)操作系统发现请求创建新进程事件后,调用进程创建语句2,申请空白PCB (进程控制块)3,为新进程分派资源;4初始化PCB;d,将新进程插入就绪队列;14. 在撤销一个进程时所需要完成的主要工作是什么?A.os调用进程终止语句B.根据被终止进程的标识符,从PCB集合中检索出该进程的PCB从中读出该进程状态C.若被终止进程正处于执行状态,应立即终止该进程的执行并设置调度标志为真D.若该进程还有子孙进程还应经所有子孙进程终止E.将该进程所拥有的全部资源或者归还给其父进程,或者还给系统F将被终止的进程从所在的队列移出,等待其他进程搜索信息15:试说明引起进程阻塞或被唤醒的主要事件是什么?A.请求系统服务 B.启动某种操作 C.新数据尚未到达 D无新工作可做26. 试修改下面生产者——消费者问题解法中的错误:producer:beginrepeat……produce an item in nextp; wait(mutex);wait(full);buffer(in):=nextp;……signal(mutex);until false;endconsumer:beginrepeat……wait(mutex);wait(empty);nextc:=buffer(out);out:=out+1;signal(mutex);consume item in nextc; until false;e36. 为什么要在OS中引入线程?在OS中引入进程的目的,是为了使多个程序能并发执行,以提高资源利用率和系统吞吐量。
操作系统原理与实践教程(第三版)os-ch 04简明教程PPT课件
![操作系统原理与实践教程(第三版)os-ch 04简明教程PPT课件](https://img.taocdn.com/s3/m/ef0329c889eb172ded63b73c.png)
4.1.3 信号量机制
wait操作可以表示为如下形式: void wait(int S) { while (S<=0) ; //当信号量S的值小于等于0时,做空操作, //否则将其值 减1 S = S-1; } signal操作可以表示为如下形式: void signal (int S) { S= S+1; }
4.1.2 进程互斥
一个描述临界资源的循环进程可以描述如下: bool bFlag=true; do{ 进入区 临界区 退出区 剩余区 }while (bFlag == true);
4.1.2 进程互斥
所有的同步机制都应遵循下面的4条准则: (1)空闲让进 当无进程处于临界区时,允许进程进入临界区, 并且只能在临界区运行有限的时间。 (2)忙则等待 当有一个进程在临界区时,其它欲进入临界区的 进程必须等待,以保证进程互斥地访问临界资源。
4.1.1 进程的同步
同步是进程间的直接制约关系,这种制约主要源 于进程间的合作。进程同步的主要任务就是使并 发执行的各进程之间能有效地共享资源和相互合 作,从而在执行时间、次序上相互制约,按照一 定的协议协调执行,使程序的执行具有可再现性。
4.1.2 进程互斥
当多个进程需要使用相同的资源,而此类资源在 任一时刻却只能供一个进程使用,获得资源的进 程可以继续执行,没有获得资源的进程必须等待。 这是进程之间的间接制约关系。这种关系与源于 进程间合作的同步关系不同,它们的运行具有时 间次序的特征,谁先从系统获得共享资源,谁就 先运行。这种对共享资源的排它性使用所造成的 进程间的间接制约关系称为进程互斥。 互斥是一种特殊的同步方式
4.1.3 信号量机制
计算机操作系统教程(第三版)张尧学 第8讲--处理机调度
![计算机操作系统教程(第三版)张尧学 第8讲--处理机调度](https://img.taocdn.com/s3/m/03b420e4102de2bd9605888c.png)
4.3.2 进程调度的时机
一个进程完成其任务时。 执行中的进程自己调用阻塞原语,进入等待状态。 执行了一次P操作,资源不满足;执行V操作激活了
等待队列的进程。统中,当进程完规定的时间片,时钟中断 使该进程让出处理机时。 执行完系统调用,系统返回用户态之前,由于系统 进程结束,需要调度新的进程。 在采用可剥夺调度方式的系统中,当具有更高优先 级的进程要求处理机时。
21
4.4.6 多级反馈轮转法
轮转法中,加入就绪队列的进程有3种情况
时间片用完 进程被阻塞后唤醒 进程被创建
对于不同类型的进程给与不同的优先级和时间片 分为不同就绪队列,统一队列优先级相同 多级反馈轮转法与优先级法的区别
多级反馈转转法中一个进程需要反复多次反馈循环执行, 而不是优先级法中的一次执行
优先级来表示所享有的优先权。 系统将处理机的使用权交给就绪队列中优先数最 高的进程。 确定优先级的方法
静态法: 开始执行之前就确定,执行开始之后不可改变 动态法:随着执行过程不断变化优先级
作业静态优先级 用户指定,高优先级高费用 根据作业类型指定优先级 根据作业要求资源情况指定优先级
19
4.4.5 轮转法
就绪队列中的进程均匀获得时间片。如果时间片 太大,则每个进程等待的时间就会较长,用户会 感觉到明显的等待,如果时间片太小,则系统的 开销就显得较大。 所以时间片的选择是非常重要的。一般为100或几 百毫秒。 每个进程获得的时间片是固定的,并且只有一个 就绪队列。 改进的方向:将固定时间片为可变时间片、将一 个就绪队列该为多个就绪队列。
6
可剥夺方式与非剥夺方式
第三版操作系统第4章习题
![第三版操作系统第4章习题](https://img.taocdn.com/s3/m/f678853f915f804d2b16c1d7.png)
操作系统复习题一、选择题1、在可变式分区分配方案中,某一作业完成后系统收回其主存空间,并与相邻空闲区合并,为此修改空闲区表,造成空闲区数减一的情况是()。
A 无上邻空闲区,也无下邻空闲区B 有上邻空闲区,但无下邻空闲区C 有下邻空闲区,但无上邻空闲区D 有上邻空闲区,也有下邻空闲区2、分区式存储器管理方式,每个程序()。
A 一定在分区中连续,部分存放B 一定在分区中连续,整体存放C 可以在分区中不连续,整体存放D 可以在分区中连续,部分存放3、下列选项中对分段存储管理叙述正确的是()A 分段存储管理中每个段必须是大小相等的。
B 每一段必须是连续的存储区C 每一段不必是连续的存储区D 段间的存储区必须是连续的4、下列对重定位的叙述中,正确的选项是()。
A 经过静态重定位后,指令地址并不发生变化。
B 经过静态重定位后,数据地址和指令地址发生了变化C 经过动态重定位后,指令代码中的操作码和操作数地址都要发生变化。
D 经过动态重定位后,数据地址发生了变化而指令地址没有发生变化。
5、虚拟存储器功能的管理方法包括()。
A 可变分区存储管理B 基本分页存储管理C 请求分段存储管理D 段页式存储管理6、虚拟存储器的最大容量()。
A 由作业的地址空间决定B 是任意的C 由计算机的地址结构决定的D 为内、外容量之和7、操作系统为()分配内存空间。
A线程B高速缓冲存储器(Cache) C 进程 D 快表8、下面的页面置换算法中会产生所谓Belady 异常现象的是()。
(注1)A 最佳页面置换算法(OPT)B 先进先出页面置换算法(FIFO)C 最近最久未使用页面置换算法(LRU)D 最少使用页面置换算法(LFU)9、采用()不会产生内部碎片。
A 分页式存储管理B 分段式存储管理C 固定分区式存储管理D 段页式存储管理10、最佳适应算法的空闲区是()。
A 按大小递减顺序连在一起B 按大小递增顺序连在一起C 按地址由小到大排列D 按地址由大到小排列11、在可变式分区存储管理中的拼接技术可以()。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
库
编译程序产 生的目标模 块
链接 程序
装入模块
装入 程序
…
第一步
第二步
第三步
图 4-1 对用户程序的处理步骤
第四章 存 储 器 管 理
4.1.1 程序的装入
1. 绝对装入方式(Absolute Loading Mode)
程序中所使用的绝对地址,既可在编译或汇编时给 出, 也可由程序员直接赋予。 但在由程序员直接给出绝对 地址时, 不仅要求程序员熟悉内存的使用情况,而且一旦 程序或数据被修改后,可能要改变程序中的所有地址。因 此,通常是宁可在程序中采用符号地址,然后在编译或汇 编时,再将这些符号地址转换为绝对地址。
第四章 存 储 器 管 理
4.2.4 可重定位分区分配
1. 动态重定位的引入
操作系统 用户程序1
10 KB 用户程序3
30 KB 用户程序6
14 KB 用户程序9
26 KB
操作系统 用户程序1 用户程序3 用户程序6 用户程序9
80 KB
(a) 紧凑前
(b) 紧凑后
图 4-8 紧凑的示意
第四章 存 储 器 管 理
现代的大多数计算机系统,都支持非常大的逻辑地址空 间(232~264)。在这样的环境下,页表就变得非常大,要占用相 当大的内存空间。例如,对于一个具有32位逻辑地址空间的 分页系统,规定页面大小为4 KB即212 B,则在每个进程页表 中的页表项可达1兆个之多。又因为每个页表项占用一个字 节, 故每个进程仅仅其页表就要占用4 KB的内存空间,而且 还要求是连续的。 可以采用这样两个方法来解决这一问题: ① 采用离散分配方式来解决难以找到一块连续的大内存空间 的问题:② 只将当前需要的部分页表项调入内存, 其余的页 表项仍驻留在磁盘上,需要时再调入。
第四章 存 储 器 管 理
(2) 进程的换入。 系统应定时地查看所有进程的状态,从中找出“就绪” 状态但已换出的进程,将其中换出时间(换出到磁盘上)最 久的进程作为换入进程,将之换入,直至已无可换入的进 程或无可换出的进程为止。
第四章 存 储 器 管 理
4.3 基本分页存储管理方式
4.3.1 页面与页表
第四章 存 储 器 管 理
第四章 存储器管理
4.1 程序的装入和链接 4.2 连续分配方式 4.3 基本分页存储管理方式 4.4 基本分段存储管理方式 4.5 虚拟存储器的基本概念 4.6 请求分页存储管理方式 4.7 页面置换算法 4.8 请求分段存储管理方式
第四章 存 储 器 管 理
4.1 程序的装入和链接
第四章 存 储 器 管 理
4.2 连续分配方式
4.2.1 单一连续分配
这是最简单的一种存储管理方式,但只能用于单用户、 单任务的操作系统中。采用这种存储管理方式时,可把内 存分为系统区和用户区两部分,系统区仅提供给OS使用, 通常是放在内存的低址部分;用户区是指除系统区以外的 全部内存空间, 提供给用户使用。
3. 进程的换出与换入
(1) 进程的换出。
每当一进程由于创建子进程而需要更多的内存空间, 但又无足够的内存空间等情况发生时,系统应将某进程换 出。 其过程是:系统首先选择处于阻塞状态且优先级最低 的进程作为换出进程,然后启动盘块,将该进程的程序和 数据传送到磁盘的对换区上。若传送过程未出现错误,便 可回收该进程所占用的内存空间,并对该进程的进程控制 块做相应的修改。
页表 页号 块号
02 13 26 38 49 5
… …
…
n页
图 4-11 页表的作用
内存
0 1 2 3 4 5 6 7 8 9 10
第四章 存 储 器 管 理
4.3.2 地址变换机构
1. 基本的地址变换机构 越界中断
页表寄存器
页表始址 页表长度
>
逻辑地址L 页号(3) 页内地址
+
页号
块号
0
1
1
2
3
请求分配 u.size 分区
检索空闲分区链(表)
无法分配
否
返回
空闲分区 总和≥u.size?
是 进行紧凑形 成连续空闲区
修改有关的 数据结构
否
找到大于u.size
的可用区否?
按动态分区方式 进行分配
修改有关的 数据结构
图 4-10 动态分区分配算法流程图
返回分区号 及首批
第四章 存 储 器 管 理
3. 动态运行时装入方式(Denamle Run-time Loading)
动态运行时的装入程序,在把装入模块装入内存 后,并不立即把装入模块中的相对地址转换为绝对地 址,而是把这种地址转换推迟到程序真正要执行时才进 行。因此, 装入内存后的所有地址都仍是相对地址。
第四章 存 储 器 管 理
4.1.2 程序的链接
第四章 存 储 器 管 理
4.2.2 固定分区分配
1. 划分分区的方法 (1) 分区大小相等, 即使所有的内存分区大小相等。 (2) 分区大小不等。
第四章 存 储 器 管 理
2. 内存分配
图 4-4 固定分区使用表
第四章 存 储 器 管 理
4.2.3 动态分区分配
1. 分区分配中的数据结构
(1) 空闲分区表。 (2) 空闲分区链。
第四章 存 储 器 管 理
2. 可重定位装入方式(Relocation Loading Mode)
0
1000 LOAD 1,2500
2500 365
5000 作业地址空间
10000 11000 LOAD 1,2500
12500
365
15000
内存空间
图 4-2 作业装入内存时的情况
第四章 存 储 器 管 理
第四章 存 储 器 管 理
2) 页面大小
在分页系统中的页面其大小应适中。页面若太小,一方 面虽然可使内存碎片减小,从而减少了内存碎片的总空间, 有利于提高内存利用率,但另一方面也会使每个进程占用较 多的页面,从而导致进程的页表过长,占用大量内存; 此 外,还会降低页面换进换出的效率。然而,如果选择的页面 较大,虽然可以减少页表的长度,提高页面换进换出的速 度,但却又会使页内碎片增大。因此,页面的大小应选择得 适中,且页面大小应是2的幂,通常为512 B~8 KB。
1) 方便编程 2) 信息共享 3) 信息保护 4) 动态增长 5) 动态链接
1. 页面
1) 页面和物理块
分页存储管理,是将一个进程的逻辑地址空间分成若干个 大小相等的片,称为页面或页,并为各页加以编号,从0开 始,如第0页、第1页等。相应地,也把内存空间分成与页面相 同大小的若干个存储块,称为(物理)块或页框(frame), 也同样 为它们加以编号,如0#块、1#块等等。在为进程分配内存 时,以块为单位将进程中的若干个页分别装入到多个可以不相 邻接的物理块中。由于进程的最后一页经常装不满一块而形成 了不可利用的碎片,称之为“页内碎片”。
前
后
向
向
指
指
针
针
N
N个字节可用 N
+
+
2
2
00ຫໍສະໝຸດ 图 4-5 空闲链结构第四章 存 储 器 管 理
2. 分区分配算法 (1) 首次适应算法FF。 (2) 循环首次适应算法,该算法是由首次适应算法演变而成的。 (3) 最佳适应算法。
第四章 存 储 器 管 理
从头开始查表
3. 分区分配操作
1) 分配内存
…
…
0 1 2 3 4 5 6 7
114 115
1468
内存空间
第四章 存 储 器 管 理
逻辑地址
外部页号 外部页内地址 页内地址
P1
P2
d
外部页表寄存器 +
+
… …
外部页表
页表
b
d
物理地址
图 4-15 具有两级页表的地址变换机构
第四章 存 储 器 管 理
2. 多级页表
对于32位的机器,采用两级页表结构是合适的;但对于 64位的机器,如果页面大小仍采用4 KB即212 B,那么还剩 下52位, 假定仍按物理块的大小(212位)来划分页表,则将 余下的42位用于外层页号。此时在外层页表中可能有4096 G个页表项, 要占用16384 GB的连续内存空间。 必须采用 多级页表,将外层页表再进行分页,也是将各分页离散地 装入到不相邻接的物理块中,再利用第2级的外层页表来映 射它们之间的关系。
1. 静态链接方式(Static Linking)
0 模块A
0
CALL B;
L-1 Return;
L-1
模块 A
JSR“L” Return;
0 模块B
L
模块 B
M-1
CALL C; Return;
0 模块C
JSR“L+M” L+M-1 Return;
L+M 模块C
N-1 Return;
L+M+N-1 Return;
对于64位的计算机,如果要求它能支持264(=1844744 TB)规模的物理存储空间,则即使是采用三级页表结构也是 难以办到的;而在当前的实际应用中也无此必要。
第四章 存 储 器 管 理
4.4 基本分段存储管理方式
4.4.1 分段存储管理方式的引入
引入分段存储管理方式, 主要是为了满足用户和程序员 的下述一系列需要:
2. 动态重定位的实现
0 100
LOAD1,2500
2500 365
相对地址 2500
重定位寄存器 10000
10000 10100
LOAD1,2500
+
12500
365
5000 作业J
15000
处理机一侧 存储器一侧
主存
图 4-9 动态重定位示意图