b2科目四模拟试题多少题驾考考爆了怎么补救
b2科目四模拟试题多少题 驾考考爆了怎么补救

操作系统内存管理的内部碎片与外部碎片

电脑杂谈  发布时间:2020-06-15 19:25:09  来源:网络整理

电脑分区太多_碎片太多分区失败_分区助手分区失败

外部碎片:因为行程持续地被载入与置换,使得可用的记忆体空间被分割成许多不连续的区块。
虽然记忆体所剩空间总和足够让新行程执行,却因为空间不连续,导致程式无法载入执行。

内部碎片:发生在以固定长度分割区来进行配置的记忆体中当一个程式载入到固定大小的分
割区时,假如程式小于分割区,则剩余的空间将无法被使用,称为内部碎片。
利用聚集或分页可以消除外部碎片。



“碎片内存”描述了系统中所有不可用的空闲内存. 这些资源仍未使用的原因是,负责分配内存的分配器使内存无法使用. 通常会出现此问题,因为空闲内存以小的,不连续的方式出现在不同的位置. 由于分配方法确定是否存在内存碎片问题,因此内存分配器在确保可用资源的可用性方面起着重要作用.

内部碎片: 当分配给进程的内存大于请求的内存时碎片太多分区失败

这两个数字之间的区别是内部碎片.

外部碎片: 当总内存空间满足请求时,外部碎片就会存在

但不是连续的. 存储被分成几小块.

在内存管理中,内部碎片是指已分配的内存空间大于请求所需的内存空间.

外部碎片是指尚未分配的可用内存空间块,但是它太小而无法分配给新的空间申请过程.

固定分区中有内部片段,可变分区中有外部片段;

页面型虚拟存储系统具有内部碎片;分段虚拟存储系统具有外部碎片

碎片太多分区失败_分区助手分区失败_电脑分区太多

为了有效地使用内存并减少内存碎片,必须对内存进行分页. 内存以页为单位使用. 最后一页通常不完整,因此形成内部碎片.

为了共享段,在切入和切出段时会形成外部片段. 例如,换出5K段后,一个4k段进入并放置在原始5k位置,因此形成了1k个外部片段.

--------------------------------------------------- -------------------------------------------------- --------

内存是一种宝贵但有限的资源. 一流的操作系统需要能够有效地管理和利用内存.

有四种方法为程序分配内存:

1,连续分配方法

2. 基本的分页存储管理方法

3. 基本分段存储管理方法

4. 段页面存储管理方法

连续分配方法

分区助手分区失败_碎片太多分区失败_电脑分区太多

首先讨论连续分布. 连续分配方法出现较早,并且在1960年代至1970年代的OS中得到了广泛使用,但是直到今天,它仍在内存管理方法中占有一席之地,因为它实现起来更方便并且需要最少的硬件支持. 连续分配方法可分为四种: 单一连续分配,固定分区分配,动态分区分配和动态重定位分区分配.

固定分区分配方法,因为分区是固定的,缺乏灵活性,也就是说,当程序太小时,会造成内存空间的浪费;当程序太大时,一个分区不足以容纳该分区,从而使程序无法运行. 但是,即使这样,当计算机控制多个相同的对象时,由于这些对象具有相同的内存大小,因此可以完全使用这种内存管理方法,这是最有效的. 在这里,我们可以看到内存管理机制的性: 也就是说碎片太多分区失败,没有这样的内存管理机制是完全没有用的. 在适当的情况下,被认为是最不合理的分配方案可以称为最有效的分配方案. . 一切都必须基于实际问题并进行设计.

为了解决固定分区分配方法缺乏灵活性的问题,出现了一种动态分配方法. 动态分配方法使用一些查找表来查找可以满足程序需求的可用内存分区. 但是这样做的代价是增加了系统操作的开销,而空闲内存表本身就是一个文件,不可避免地会占用一部分宝贵的内存资源,并且某些算法会增加内存碎片.

可重定位的分区分配是通过定位程序来实现的,因此可以移动存储块,将小块组装为大块,将小空闲“压缩”为大空闲,并释放更大的内存以适应新的计划流程.

基本分页存储管理方法

连续分配方法将形成许多“碎片”. 尽管可以以``紧凑''的方式将许多片段拼接到可用的较大空间中,但必须为此付出很多开销. 因此,提出了``离散分布''的思想. 如果离散分配的基本单位是页面,则称为分页管理方法. 如果离散分配的基本单位是段,则称为段管理方法.

分页存储管理是将一个进程的逻辑地址空间划分为多个大小相等的部分,称为页面或页面,并从0开始,例如从页面0,页面1等开始,对每个页面进行编号. 内存空间也分为与页面大小相同的几个存储块,称为(物理)块或页面框架(帧),并且它们也已编号,例如0#块,1#块等. 分配内存时对于一个流程,流程中的多个页面被加载到多个物理块中,这些物理块可以是不连续的. 由于该过程的最后一页通常填充有一个块,因此形成了无法使用的片段,这些片段称为“页面片段”.

