计算机操作系统第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的分区时,系统用下面的算法 回收该分区。
操作系统第五章答案

第五章设备管理1、试说明设备控制器的组成。
P163答:设备控制器的组成由设置控制器与处理机的接口;设备控制器与设备的接口;I/O 逻辑。
2、为了实现CPU与设备控制器间的通信,设备控制器应具备哪些功能?P162-P163 答:基本功能:接收和识别命令;数据交换;标识和报告设备的状态;地址识别;数据缓冲;差错控制。
3、什么是字节多路通道?什么是数组选择通道和数组多路通道?P164-P165 答:1、字节多路通道:这是一种按字节交叉方式工作的通道。
它通常都含有许多非分配型子通道,其数量可从几十到数百个,每个子通道连接一台I/O 设备,并控制该设备的I/O 操作。
这些子通道按时间片轮转方式共享主通道。
只要字节多路通道扫描每个子通道的速率足够快,而连接到子通道上的设备的速率不是太高时,便不致丢失信息。
2、数组选择通道:字节多路通道不适于连接高速设备,这推动了按数组方式进行数据传送的数组选择通道的形成。
3、数组多路通道:数组选择通道虽有很高的传输速率,但它却每次只允许一个设备数据。
数组多路通道是将数组选择通道传输速率高和字节多路通道能使各子通道(设备)分时并行操作的优点相结合而形成的一种新通道。
它含有多个非分配型子通道,因而这种通道既具有很多高的数据传输速率,又能获得令人满意的通道利用率。
4、如何解决因通道不足而产生的瓶颈问题?P166答:解决“瓶颈”问题的最有效的方法,便是增加设备到主机间的通路而不增加通道,就是把一个设备连接到多个控制器上,而一个控制器又连接到多个通道上。
多通路方式不仅解决了“瓶颈”问题。
而且提高了系统的可靠性,因为个别通道或控制器的故障不会使设备和存储器之间没有通路。
5、试对VESA及PCI两种总线进行比较。
P167答:1、VESA 该总线的设计思想是以低价位迅速点领市场。
VESA 总线的带宽为32 位,最高传输速率为132Mb/s。
VESA 总线仍存在较严重的缺点,它所能连接的设备数仅为2—4 台,在控制器中无缓冲,故难于适应处理器速度的不断提高,也不能支持后来出现的Pentium 微机。
计算机操作系统第五章设备管理复习资料

第五章设备管理(一)简答题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对数据的执行同时进行。
操作系统-第五章

3.在移臂调度算法中()算法可能会随时改变移动臂的移动方向。
A.电梯调度B.先来先服务
C.双向扫描D.最短寻找时间优先
4.SPOOLING是对脱机I/O方式的模拟,SPOOLING系统中的输出井是对脱机输出中的()的模拟,输出程序是对脱机输出中的()进行模拟。
A.内存输出缓冲区B.磁盘
8.用户编制程序时使用的设备与系统分配的实际设备无关,把这种特性称为()
9.执行一次磁盘输入输出操作所花的时间分成寻找时间、延迟时间和()三个部分。
10.磁盘的驱动调度主要分成移臂调度和()两种。
11.磁盘上的一个物理块由三个参数来定位,首先把移动臂移动并定位在不同盘面上具有相同编号的磁道位置,表示该位置的参数称()
一、单项选择题
1.绘图仪是
A.独占设备B.共享设备
C.有时是独占设备,有时是共享设备D.常用的字符输出设备
2.共享设备是指那些()的设备。
A.任意时刻都可以同时为多个用户服务
B.可以为多个用户服务
C.只能为一个用户服务
D.一个作业还没有撤离就可以为另一个作业同时服务,但每个时刻只为一个用户服务
3.共享型设备是可被多个用户作业同时使用的设备,其中"同时"的含义是()
18.设磁盘的转速为3000转/分,盘面划分成10个扇区,则读取一个扇区的时间为( )
A.20ms B.3ms C.2ms D.1ms
19.一个含6个盘片的双面硬盘,盘片每面有100个磁道,则该硬盘的柱面数为
A.12B.250C.100D.1200
20.当两个进程访问同一柱面、同一扇区、不同磁道的时候()
A.主存B.通道C.磁盘D.寄存器
精品文档-计算机操作系统教程(第二版)(徐甲同)-第5章

