问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

内部碎片和外部碎片的区别

创作时间:
作者:
@小白创作中心

内部碎片和外部碎片的区别

引用
1
来源
1.
https://geek-docs.com/operating-system/os-ask-answer/the-difference-between-internal-and-external-debris.html

操作系统中有两种类型的碎片,即内部碎片和外部碎片。

内部碎片化:

当内存被分成安装大小的块时,就会发生内部碎片。每当请求内存的方法时,都会将已安装大小的块分配给该方法。在分配给方法的内存比请求的内存稍大的情况下,分配的内存和请求的内存之间的差异称为内部碎片。


上图清楚地显示了内部碎片,因为分配的内存与所需空间或内存之间的差异称为内部碎片。

外部碎片:

当内存中有足够数量的区域来满足方法的内存请求时,就会发生外部碎片。但是,由于提供的内存是不连续的,因此无法满足进程的内存请求。无论您应用最适合还是最适合的内存分配策略,它都会导致外部碎片。


在上图中,我们可以看到,有足够的空间(55 KB)来运行一个 process-07(需要 50 KB),但内存(片段)不是连续的。在这里使用压缩、分页或分段来使用可用空间来运行进程。

内部碎片和外部碎片的区别:

编号
内部碎片
外部碎片
1
在内部分片固定大小的内存中,分块被指定处理。
在外部碎片中,可变大小的内存块被指定给方法。
2
当方法或进程小于内存时,会发生内部碎片。
删除方法或进程时会发生外部碎片。
3
内部碎片的解决方案是最佳拟合块。
外部碎片的解决方案是压缩和分页。
4
内存被划分为固定大小的分区时会发生内部碎片。
当内存根据进程的大小划分为可变大小的分区时,就会发生外部碎片。
5
分配的内存与所需的空间或内存之间的差异称为内部碎片。
不连续的内存碎片之间形成的未使用空间太小,无法为新进程服务,这称为外部碎片。
6
内部碎片发生在分页和固定分区上。
外部碎片发生在分段和动态分区中。
7
内部碎片发生在将进程分配到大于进程要求的分区时。剩余空间会导致系统性能下降。
外部碎片发生在将进程分配给更大的分区时,该分区与所需的内存空间完全相同。
8
内部碎片发生在最差的内存分配方法中。
外部碎片以最佳拟合和首次拟合内存分配方法发生。
© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号