计算机操作系统第5章-存储管理第一部分

合集下载

操作系统原理第5章 存储管理

操作系统原理第5章 存储管理

• ⑶最佳适应算法
• 最佳适应算法的空闲链是按空闲区从小到大顺序排 列。为进程选择分区时总是寻找其大小最接近进程 所要求的存储区域。所谓“最佳”是指每次为进程 分配内存时,总是把能满足要求、又是最小的空闲 分区分配给进程,避免“大材小用”。
• 因为每次分配后所切割下来的剩余部分总是最小的, 这样将加速碎片的形成。
• ①如果被回收空闲分区没有空闲伙伴分区,那么保留该分区为一 个独立的空闲分区,否则执行②;
• ②合并回收分区及其伙伴分区,从而得到一个尺寸(2I+1)更大的 回收空闲分区,转移到①;
一个伙伴系统内存分配与回收的例子
• 伙伴系统克服了固定分区和动态分区存储管理技术的缺陷。但是伙伴 系统存在一个问题,即内存空间需要不断地进行分裂和合并,频繁的 伙伴分区合并操作会浪费很多时间。
• ③内存分配原则,以页帧为单位来分配内存,将进程若干个逻辑上连续的 页面装入若干个离散的页帧中,由页表提供进程的页号到存储空间帧号的 映射。
5.2.4伙伴系统
• 其实现原理如下: • 一个伙伴系统内存的用户可用空间为2U。进程申请存储空间时,
系统总是为其分配大小为2I的一个空闲分区。其中S≤I≤U,2S是系 统允许的最小分区尺寸。在实际操作系统中,最小分区尺寸一般 为212。 • 如果进程申请的存储空间大小为K,且2I-1<K≤2I,则将整个2I大小的 分区分配给该进程;否则,该分区被分割成两个大小相等的伙伴 分区,大小为2I-1;再判断K是否满足条件:2I-2<K≤2I-1,若满足条件, 则将两个伙伴中的任何一个分配给该进程。否则,将其中一个伙 伴又分成两个大小相等的伙伴分区;此过程一直继续进行,直到 产生的分区满足条件I-J≥S并2I-J-1<K≤2I-J,将2I-J大小的分区分配给该 进程;当I-J-1<S时,系统不再分割成两个大小相等的伙伴分区,将 2S大小的分区分配给该进程。 • 当进程执行完毕,释放一个尺寸为2I的分区时,系统用下面的算法 回收该分区。

Linux课程介绍-第五章(1)

Linux课程介绍-第五章(1)

2.进程系统堆栈 每个进程都有一个系统堆栈,用来保存中断现场信息和进 程进入内核模式后执行子程序(函数)嵌套调用的返回现 场信息。 每个进程的系统堆栈和task_struct数据结构之间存在 紧密联系,因而二者物理存储空间也连在一起 系统堆栈的大小静态确定,用户堆栈可在运行时动态扩展
5.2.3 对进程的操作 1.进程的创建 各个进程构成了树形的进程族系 内核在引导并完成了基本的初始化以后,就有 了系统的第一个进程(即初始化进程,实际上 是内核线程)。除此之外,所有其他的进程和 内核线程都由这个原始进程或其子孙进程所创 建。 除初始化进程外,其他进程都是用系统调用 fork( )和clone( )创建的。 fork( )是全部复制 ,而clone( ) 有选择地 复制
●进程控制系统用于进程管理、进程同步、进程通 信、进程调度和内存管理等。 ●内存管理控制内存分配与回收。
●文件系统管理文件、分配文件空间、管理空闲空 间、控制对文件的访问并为用户检索数据。 ●Linux系统支持三种类型的硬件设备:字符设备、 块设备和网络设备。 ●核心底层的硬件控制负责处理中断以及与机器通 信。
• 内核所在的地址空间称作内核空间 • 其他应用程序称为外部管理程序,大部分是对外围设 备进行管理和界面操作,外部管理程序和用户进程所 占据的地址空间成为外部空间
Linux内核概述
Unix内核用C语言写成 单一内核:所有的操作系统功能均被封装 在内核中,与外部程序处于不同的地址空 间。外部程序智能通过功能调用来访问内 核 微内核:内核只提供最基本、最核心的一 部分操作,如创建和删除任务、中断管理、 进程管理、存储器管理、进程间通信等, 而其他功能如文件系统、网络协议栈则在 内核外操作。
3.进程的终止