第5章 文件系统
这种结构的优点是文件可以动态增、删,也不必事先提出文 件的最大长度。由于可以不连续分配,因此不会造成几块连续区 域的浪费。其缺点是只适合顺序存取,不便于直接存取;为了找 到后面块的信息,必须从头开始,逐一查找每块的链接字,从而 降低了查找速度。其次,由于在每块都设置了链接字而破坏了物 理信息的完整性。
第5章 文件系统
2. 串联结构 串联结构也称链接结构。这种结构不要求所分配的各物理块 是连续的,也不必按顺序排列。为了使系统能方便地找到逻辑上 连续的下一块的物理位置,在每个物理块中设置一个指针(或称 链接字),它指向该文件的下一个物理块号。图 5.3 给出了一 个串联结构文件的例子。假定文件A的 4 个逻辑记录分别存放在 物理块 22、18、27 和 30 中。它的第一物理块号由文件说明指 出,其余的物理块号由上一物理块中的链接字给出,最末一块的 链接字NULL表示该文件的最末一块。
第5章 文件系统
图 5.1 记录式文件 (a) 定长记录文件;(b) 变长记录文件
第5章 文件系统
对于主要用于处理文本文件(如源程序、中间代码、文本格 式加工和编辑)的系统来说,记录并不是必需的。比如,用户源 程序本来就是一个顺序的字符流,如果硬要把它划分为若干个记 录,则并无益处。当然,在某些情况下,记录的概念还是需要的。 但是从精简系统的目标出发,不妨就提供这种无结构文件。采用 这种文件组织,并不妨碍灵活组织文件的内部逻辑结构。
第5章 文件系统
按文件信息的流向,文件又可分为三类: (1) 输入文件:例如键盘输入文件,只能输入。 (2) 输出文件:例如打印机文件,只能输出。 (3) 输入输出文件:在磁盘、磁带上的文件,既可读,又可 写。
第5章 文件系统
在UNIX操作系统中,文件按组织和处理方式分为三类: (1) 普通文件:由内部无结构的一串平滑的字符构成的文件。 这种文件既可以是系统文件,也可以是库文件或用户文件。 (2) 目录文件:由文件目录构成的一类文件。对它的处理 (读、写、执行)在形式上与普通文件相同。 (3) 特别文件:由一切输入输出慢速字符设备构成的文件。 这类文件对于查找目录、存取权限验证等的处理与普通文件相似, 而其它部分的处理要针对设备特性要求做相应的特殊处理。 根据存取方法和物理结构,文件还可以划分为不同类型,这 些划分在后面的章节中将进一步介绍。
计算机操作系统 第5章 死 锁

5.2
死 锁 预 防(Deadlock Prevention) -2
所有进程对资源的请求必须严格按资源序号递增的次序提出。 这样在所形成的资源分配图中不可能再出现环路,因而摒弃 了“环路等待”条件,在采用这种策略时总有一个进程占据 了较高序号的资源,它继续请求的资源必然是空闲的,因而 进程可以一直向前推进。这种预防死锁的策略可以提高资源 利用率,但在进程使用各类资源的顺序与系统规定的顺序不 同时会造成资源浪费的情况。 • 资源按级分配法 该方法是把资源递增排序成若干等级(如L1、L2…….Lm), 其中每级可包含几类资源,要求每个进程在获得了Lj级中资 源之后 ,它才能申请更高级的LK(LK>Lj)级中的资源;如 果它还需申请比LK级低的LI级(LI<LK)资源,则必须先释放 所有大于LI级的资源。该方法是Haveder 1968年在设计IBM/ 360 OS时提出的,资源共分三级,第一级数据集或文件,第 二级主存,第三级I/O设备。
5.2
死 锁 预 防(Deadlock Prevention) -1
3。破坏请求和保持条件 破坏请求和保持条件 系统可采用资源静态予分配方式 资源静态予分配方式来破坏请求保持条件。系 资源静态予分配方式 统要求所有进程一次性地申请在整个运行过程中全部资源, 若系统有足够资源满足给进程,则在运行前,一次性将其所 需要的所有资源分配给该进程。这样该进程在整个运行期间, 便不再提出资源要求,从而摒弃了请求条件。这种预防死锁 的方法,优点是简单、易予实现且很安全,但其资源利用率 很低,进程也延迟运行。 4。破坏循环等待条件 破坏循环等待条件 • 有序资源使用法 该方法将所有的资源按类型进行线性排队,并赋予不同的 序号。例如令输入机的序号为1,打印机序号为2,磁盘机序 号为3等。
《计算机操作系统》第5章 处理机调度

