内部碎片(internal fragmentation)和外部碎片(external fragmentation)的区别

在文件系统的上下文中,碎片化是一种对存储空间的低效利用,它将单个文件的内容存储在磁盘上的不同位置,而不是存储在一个位置的单个连续位序列中。碎片是一种自然现象,它发生在硬盘驱动器上,有时也发生在内存模块上,因为数据在驱动器上写得不够紧密。...

在文件系统的上下文中,碎片化是一种对存储空间的低效利用,它将单个文件的内容存储在磁盘上的不同位置,而不是存储在一个位置的单个连续位序列中。碎片是一种自然现象,它发生在硬盘驱动器上,有时也发生在内存模块上,因为数据在驱动器上写得不够紧密。

数据有时会被无序写入,这意味着由于文件的频繁使用,数据块不会彼此相邻地放置在驱动器上。这些数据片段称为片段。在某个时刻,操作系统需要访问文件系统以找到不同片段在驱动器上的位置。

例如,当你创建一个新文档时,比如说一个word文件;文件似乎在一个地方。你可以打开文件,编辑或删除它-无论你想要什么。所有的活动似乎都是在路上进行的,至少你是这么想的。

硬盘驱动器可能正在设备的一个区域中保存文件块,但它的其余部分实际上存在于存储设备的其他地方。简单地说,碎片是指文件系统中浪费的存储空间,允许在文件的不同部分之间产生间隙。

碎片基本上发生在动态内存分配系统中,因为它为文件保留了太多的空间,从而导致文件周围出现开放区域。

 

什么是内部碎片(internal fragmentation)?

它在某种程度上与固定大小的分区有关。系统根据程序的需要将程序和进程划分成小块,从而将内存分配给各种程序和进程。然而,有时分配的内存比进程所需的要多,这最终会导致多余的内存被浪费或闲置。

例如,内存只能分配给可被4、8或16整除的块中的程序。当一个进程请求24个字节时,它通常得到32个字节的块,多余的8个字节就不用了。因此,未使用的内存驻留在一个特定的分配位置中,而且内存非常小,无法为其分配新的进程,从而导致浪费。这种废物被称为内部碎片。消除这种碎片的唯一方法可能是动态内存分配。

内部碎片(internal fragmentation)和外部碎片(external fragmentation)的区别

 

什么是外部碎片(external fragmentation)?

主存储器在分配的存储器中太小而不能容纳任何进程的部分之间形成孔。这是存储分配算法的缺点,当连续块的未使用空间无法服务于新请求时,因为空间太小,无法满足大内存应用程序的需要。简单地说,不连续的块在内存中创建了洞,导致未使用的存储在分配的区域之外,这意味着它不能与主内存一起用于更大的内存任务。它们最终被孤立,无法从内存空间中完全消除。这称为外部碎片。它可以通过压缩来移除,压缩将内存的内容洗牌,从而将所有可用内存放在一起。

内部碎片(internal fragmentation)和外部碎片(external fragmentation)的区别

 

内部和外部碎片的区别

  1. 基础

内部碎片:

内部碎片是指当分配给一个进程的内存超过需要时所浪费的额外空间。它通常发生在将固定大小的内存块分配给程序或进程时。

外部碎片:

相反,外部碎片是指在彼此不相邻的连续内存块之间形成的未使用的空间。

  1. 发生

内部碎片:

当分配给进程的内存大于进程请求的内存时,在分配的内存块中形成的可用空间称为内部碎片。“内部”是指驻留在较大内存块中的未使用字节。

外部碎片:

当主内存形成的洞太小而不能满足任何请求时,就称为外部碎片。

  1. 原因

内部碎片:

发生内部碎片的主要原因是内存被划分为固定大小的块。

外部碎片:

外部碎片是内存根据不同进程的大小划分为不同大小的块时出现的一种现象。

  1. 解决方案

内部碎片:

内部碎片是一种自然现象,可以通过动态内存分配来消除,动态内存分配是指根据进程的请求动态地将内存块的一部分分配给进程,并在程序执行期间不再需要时释放内存块。

外部碎片:

另一方面,外部碎片可以通过压缩、分页和分段来消除,以便可以以非连续的方式将内存分配给进程。

内部碎片与外部碎片:比较图

总结 - 内部的(of internal) vs. 外部碎片(external fragmentation)

内部和外部碎片都是与未使用的内存空间或内存被浪费有关的自然现象。当分配给进程的内存大于请求的内存时,内部碎片会导致内存分配效率低下,从而在内存块中留下未使用的空间,最终导致内部碎片。当进程从物理内存中删除后,可用空间会到处分布,并且找不到相邻的内存块,从而导致外部碎片。然而,这两种现象都是可以避免的。内部碎片可以通过动态地将内存分配给进程来减少,而外部碎片可以通过压缩、分页和分段来避免。

  • 发表于 2021-06-25 07:48
  • 阅读 ( 401 )
  • 分类:IT