在分页系统中,允许将进程的每个页面离散地存储在内存中的不同物理块中,但是系统应该能够确保进程的正确操作,即与每个进程相对应的物理块页面可以在内存中找到. 为此,系统为每个进程创建了一个页面映射表,称为页面表. 进程地址空间中的所有页面在页面表中都有一个页面条目,该条目将相应页面的相应物理块号记录在内存中. 配置页表后,执行该过程时,通过查找表,可以找到内存中每个页的物理块号. 可以看出,页表的作用是实现从页码到物理块号的地址映射.

为了能够将用户地址空间中的逻辑地址转换为内存空间中的物理地址,必须在系统中安装地址转换机制. 地址转换任务是通过页表完成的.

页表的功能可以通过一组特殊寄存器来实现. 由于寄存器的昂贵成本和大多数现代计算机的大页表,页表条目的总数可能达到数千甚至数十万. 显然,这些页表条目不能全部用寄存器实现. 因此,页表大多数驻留在内存中. 因为某个进程始终可以通过其PCB保存自己的状态,并等待直到CPU必须对其进行处理,所以它将把PCB移交给寄存器. 因此,尽管系统中可以运行多个进程,但是只需要一个页表寄存器. 也是.

由于页表存储在内存中,因此导致CPU在每次访问数据时两次访问内存. 为了提高地址转换速度,在地址更改机制中添加了具有并行查询功能的告诉缓冲区寄存器,也称为“关联后备缓冲区”.

在单级页面表的基础上,为了适应非常大的逻辑地址空间,存在两级和多级页面表,但是它们的原理与单级页面相同表,仅适应地址要增加转换级别,必须在地址转换机制中添加外页表寄存器.

基本分段存储管理方法

分段存储管理方法的目的主要是为了在编程和使用的许多方面满足用户(程序员)的要求,其中有些是其他存储管理方法难以满足的. 因此,这种存储管理方法已成为当今所有存储管理方法的基础.

(1)易于编程;

(2)信息共享: 寻呼系统中的“页面”仅仅是存储信息的物理单元(块),它们没有完整的含义,也不便于共享;但是,段是信息的逻辑单元. 可以看出,为了实现段的共享,希望存储器管理能够适应用户程序段的组织.

(3)信息保护;

(4)动态增长;

(5)动态链接.

分段管理和分页管理的方式在实现思想上非常相似,但是它们的基本单位不同. 有一个用于分段的分段表和一个地址转换机制. 为了提高检索速度,还添加了Lenovo寄存器. 因此,此处将不再重复一些具体细节.

分页和细分之间的主要区别:

1. 两者之间的相似点: 两者都使用离散分配,并且地址转换必须通过地址映射机制来实现.

2. 两者之间的区别:

(1)分页是信息的物理单位,分页是实现离散分配方法,以减少内存的外部部分并提高内存的利用率. 换句话说,分页仅是由于系统管理的需要,而不是用户的需要. 段是信息的逻辑单元. 它包含相对完整的信息集. 细分的目的是为了更好地满足用户的需求.

(2)页面的大小是固定的,并且由系统确定,但是段的长度不是固定的.

(3)分页的作业地址空间是一维的,即单个线性地址空间;分段的作业地址空间是二维的.

分段页面存储管理方法

前面介绍的分页和分段存储管理方法各有优缺点. 分页系统可以有效提高内存利用率,而分段系统可以很好地满足用户的需求. 我们希望结合两者的优点,因此有一种分段的页面存储管理方法.

段页面系统的基本原理是分段和分页原理的结合,即将用户程序划分为多个段,然后将每个段划分为多个页面,并为每个段指定一个段名称. 在段页系统中,地址结构由段号,段中的页号和页中的地址组成.

与前两种存储管理方法一样,分段页面存储管理方法也需要添加Lenovo寄存器.

离散分配方法基于将进程直接分配到许多不相邻的分区的思想,并分为分页存储管理,分段存储管理和分段分页存储管理. 分页存储管理旨在提高内存利用率,以满足系统管理的需求,分段存储管理旨在满足用户(程序员)的需求,并且在共享和保护方面优于分页存储管理,而分段页面存储管理则是两者的结合利用了缺点,即它具有分段系统的优势,该系统易于实现,可共享,易于保护并且可以动态链接. 它还可以解决外部碎片以及分页系统的问题,并且可以为每个段单独分配内存. 该问题显然是一种更有效的存储管理方法.


本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-246544-1.html

    相关阅读
      发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

      热点图片
      拼命载入中...