内部碎片和外部碎片

内部碎片和外部碎片

内部碎片

当内存被划分为一个个的块时,就会发生内部碎片。当一个函数请求内存时,内存块会分配给该函数。当分配给函数的内存超过所请求的内存时,那么已分配内存和所请求的内存之间的未使用的内存就是内部碎片。

在这里插入图片描述
上图清除显示了内部碎片,因为分配的内存与所请求的内存之间的未使用部分称为内部碎片。

外部碎片

当有足够大的内存可以提供给内存的请求时,就会发生外部碎片。虽然这些外部碎片很大,但是它们是不连续的,所以不能够使用。

在这里插入图片描述

在上图中,可以看到,有55KB的空间可以运行一个进程7(需要50KB),但是这个内存是不连续的,因此不能使用。所以,使用压缩,分页或分段的方法利用空闲空间来运行进程。

内部碎片和外部碎片区别

内部碎片外部碎片
1解决内部碎片的方法就是最佳适应模块解决外部碎片的方法是压缩,分页,分段
2当内存被划分为固定大小的块时发生内部碎片当内存根据进程的大小划分为可变大小的分区时,发生外部碎片
3分配的内存和使用的内存之间的未使用内存称为内部碎片在非连续的内存碎片之间形成的未使用空间太小,无法为新进程服务
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值