计算机操作系统第五章设备管理复习资料

计算机操作系统第五章设备管理复习资料

第五章设备管理(一)简答题1、为什么要在设备管理中引入缓冲技术?解:缓冲技术是用来在两种不同速度的设备之间传输信息时平滑传输过程的常用手段。

在OS的设备管理中,引入缓冲技术的主要原因可归结为以下几点。

(1)缓和CPU与I/O设备间速度不匹配的矛盾。

一般情况下,程序的运行过程是时而进行计算,时而进行输入或输出。

以打印机输出为例,如果没有缓冲,则程序在输出时,必然由于打印机的速度跟不上而使CPU停下来等待;然而在计算阶段,打印机又无事可做。

如果设置一个缓冲区,程序可以将待输出的数据先输出到缓冲区中,然后继续执行;而打印机则可以从缓冲区取出数据慢慢打印。

(2)减少中断CPU的次数。

例如,假定设备只用一位二进制数接收从系统外传来的数据,则设备每接收到一位二进制数就要中断CPU一次,如果数据通信速率为9.6Kb/s,则中断CPU的频率也是9.6KHz,即每100us就要中断CPU一次,若设置一个具有8位的缓冲寄存器,则可使CPU被中断的次数降低为前者的1/8。

(3)提高CPU和I/O设备之间的并行性。

由于在CPU和设备之间引入了缓冲区,CPU可以从缓冲区中读取或向缓冲区写入信息,相应地设备也可以向缓冲区写入或从缓冲区读取信息。

在CPU工作的同时,设备也能进行输入输出操作,这样,CPU和I/O设备就可以并行工作。

2、引入缓冲的主要原因是什么?P155【解】引入缓冲的主要原因是:●缓和CPU和I/O设备速度不匹配的矛盾;●减少对CPU的中断频率,放宽对中断响应时间的限制●提高CPU和I/O设备之间的并行性。

3、请简述为什么要在核心I/O子系统中要引入缓冲机制(Buffering)。

答:引入缓冲的主要原因:(1)缓和CPU与I/O设备间速度不匹配的矛盾。

(2)减少对CPU的中断频率,放宽对中断响应时间的限制。

(3)提高CPU与I/O设备之间的并行性。

4、简述SPOOLing(斯普林)系统的工作原理。

解:多道程序并发执行后,可利用其中的一道程序来模拟脱机输入时外围控制机的功能,将低速I/O设备上的数据传送到高速磁盘上;再利用另一道程序来模拟脱机输出时外围控制机的功能,将高速磁盘上的数据传送到输出设备上,这样就可以在主机的直接控制下,实现脱机输入、输出操作,这时外围操作与CPU对数据的执行同时进行。

第5章计算机操作系统答案 存储管理

第5章计算机操作系统答案 存储管理

第五章存储管理一、选择题: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.提高CPU效率D.代码在主存中共享12在内存分配的“最佳适应法”中,空闲块是按()。

操作系统(1~8章的课后习题答案)

操作系统(1~8章的课后习题答案)

1.1:存储程序式计算机的主要特点是:集中顺序过程控制(1)过程性:模拟人们手工操作(2)集中控制:由CPU集中管理(3)顺序性:程序计数器1.2:a:批处理系统的特点:早期批处理有个监督程序,作业自动过渡直到全部处理完,而脱机批处理的特点:主机与卫星机并行操作。

b:分时系统的特点:(1):并行性。

共享一台计算机的众多联机用户可以在各自的终端上同时处理自己的程序。

(2):独占性。

分时操作系统采用时间片轮转的方法使一台计算机同时为许多终端上同时为许多终端用户服务,每个用户的感觉是自己独占计算机。

操作系统通过分时技术将一台计算机改造为多台虚拟计算机。

(3):交互性。

用户与计算机之间可以进行“交互会话”,用户从终端输入命令,系统通过屏幕(或打印机)将信息反馈给用户,用户与系统这样一问一答,直到全部工作完成。

c:分时系统的响应比较快的原因:因为批量操作系统的作业周转时间较长,而分时操作系统一般采用时间片轮转的方法,一台计算机与许多终端设备连接,使一台计算机同时为多个终端用户服务,该系统对每个用户都能保证足够快的响应时间,并提供交互会话功能。

1.3:实时信息处理系统和分时系统的本质区别:实时操作系统要追求的目标是:对外部请求在严格时间范围内做出反应,有高可靠性和完整性。

