操作系统内存分配算法

位图算法

概念: 这种位图即二维数组,通过二维数组来保存内存的使用情况,每个位的值代表这个块的使用情况,0为空闲,1为被占用。
优点: 查找快;对于内存的管理比较清晰可见。
缺点: 需要通过遍历的方式才能知道哪些内存是可以使用的,并且这种内存分配方式不能避免内存碎片的问题。

链式算法

概念: 这种分配算法通过链表来保存和维护块的使用信息,它包括多个单元,每个单元是一个连续的数组,数组的第一位用来表示这个数组是用来表示的是已占用块信息还是空闲块信息,第二位是块的起始点,第三位表示从这个位置出发有多少个块是被占用(空闲)的,数组的最后一位存放的是指向下一个数组的首部地址的指针。
如何操作: 当某个块可以直接被使用时,就可以修改它的状态并分配内存;如果只需要使用其中的一部分,那么可以把它拆开,分为两个链表元素,当被分配的块被释放后,再合并这两块内存。
优点: 方便进行内存的分配和回收,对链表修改速度快。
缺点: 需要遍历链表才能找到合适的内存区间。

伙伴(buddy)算法

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值