一种动态内存分配方法

基本信息

申请号 CN202110734591.5 申请日 -
公开(公告)号 CN113419858A 公开(公告)日 2021-09-21
申请公布号 CN113419858A 申请公布日 2021-09-21
分类号 G06F9/50(2006.01)I 分类 计算;推算;计数;
发明人 叶德焰;任赋;林雅;许学泽 申请(专利权)人 明见(厦门)技术有限公司
代理机构 厦门市精诚新创知识产权代理有限公司 代理人 蔡金塔
地址 361000福建省厦门市思明区禾祥西路487、489号三楼之六十
法律状态 -

摘要

摘要 本发明涉及一种动态内存分配方法,其可包括以下步骤:定义节点头信息,节点头信息包括节点的已使用长度ulen和next指针;内存初始化,将内存池初始化成仅有开始节点和末尾节点的单向链表结构;内存分配,从开始节点开始查找剩余的空间长度大于申请内存的长度的节点,找到后判断该节点的ulen是否等于0,若是,则将该节点的ulen的值改为申请内存的长度,否则在该节点后创建一个新节点,并将该节点的next指针指向新节点;内存释放,当释放内存时,若释放的是开始节点,则只要将开始节点的ulen赋值为0即可,否则只需要将的前一节点的next指针指到下一节点即可。本发明无需进行复杂运算,仅需对参数ulen和next指针进行操作,执行代码简单,效率高。