其主要特点是资源的分配和调度首先要考虑实时性然后才是效率。

此外,实时操作系统应有较强的容错能力,分时操作系统的工作方式是:一台主机连接了若干个终端,每个终端有一个用户在使用。

用户交互式地向系统提出命令请求,系统接受每个用户的命令,采用时间片轮转方式处理服务请求,并通过交互方式在终端上向用户显示结果。

用户根据上步结果发出下道命。

分时操作系统将CPU 的时间划分成若干个片段,称为时间片。

操作系统以时间片为单位,轮流为每个终端用户服务。

每个用户轮流使用一个时间片而使每个用户并不感到有别的用户存在。

分时系统具有多路性、交互性、“独占”性和及时性的特征。

计算机操作系统教程(张尧学(第三版)第五章

计算机操作系统教程(张尧学(第三版)第五章

精品课程系列-计算机学院版权所有
关于动态地址重定位可以如下图所示的过程说明:
制 作 者 : 郭 平 、 王 在 模 、 何 静 媛
用户程序的虚地址空间 0 100 1KB 0 内存 基地址寄存器 操作系统 22628 22KB 22528
XXXXX
20KB 22KB 22KB+100 XXXXXX
制 作 者 : 郭 平 、 王 在 模 、 何 静 媛
精品课程系列-计算机学院版权所有
动态地址重定位
制 作 者 : 郭 平 、 王 在 模 、 何 静 媛
动态地址重定位是在程序执行过程中,在CPU访问 内存之前,将要访问的程序或数据地址转换成内存地 址。动态地址重定位依靠硬件地址变换机构完成。
硬件地址转换机构一般由一个“基地址寄存器” 和一个“虚地址寄存器”组成,用户程序不做任何修 改地装入分配给它的存储区域。当调度到用户程序运 行时,则转换成实际的物理地址。
精品课程系列-计算机学院版权所有
分区的分配与释放
制 作 者 : 郭 平 、 王 在 模 、 何 静 媛
分区的分配: 若采用的是一个队列的管理方案,则当一个分区被释放时, 需要在队列中选出一个作业运行,可以有以下几种方案: (1)选出第一个可容纳的作业。该方案虽然实现简单,选择 率高,但是可能会因为一个小作业进入而浪费掉该分区的大部分 存储空间,存储利用率不高。 (2)在队列中找出该分区能容纳的最大的作业。由于每个分 配出的分区产生出的内部碎片小,因此,此方案存储空间的利用 率高;缺点是对小作业不公平。
22kb10022kb300023kbd图51地址变换示意图郭平王在模何静媛其中程序a中的一条入口地址为3000的一条指令为call100其中程序a中的一条入口地址为3000的一条指令为call100在装入内存之后由于程序的起始地址不再为0故程序中的指令需要做相应的转换

计算机四级网络工程师-操作系统原理-第5章内存管理

计算机四级网络工程师-操作系统原理-第5章内存管理计算机四级网络工程师-操作系统原理-第5章内存管理单选题可变分区管理方案,看内存分配表各类适应算法下次适应算法最优适应算法最坏适应算法首次适应算法,系统中剩余的最大空闲分区静态重定位中,从哪个单元获取操作数各类置换算法各类置换算法看内存分配情况表——实战最近最少使用页面置换算法(LRU)先进先出页面置换算法(FIFO)最近最不常用页面置换算法(LFU)最近未使用页面置换算法(NRU)涉及计算【真题讲解】页式管理存储第66题快表命中率花费us计算简单页式存储管理问最大有多少个页面问最大有多少字节问页表长度(页表项个数)写保护中断各个置换算法的缺页率(建议放弃这一题分,比较容易搞混,需要理解各个置换算法并画图表)LRU页面置换算法OPT最佳页面置换算法八进制的计算(先八进制转换成二进制再计算)虚拟页式存储管理(求偏移量题目)题目直接给二进制,直接进行数位数偏移题目直接给16进制,转换为二进制后进行数位数偏移虚拟页式的有效位、修改位、访问位、保护位、禁止位单页存放整数变量个数和循环代码计算缺页次数一般情况通解:两个循环次数相乘,除单页个数答案有整数×整数形式使用快表和不使用快表相比较,求平均访问时间降低x%需要直接记忆单选多选题需要直接记忆多选单选题可变分区管理方案,看内存分配表下次适应算法最优适应算法最坏适应算法首次适应算法,系统中剩余的最大空闲分区这种题目一定要学习画图,画出变化趋势和具体数值静态重定位中,从哪个单元获取操作数第28题:在操作系统的存储系统中,程序装入时采用静态重定位方法。

已知:第18号单元外有一条加法指令,该指令要求处第066号单外取得操作数1234。

假设存储管理为程学分配的内存区域是众第800号开始,则加法指令将从哪一个单元获取操作数:答案——866置换算法策略先进先出页面置换算法(FIFO)将驻留在内存中时间最长的一页调出最先装入内存的一页调出最近最少使用页面置换算法(LRU)最长时间未被使用过的页面距离现在最长时间没有被访问的页面最近最不常用页面置换算法(LFU)一段时间单页面被使用的次数多少选择一段确定的周期T内,使用次数最少最近未使用页面置换算法(NRU)在最近的一个【时钟滴答】中尽量置换一个没有被访问的和没有被修改过的页面理想页面置换算法(OPT)以后不再需要的、或者在最长时间以后才会用到的页面第二次机会页面置换算法检查进入内存时间最久页面的R位,如果是0,则置换该页;如果是1,就将R位清0,并把该页面放到链表的尾端,修改其进入时间【重点就是会放到链表尾端,画图表时注意】各类置换算法各类置换算法看内存分配情况表——实战最近最少使用页面置换算法(LRU)先进先出页面置换算法(FIFO)最近最不常用页面置换算法(LFU)最近未使用页面置换算法(NRU)涉及计算【真题讲解】页式管理存储第60题:在分区管理方法中,假设程序A自60K处开始存放,到124K为止。

计算机操作系统教程


信息传输、控制协调等工作,为用户提供一个统一的界面,标
准的接口,用户通过这一界面实现所需的操作和使用系统的资
源,但操作和计算是在哪一台计算机上执行或使用哪个计算机
的资源则由操作系统自动完成,用户不用知道,即分布或操作
系统是透明的。
返回本节
中国水利水电出版社
计算机操作系统教程
1.3 操作系统的基本概念 • 1.3.1 操作系统的定义 • 1.3.2 操作系统的基本功能 • 1.3.3 操作系统的特征
返回本节
中国水利水电出版社
计算机操作系统教程
1.2 操作系统的发展历史 • 1.2.1 无操作系统的计算机 • 1.2.2 单道批处理系统与多道 批处理系统及执行系统 • 1.2.3 分时系统 • 1.2.4 实时系统 • 1.2.5 微机操作系统、网络操 作系统与分布式操作系统
返回本章首页
中国水利水电出版社
第7章 Windows 98中文版的使用
• 本章学习目标 • 7.1 文件和文件夹的管理 • 7.2 磁盘驱动器的管理 • 7.3 附件 • 7.4 打印机的管理 • 7.5 Windows 98 的设置
中国水利水电出版社
计算机操作系统教程
• 欢迎您使用
计算机操作系统教程
主 编:柯敏毅
结束放映
中国水利水电出版社
中国水利水电出版社
计算机操作系统教程
第3章 进程管理
•3.1 引言 •3.2 进程的引入和定义 •3.3 进程的状态和进程控制块 •3.4 进程控制 •3.5 线程的基本概念 •3.6 进程调度 •3.7 进程通信 •3.8 死锁问题
中国水利水电出版社
计算机操作系统教程
第4章 存储管理
• 4.0 • 4.1 • 4.2 • 4.3 • 4.4

操作系统第二版第五章课后习题答案

第五章存储管理作业答案2、6、10、13、15、162、解释下列概念:物理地址、逻辑地址、逻辑地址空间、内存空间、重定位、静态重定位、动态重定位、碎片、紧缩、可重定位地址。

物理地址——内存中各存储单元的地址由统一的基地址顺序编址,这种地址称为物理地址。

逻辑地址——用户程序经编译之后的每个目标模块都以0为基地址顺序编址,这种地址称为逻辑地址。

逻辑地址空间——由程序中逻辑地址组成的地址范围叫做逻辑地址空间。

内存空间——由内存中的一系列存储单元所限定的地址范围称作内存空间。

重定位——把逻辑地址转变为内存物理地址的过程叫做重定位。

静态重定位——在目标程序装入内存时所进行的重定位。

动态重定位——在程序执行期间,每次访问内存之前进行的重定位。

碎片——在分区法中,内存出现许多容量太小、无法被利用的小分区称作“碎片”。

紧缩——移动某些已分配区的内容,使所有作业的分区紧挨在一起,而把空闲区留在另一端,这种技术称为紧缩。

可重定位地址——当含有它的程序被重定位时,将随之被调整的一种地址。

6、什么是虚拟存储器?它有哪些基本特征?参考答案:虚拟存储器是用户能作为可编址内存对待的虚拟存储空间,在这种计算机系统中实现了用户逻辑存储器与物理存储器分离,它是操作系统给用户提供的一个比真实内存空间大得多的地址空间。

虚拟存储器的基本特征是:虚拟扩充——不是物理上,而是逻辑上扩充了内存容量;部分装入——每个作业不是全部一次性地装入内存,而是只装入一部分;离散分配——不必占用连续的内存空间,而是“见缝插针”;多次对换——所需的全部程序和数据要分成多次调入内存。

10、某虚拟存储器的用户编程空间共32个页面,每页为1KB,内存为16KB。

假定某时刻一个用户页表已调入内存的页面页号和物理块号如表5-1所示。

则逻辑地址0A5C(H)所对应的物理地址为。

表5-1 页表中页号和物理块号对照表参考答案:0A5C(H)换成二进制:页号为2,查表,对应物理块号为4,与页内地址拼接成物理地址:再转换为十六进制,即125C(H)13、已知段表如表5-2所示。

操作系统学习资料-第五章 存储管理习题

第五章存储管理一. 选择最合适的答案1.分页存储管理的存储保护是通过( )完成的.A.页表(页表寄存器)B.快表C.存储键D.索引动态重定2.把作业地址空间中使用的逻辑地址变成内存中物理地址称为()。

A、加载B、重定位C、物理化D、逻辑化3.在可变分区存储管理中的紧凑技术可以()。

A.集中空闲区B.增加主存容量C.缩短访问时间D.加速地址转换4.在存储管理中,采用覆盖与交换技术的目的是( )。

A.减少程序占用的主存空间B.物理上扩充主存容量C.提高CPU效率D.代码在主存中共享5.存储管理方法中,( )中用户可采用覆盖技术。

A.单一连续区 B. 可变分区存储管理C.段式存储管理 D. 段页式存储管理6.把逻辑地址转换成物理地址称为()。

A.地址分配B.地址映射C.地址保护D.地址越界7.在内存分配的“最佳适应法”中,空闲块是按()。

A.始地址从小到大排序B.始地址从大到小排序C.块的大小从小到大排序D.块的大小从大到小排序8.下面最有可能使得高地址空间成为大的空闲区的分配算法是()。

A.首次适应法B.最佳适应法C.最坏适应法D.循环首次适应法9.硬盘容量1G,内存容量为1024k,那么虚拟存储器最大实际容量可能是( ) 。

A.1024KB.1024MC.10GD.10G+1M10.用空白链记录内存空白块的主要缺点是()。

A.链指针占用了大量的空间B.分配空间时可能需要一定的拉链时间C.不好实现“首次适应法”D.不好实现“最佳适应法”11.一般而言计算机中()容量(个数)最多.A.ROMB.RAMC.CPUD.虚拟存储器12.分区管理和分页管理的主要区别是()。

A.分区管理中的块比分页管理中的页要小B.分页管理有地址映射而分区管理没有C.分页管理有存储保护而分区管理没有D.分区管理要求一道程序存放在连续的空间内而分页管理没有这种要求。

13.静态重定位的时机是()。

A.程序编译时B.程序链接时C.程序装入时D.程序运行时14.通常所说的“存储保护”的基本含义是()A.防止存储器硬件受损B.防止程序在内存丢失C.防止程序间相互越界访问D.防止程序被人偷看15.能够装入内存任何位置的代码程序必须是( )。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

03:31:22
2
5.1 5.2 5.3 5.4
式)
程序的装入和链接 连续分配存储管理方式 覆盖和对换 分页存储管理方式(离散分配方
5.5 分段存储管理方式 作业
返回开始
03:31:22 3
一个计算机系统由计算子系统、存 储子系统和I/O子系统组成。出于性能与 价格的权衡考虑,存储子系统通常由多 种不同的存储介质共同构成。
单用户单任务系统中。
03:31:22
BACK 返回本节目录 NEXT
28
三、动态运行时装入方式 dynamic run-time loading 绝对装入方式,只能将程序装入到内存中事先 指定的地址。 多道程序环境下,不可能事先知道每一道程序 在内存中的位置,该方式只适合于单道程序环境。
03:31:22
03:31:22
BACK 返回本节目录 NEXT
18
再者,程序是相对编址的可浮动的程序,这些程 序被装入主存时就需重定位。
综上所述,目前关于主存储器管理的主要研究课
题归纳为四个方面:
03:31:22
BACK 返回本节目录 NEXT
19
(1)主存分配:是存储管理研究的主要内容。 本章将研究各种主存分配算法,以及每种算 法所要求的数据结构,但不涉及某个具体的存储
BACK 返回本节目录 NEXT
29
可重定位装入方式,可将程序装入到内存中的任 何允许的地方,可用于多道程序环境,但它不允许程 序在运行时,在内存中移动。
因为,程序在内存中移动,要求相应地改变它们
的物理地址,必须对程序和数据的地址(绝对地址)进 行修改,才能正常运行。
03:31:22
BACK 返回本节目录 NEXT
03:31:22
4
Cache还可以再分三层:片内一级和二级,片外Cache
寄存器 内存 外存 粗层次图
寄存器 Cache 内存 盘交换区(辅存)
联机外存 海存(脱机外存) 细层次图 外存
自顶向下,存取速度越来越慢,成本越来越低,容量越来越大,存取频度越来越低
03:31:22
5
任一程序对计算机的使用,首先是对内 存的使用(先装入内存), 然后是对处理 机的使用,再后才是通过处理机实现对 I/O设备与文件等其他资源的使用。
以什么为单位进行编址呢?早期的计算机中,存
储器是按字组织,每个字分配一个地址。 目前多数计算机以字节为单位进行编址。
03:31:22
BACK 返回本节目录 NEXT
16
为了更多的存放并更快地处理用户信息,目前许 多计算机把存储器分为三级(高速缓冲存储器、主存储 器和外部存储器),用户的程序在运行时应存放在主存
30
但在多进程并发运行中,程序在内存中的 位置,需要经常进行改变。这种情况下,应采 用动态运行时装入方式。
03:31:22
BACK 返回本节目录 NEXT
31
动态运行时的装入程序,将程序装入内存后,并 不立即把程序中的相对地址转换为绝对地址,而是当
程序真正执行时才进行转换。这叫动态重定位
(dynamic relocating address)。需要硬件支持。
03:31:22
14
整个计算机系统的功能很大程度上取决于主存储 器的结构组织和实现方法,就主存的功能而言,首先
是存放系统和用户程序的指令和数据,每一项信息都
存放在主存的特定位置上。
03:31:22
BACK 返回本节目录 NEXT
15
信息在主存是按“位”存放的。为了能对信息进 行访问,要对这些位置进行编号,这些编号称为地 址。
03:31:22
BACK 返回本节目录 NEXT
32
5.1.2
程序的链接
链接是将一组目标模块及它们所需的库函数, 装配成一个装入模块。
必须将目标模块中的相对地址和外部调用符号 转换成装入模块中的统一的相对地址。
方法有三种:静态链接,装入时动态链接和运 行时动态链接。
03:31:22
BACK 返回本节目录 NEXT
03:31:22
BACK 返回本节目录 NEXT
25
一、绝对装入方式absolute loading mode P119 二、可重定位装入方式relocatable loading mode
03:31:22
BACK 返回本节目录 NEXT
26
可重定位装入程序,根据内存的当前使用情 况,将程序装入到内存的某个位置,把有效地址
03:31:22
BACK 返回本节目录 NEXT
38
二、装入时动态链接 load-time dynamic linking 是指,程序编译形成若干个目标模块,在装入内 存时,边装入边链接。即在装入一个目标模块时,发
生一个外部模块调用,将引起装入程序去找相应的外
部目标模块,并将它装入内存。
03:31:22
03:31:22
BACK 返回本节目录 NEXT
23
编 译 程 序 产 生 的 目 标 模 块
内存

链接程序
装入模块
装入程序
第一步编译
第二步链接
第三步装入
03:31:22
BACK 返回本节目录 NEXT
24
5.1.1 程序的装入 单个目标模块,是如何装入内存的。三种方式:
(1)绝对装入方式。程序中使用绝对地址,只适用于单道程序环境。
03:31:22
6
内存是指用来存放当前正在运行的程序的代码 和数据及其数据的,是程序中指令本身地址所 指的,亦即程序计数器所指的,亦即CPU取指 时所用地址所隐含访问的那个存储层次。 内存并不是绝对不可缺少的,但内存的存在可 以达到性能与价格的更好权衡 操作系统内存管理功能的大部分内容,是为了 解决内存速度与容量不足的问题。它实现的是 与硬件相关和应用无关的内容。
03:31:22 7
帕金森Parkinson定律:存储器 有多大,程序就会有多大。程序 的增大正好填满增大的存储器。
03:31:22
8
计算机领域,历史总是在重复自身。当
最简单的存储管理方案不再用于台式机
时,这些方案仍被一些掌上电脑、嵌入
式系统和智能卡系统所采用。
03:31:22
9
内存管理的功能和任务
(相对地址)与本程序在内存中的起始地址相加,
得到正确的物理地址。
03:31:22
BACK 返回本节目录 NEXT
27
指令地址和数据地址同样都要进行修改,我们把
装入时对程序中的指令和数据地址进行 修改的过程称为重定位(即进行地址转换)。
这种地址变换若只是在装入时一次完成的,称为 静态重定位(static relocating address)。用在早期的
硬件相关和应用无关的内容
1、如何才能使用户和用户程序不涉及内存物理细节:操 作系统、编译程序和硬件共同完成。 2、如何为用户程序完成程序装入工作:操作系统在编译 程序的配合下完成。 3、如何提高内存利用率和弥补用户对内存容量要求与内 存实际容量之间的差距。 4、如何解决内存速度与CPU速度不匹配的问题。 5、如何满足系统和用户的安全要求。内存保护 6、如何满足用户程序的动态扩缩要求 7、共享 8、代价
管理系统的程序。
读者只要掌握了算法,了解其数据结构,就可 以编写一个程序模块了。
03:31:22
BACK 返回本节目录 NEXT
20
(2)地址映象或重定位:主要研究各种软件和硬件的地址 转换技术和机构。
(3)存储保护:研究如何保护各程序区中信息不被破坏和 偷窃。
03:31:22
BACK 返回本节目录 NEXT
中。所以把那些不马上使用的程序、数据放在外部存
储器(又称次级存储)中。当用到时再把它们读入主存。
03:31:22
BACK 返回本节目录 NEXT
17
主存储器管理中的研究课题
单道程序阶段,人们研究了覆盖技术道程序系统出现后,主存容量不足的矛盾更为 突出。由于多道程序共享主存,所以对主存的管理工 作又出现了如何在各程序间分配主存空间的问题。同 时还要考虑如何防止各程序有意无意地互相干扰和破 坏的问题。
03:31:22
BACK 返回本节目录 NEXT
12
许多操作系统之间最明显的区别特征之一是所使
用的存储管理方法不同。
主存储器管理技术分为两大类: 实存储器管理和虚拟存储器管理。 本章研究常用的几种实存储管理技术。下章将讨论 虚拟存储管理技术
03:31:22
BACK 返回本节目录 NEXT
13
实存储管理技术: 分连续分配和离散分配。 连续分配又分:单一连续、固定分区、可变分区和动 态重定位可变分区。 离散分配分:分页、分段和段页式。 虚拟存储管理技术: 请求分页、请求分段和段页虚拟式。 对每一种管理方式从以下五个方面来理解并掌握:分 配、去配(释放或回收)、地址重定位、保护(防止 地址越界和控制正确存取)和共享。
21
(4)存储器扩充:用存储管理软件来实现逻辑上的扩充---即所谓的虚拟存储技术。
03:31:22
BACK 返回本节目录 NEXT
22
如何使一个用户程序到内存中去执行,分如下几步: (1)编译。Compile:转换成机器指令,将符号地址转换
为内存地址。
(2)链接。Link:将各模块中的相对地址统一转换成相对 于该程序起址的位移。 (3)装入。Load 本节,简要地讲述了程序的链接和装入过程。
BACK 返回本节目录 NEXT
39
它的优点: 1、便于软件版本的修改和更新 采用装入时动态链接方式,可比较容易的修改
或更新各个目标模块,而静态链接方式下,形成的
装入模块,要重新打开装入模块来修改,一般是不 可能的。
03:31:22
相关文档
最新文档