文件名称:C++NeiCunFenPei
介绍说明--下载内容均来自于网络,请自行研究使用
C++模拟内存分配
一、思路
模拟编译系统的内存分配与释放的,实现一些简单的操作。首先用一个静态数组模拟内存空间(buf),当调用申请内存操作时,将从数组空间(buf)返回给调用者一定的空间,当调用释放内存的时候,将将指定部分的内存标记为未用。
1.分配规则
每块被分配或释放的内存由MemInfo记录,并保存于数组(buf)中作为内存空间的“头”,其后紧跟数据。MemInfo组成链表结构,表头不占用数组空间(buf)。当调用者申请内存时,将导致MemInfo链表的遍历,遍历的目的是找到“内存碎片”,如果“碎片”大小可用,则重新利用这个“碎片”,返回给调用者。
2.释放规则
每块内存块被释放时,仅仅是将数据区标记为无用,并不删除MemInfo链表节点,这样可以重复利用,避免多次MemInfo链表操作。
一、思路
模拟编译系统的内存分配与释放的,实现一些简单的操作。首先用一个静态数组模拟内存空间(buf),当调用申请内存操作时,将从数组空间(buf)返回给调用者一定的空间,当调用释放内存的时候,将将指定部分的内存标记为未用。
1.分配规则
每块被分配或释放的内存由MemInfo记录,并保存于数组(buf)中作为内存空间的“头”,其后紧跟数据。MemInfo组成链表结构,表头不占用数组空间(buf)。当调用者申请内存时,将导致MemInfo链表的遍历,遍历的目的是找到“内存碎片”,如果“碎片”大小可用,则重新利用这个“碎片”,返回给调用者。
2.释放规则
每块内存块被释放时,仅仅是将数据区标记为无用,并不删除MemInfo链表节点,这样可以重复利用,避免多次MemInfo链表操作。
(系统自动生成,下载前可以参看下载内容)
下载文件列表
C++模拟内存分配.txt