在linux环境下模拟没有c标准库,创建自己的malloc和free函数,达到动态管理内存的目的。
实现过程:
阶段1:
使用数组实现固定大小的动态内存分配和回收(使用标记位显示空闲或使用)。
阶段2:
在第一步基础上,实现可变的动态内存分配和回收,增加一个位域记录内存块的大小。
阶段3:
使用两条链表实现可变长度的内存分配和回收,可任意申请和分配。
阶段4:
用hash表对空闲块链表进行优化以提高分配速度。
在linux环境下模拟没有c标准库,创建自己的malloc和free函数,达到动态管理内存的目的。
实现过程:
阶段1:
使用数组实现固定大小的动态内存分配和回收(使用标记位显示空闲或使用)。
阶段2:
在第一步基础上,实现可变的动态内存分配和回收,增加一个位域记录内存块的大小。
阶段3:
使用两条链表实现可变长度的内存分配和回收,可任意申请和分配。
阶段4:
用hash表对空闲块链表进行优化以提高分配速度。