你可能感兴趣的文章

克莱诺碎片(klenow fragment)和dna聚合酶1(dna polymerase 1)的区别

...与DNA聚合酶1以表格形式 6. 摘要 什么是克莱诺碎片(klenow fragment)? Klenow片段是DNA聚合酶1的很大一部分。与DNA聚合酶1不同,Klenow片段缺乏5′至3′核酸前向核酸酶域,因此没有5′至3′核酸外切酶活性。Klenow片段是用一种叫做枯草...

  • 发布于 2020-09-18 15:44
  • 阅读 ( 552 )

内部的(internal)和外部经营环境(external business environment)的区别

内部和外部业务环境的关键区别在于,内部环境是特定的,对业务有直接影响,而外部环境对所有业务组都有影响,而不仅仅是一个特定的业务。 分析企业的内外部环境对企业的成功非常重要。此外,内部环境也称为微环境...

  • 发布于 2020-10-17 02:19
  • 阅读 ( 1307 )

多重裂变(multiple fission)和碎片化(fragmentation)的区别

...变从一个单一的母体细胞产生许多个体。 什么是碎片化(fragmentation)? 分裂是无性繁殖的一种形式,在这种情况下,母体有机体只会分裂成几块,每一块都会成长为一个全新的个体或母体的克隆体。此外,这种繁殖方式在丝状真...

  • 发布于 2020-10-20 20:34
  • 阅读 ( 270 )

裂变(fission)和碎片化(fragmentation)的区别

...素有很大的不同,这是一个核嬗变过程。 什么是碎片化(fragmentation)? 化学中的碎裂是离子与分子的分离。在这里,能量不稳定的离子可能离开分子。此外,这发生在质谱仪的电离室内。产生的产物称为碎片。此外,这些碎片可...

  • 发布于 2020-10-23 03:32
  • 阅读 ( 232 )

碎片(fragmentation)和再生(regeneration)的区别

...排比较-表格形式的碎片化与再生 6. 摘要 什么是碎片化(fragmentation)? 分裂是一个有机体的一部分被打破,然后有丝分裂细胞分裂的过程。它是一种无性生殖方式,不涉及减数分裂。此外,这个断裂的部分可以发展成一个独立的...

  • 发布于 2020-10-23 13:20
  • 阅读 ( 239 )

碎片化(fragmentation)和萌芽(budding)的区别

碎片化(fragmentation)和萌芽(budding)的区别 繁殖是产生新生物(后代)的机制。有两种基本的生殖方式:有性生殖和无性生殖。有性生殖发生在双亲之间,而无性生殖是由单亲进行的。有性生殖的结果是后代的遗传多样性和独特...

  • 发布于 2020-10-25 03:21
  • 阅读 ( 382 )

内部的(internal)和外部审计(external audit)的区别

内部的(internal)和外部审计(external audit)的区别 审计过程是组织长期生存和成功的重要方面之一。董事会设审计委员会,对公司审计过程的有效性进行评审。内部审计和外部审计是审计过程的两个主要组成部分。内部审计和外...

  • 发布于 2020-10-25 21:14
  • 阅读 ( 1085 )

内部的(internal)和外部碎片(external fragmentation)的区别

...空间将被分配,而不是连续的。 什么是内部碎片(internal fragmentation)? 考虑上图中遵循的是固定大小的内存分配机制。最初,内存是空的,分配器将内存划分为固定大小的分区。随后,三个名为A、B、C的程序被加载到前三个分区...

  • 发布于 2020-10-29 14:06
  • 阅读 ( 313 )

什么是磁盘碎片?我还需要碎片整理吗?

Do modern computers still need the kind of routine defragmentation procedures that older computers called for? Read on to learn about fragmentation and what modern operating systems and file systems do to minimize performance impacts. 今天的问答环节是由SuperUser提供的,SuperUser是Stack...

  • 发布于 2021-04-12 03:43
  • 阅读 ( 218 )

内部的(internal)和外部环境(external environment)的区别

...态、空气、水、矿物质等构成生物体内外环境的总和。 内部维持生命的液体,允许维持交换和包围细胞,形成内部环境。内部环境对细胞的正常功能很重要。生物体生存的周围环境构成了外部环境。 生物体内外环境之间的联系...

  • 发布于 2021-06-25 07:09
  • 阅读 ( 373 )
qga9h2bg0py
qga9h2bg0py

0 篇文章

相关推荐