♦ 是指单位时间内系统完成作业的个数。 ♦ 显然,若处理的长作业多,则系统吞吐率低;若处理的短作业多,则系
统吞吐率高。 ♦ 系统吞吐率是评价批处理系统性能的重要指标。 3.分时系统调度算法常用评价准则 ►响应时间 ♦ 是指用户提交一个请求到系统响应(通常是系统有一个输出)的时间间
►FCFS调度算法是一种非抢占式调度算法。
5.2.1 先来先服务调度算法
►以低级调度为例,讨论FCFS调度算法的性能。各进程的调度顺序及详细 执行情况如图5-3所示。表5-2列出了各进程的周转时间、带权周转时间等 调度性能指标值。
5.2.1 先来先服务调度算法
►优点:FCFS调度算法简单、易于实现。
5.2.1 先来先服务调度算法
►先来先服务(First Come First Served,FCFS)调度算法是一种最简单 的调度算法。
►既可以用于高级调度,又可以用于低级调度。
►按照作业或进程到达系统的先后次序进行调度的。 ♦ 用于高级调度时,每次从后备队列中选择一个或多个最先进入该队列的 作业,将它们调入内存,为它们分配资源、创建进程,然后将进程链接 到就绪队列。 ♦ 用于低级调度时,每次从就绪队列中选择一个最先就绪的进程,把CPU 分派给它,使之投入运行,一直到该进程运行完毕或阻塞后,才让出 CPU。
5.2.2 短进程(作业)优先调度算法
►Shortest Process First,SPF 或 Shortest Job First,SJF ►该 算 法 优 先 选 择 短 进 程 ( 作 业 ) 投 入 运 行 , 可 分 别 用 于 高 级 调 度 和 低 级 调
5.2 常用调度算法
5.2.1 先来先服务调度算法 5.2.2 短进程(作业)优先调度算法 5.2.3 轮转调度算法 5.2.4 优先级调度算法 5.2.4 最高响应比优先调度算法 5.2.4 多级队列调度算法 5.2.4 多级反馈队列调度算法
操作系统第5章设备管理

第5章 设备管理
5.1 概述 5.2 I/O控制 5.3 I/O软件层次 5.4 缓冲管理 5.5 设备分配 5.6 磁盘调度和管理
操作系统第5章设备管理
5.1 概述
5.1.1 设备分类 5.1.2 设备控制器 5.1.3 设备通道
操作系统第5章设备管理
设备的种类和数量越来越多,结构也越来越复杂, 为了管理上的方便,通常按不同的观点,从不同的角 度对设备进行分类。
1
300
2000
0
250
1850
1
250
720
操作系统第5章设备管理
3.通道方式处理过程
⑴ 当进程要求设备输入数据时,CPU发出启动指令, 并指明要进行的I/O操作、使用设备的设备号和对应的 通道。
⑵ 通道接收到CPU发来的启动指令后,把存放在内 存的通道处理程序取出,开始执行通道指令。
⑶ 执行一条通道指令,设置对应设备控制器中的控 制状态寄存器。
操作系统第5章设备管理
第5章 设备管理
5.1 概述 5.2 I/O控制 5.3 I/O软件层次 5.4 缓冲管理 5.5 设备分配 5.6 磁盘调度和管理
操作系统第5章设备管理
5.3 I/O软件层次
5.3.1 I/O软件的目标 5.3.2 I/O中断处理程序 5.3.3 I/O设备驱动程序 5.3.4 与设备无关的I/O软件 5.3.5 用户空间的I/O软件
操作系统第5章设备管理
2. 局部总线(Local Bus) 1) VESA(Video Electronic Standard Association)总线 2) 2) PCI(Peripheral Component Interface)总线
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
3
5.1.1 存储层次结构
第一层次是高速、昂贵而容量很小的高速缓冲存 储器(Cache)和寄存器; 第二层次是速度快、价格高而数据易丢失的内存 和磁盘缓存; 第三层次是速度较低、价格低廉、容量极大而存 储内容不易丢失的外存和可移动磁盘介质,如硬 盘、光盘、U盘等。
4
5.1.1 存储层次结构
绝对和可重定位装入模块
符号地址 程序 JUMP i i LOAD j j DATA 2224 1424 LOAD 2224 1200 绝对地址 1024 JUMP 1424 400 LOAD 1200 相对地址 0 JUMP 400
(a)目标模块
(b)绝对装入模块 (c)相对装入模块
程序的装入
2. 可重定位装入方式(Relocation Loading Mode) 把在装入时对目标程序中的指令和数据地址的修改过程 称为重定位。 对于相对装入模块,应采用可重定位装入方式来把装入 模块装入内存。 装入相对装入模块时,装入程序要将模块的起始地址与 内存某位置的地址相加,才能将模块定位到正确的物理地址, 同样,模块中的指令地址和数据地址都要相应修改。 因地址变换只是在装入时一次完成,以后不再改变,故 称为静态重定位。
27
5.3 分区存储管理
5.3.2 固定分区管理
固定分区式分配是最简单的一种可运行多道程序的存 储管理方式。这是将内存用户空间划分为若干个固定 大小的区域,在每个分区中只装入一道作业,这样, 把用户空间划分为几个分区,便允许有几道作业并发 运行。 当某一分区空闲时,便可以从外存的后备作业队列中 选择一个适当大小的作业装入该分区,当该作业结束 时,又可再从后备作业队列中找出另一作业调入该分 区。
程序的链接
实现链接的方法有三种:静态链接、装入时动态链 接和运行时动态链接。 装入模块 目标模块 1、静态链接:
0
需要解决的 两个问题: 1、对相对地 址进行修改 2、变换外部 调用符号
L-1 0
模块A CALL B: RETURN 模块B CALL C: RETURN 模块C
0
M-1
0
模块B JSR “L+M” L+M-1 RETURN L+M 模块C L+M+N-1 RETURN
29
5.3 分区存储管理
分区号 大小KB 1 2 3 4 12 32 64 128 地址KB 20 32 64 128 状态 已分配 已分配 64KB 已分配 128KB 已分配 作业C 24KB 32KB 操作系统 作业A 作业B
…...
(a) 分区分配表
256KB (b) 存储空间分配情况
5.2 地址重定位
一个逻辑地址空间的程序装入到物理地址空 间时,由于两个空间不一致,需要进行地址变换, 称为地址重定位。 此时,相对地址空间(也称为逻辑地址空间) 通过地址重定位机构转换到绝对地址空间(也称 为物理地址空间)。
15
5.2 地址重定位
地址空间是逻辑地址的集合,存储空间是物 理地址的集合。名字空间、地址空间和存储空间 的关系如图5.2所示
寄存器具有与处理机相同的速度,故对寄存器的访问
速度最快,完全能与CPU协调工作,但价格却十分昂贵, 因此容量不可能做得很大。
6
5.1.1 存储层次结构
3.高速缓冲存储器
高速缓存是现代计算机结构中的一个重要部件, 它是介于寄存器和存储器之间的存储器,主要用 于备份主存中较常用的数据,以减少处理机对主 存储器的访问次数,这样可大幅度地提高程序执 行速度。高速缓存容量远大于寄存器,而比内存 约小两到三个数量级左右,从几十KB到几MB, 访问速度快于主存储器。
计算机操作系统
第5章 内存管理
1
目
录
5.1 5.2 5.3 5.4 5.5 5.6 5.7
概述 地址重定位 分区存储管理 页式存储管理 段式与段页式存储管理 内存扩充技术 虚拟存储管理
2
学习目标
了解存储管理的目的与功能,熟悉各种存储器管 理的方式及其实现方法。 了解重定位、虚拟存储器的概念以及其技术。 掌握分区、页式、段式与段页式存储管理的实现 原理和实现方法。 掌握虚拟存储器中的页面置换算法及请求分页系 统性能分析。
10
5.1.2 存储管理目的和任务
2.地址映射
内存中往往同时存放多个作业程序,而这些程序在内存中 的位置是不能预先知道的,所以用户在编写程序时不能使 用绝对地址。 计算机的指令中地址部分所指示的地址通常是逻辑地址, 用户按逻辑地址编写程序。当要把程序装入运行时,操作 系统要为其分配一个合适的内存空间,必须把逻辑地址转 换成物理地址才能得到信息的真实存放处。把逻辑地址转 换成物理地址的工作称为地址转换。
作业装入内存时的情况 10000
11000 LOAD 1,12500 LOAD 1,2500
0
1000 2500 365
12500
365
15000
5000 作业地址空间
内存空间
程序的装入
3. 动态运行时的装入方式(Dynamic Run-time Loading) 多道程序环境下,程序在内存的位置可能要经常改 变,如进程的换入换出,每次换入到内存的位置一般是不 同的,这样,就应采用动态运行时的装入方式。 动态运行时的装入程序,把装入模块装入内存后, 并不立即把装入模块中的相对地址转换为绝对地址,而是 等到程序真正要执行时才进行地址转换(转换时机的把握)。 因此,装入内存后的所有地址仍是相对地址。为使地址转 换不影响指令的执行速度,这种方式需要一定的特殊硬件 的支持。
13
5.1.2 存储管理目的和任务
4.内存扩充
为方便用户编写程序,使用户编写程序时不受内存实际容 量的限制,可以采用一定的技术扩充内存容量,得到比实 际容量更大的内存空间。 这里的扩充不是对物理内存容量的扩充,而是指利用存储 管理技术为程序的运行提供一个比实际内存更大的逻辑存 储空间,即所谓的虚拟存储管理技术。 当一个大型的程序要装入内存时,可先把其中的一部分装 入内存,其余部分存放在磁盘上,如果程序执行中需要用 到不在内存中的信息时,则由操作系统采用覆盖技术将其 14 调入内存。
28
5.3 分区存储管理
5.3.2 固定分区管理
1. 划分分区的方法 (1) 分区大小相等(指所有的内存分区大小相等)。 (2) 分区大小不等。将内存划分出多个较小的分区,适 量的中等分区和少量的大分区。 2. 内存分配 为了便于内存分配,通常将分区按其大小进行排队,并 为之建立一张分区使用表,其中各表项包括每个分区的起始 地址、大小及状态(是否已分配),如图5.5所示。
L-1 L
模块A JSR “L” RETURN
N-1
RETURN
图b 程序链接示意图
程序的链接
2. 装入时动态链接(Load-time Dynamic Linking) 这是指将用户源程序编译后所得到的一组目标模块, 在装入内存时,采用边装入边链接的链接方式。即在装入 一个目标模块时,若发生一个外部模块调用事件,将引起 装入程序去找出相应的外部目标模块,并将它装入内存, 还要按照图b所示的方式修改目标模块中的相对地址。装 入时动态链接方式有以下优点: (1) 便于修改和更新。 (2) 便于实现对目标模块的共享。
寄存器 第一层次 高速缓冲存储器 内存 磁盘缓存 第三层次 固定磁盘 可移动磁盘介质 访问速度变快 容量变小 价格变高
第二层次
图 5.1 存储层次结构
5
5.1.1 存储层次结构
1.内存
主存储器简称内存或主存,是计算机系统中的主要部 件,用于保存进程运行时的程序和数据,也称可执行存储 器。
2.寄存器
8
5.1.2 存储管理目的和任务
操作系统的存储管理机构必须尽可能方便用户 和提高内存的使用效率,使内存在成本、速度 和规模之间获得较好的权衡
1.内存分配 2.地址映射 3.内存共享与保护 4.内存扩充
9
5.1.2 存储管理目的和任务
1.内存分配
各个作业装入内存时,必须按照规定的方式向操作系统提 出申请,由存储管理进行统一分配。
11
5.1.2 存储管理目的和任务
3.内存共享与保护
所谓内存空间共享,一方面是指采用多道程序设计技术使 若干个程序同时进入内存,各自占用一定数量的存储空间, 即共享内存资源,共同使用一个内存; 另一方面是指若干个作业有共同的程序段或数据段时,可 将这些共同的程序段或数据段存放在某个存储区域内,各 作业执行时都可访问它们,即共享内存的某些区域。 内存共享使得内存中不仅有系统程序,而且还有若干道用 户程序。为了避免内存中的多道程序相互干扰,必须对内 存中的程序和数据进行保护。 12
程序的装入和链接
图a
对用户程序的处理步骤
程序的装入
1. 绝对装入方式(Absolute Loading Mode) 编译时,若知道程序将驻留在内存的某位置,则编译 程序将产生绝对地址的目标代码,绝对装入程序按照装入 模块的地址,将程序和数据直接装入指定内存。该地址既 可在编译和汇编时给出,也可以由程序员直接赋予。程序 员直接给出绝对地址,使得程序修改时很可能要修改所有 地址。因此宁可在程序中采用符号地址,在编译时再去转 换成绝对地址。单道程序环境下,可用此种方式。 而在多道程序环境下,目标模块的起始地址通常从0 开始,程序中的其他地址,都相对于起始地址计算。这样 的模块称为相对装入模块。
7
5.1.1 存储层次结构
4.磁盘缓存
由于目前磁盘的I/O速度远低于对主存的访问速度,为 了缓和两者之间在速度上的不匹配,而设置了磁盘缓存, 主要用于暂时存放频繁使用的一部分磁盘数据和信息,以 减少访问磁盘的次数。但磁盘缓存与高速缓存不同,它本 身并不是一种实际存在的存储器,而是利用主存中的部分 存储空间暂时存放从磁盘中读出(或写入)的信息。主存也 可以看作是辅存的高速缓存,因为,辅存中的数据必须复 制到主存方能使用,反之,数据也必须先存在主存中,才 能输出到辅存。