自由表

✍ dations ◷ 2025-11-04 22:51:54 #数据结构,内存管理

自由表(英语:free list)是一种用来实现特定动态内存分配方案的数据结构,也称自由列表。自由表的核心原理是将若干未分配的内存块用链表连接起来,将未分配区域的第一个字作为指向下一个未分配区域的指针使用。自由表非常适合用来实现内存池,因为内存池中对象的大小都是相同的。

用自由表实现内存的分配和回收非常简单:回收内存时只需将内存块链入自由表;分配时也只需从自由表的一端取下即可直接使用。如果内存块的大小不一,则分配前还需要在自由表中搜索足够大的内存块,可能有一定的额外消耗。

因为自由表使用了链表结构,所以也继承了它的劣势:访问局部性低下,难以利用缓存。

相关

  • 新天地教会新天地耶稣教证据帐幕圣殿(朝鲜语:신천지예수교 증거장막성전/新天地예수敎 證據帳幕聖殿*/?),简称新天地教会或新天地,是由李万熙于1984年3月14日在韩国创建的基督教系新兴宗教团
  • 孙世刚孙世刚(1954年7月-),重庆万州人。物理化学家。1982年毕业于厦门大学化学系,1986年在法国巴黎居里大学获国家博士学位。1986年9月至1987年10月,任法国科学研究中心(CNRS)界面电化学
  • 魁北克城魁北克市(法语:Ville de Québec,英语:Quebec City,西阿布那基语(Western Abnaki): Kephek),又称魁北克城或魁城,是一座位于加拿大魁北克南部的城市。市区2016年7月人口为531,902,相较
  • 横贯南极山脉横贯南极山脉(英语:Transantarctic Mountains)是南极大陆的三个主要山脉之一。从维多利亚地延伸到威德尔海。山脉总长度3500公里,是地球上最长的山脉之一,该山脉将南极洲分为东部
  • 爆破爆破(英语:blasting,blast)是指采取一定措施、利用爆炸性物质的爆炸能量对周围介质产生剧烈作用,以达到预定目标的操作。广义的爆破泛指一切利用爆炸性物质的爆炸能量来达到预定
  • 2011年7月逝世人物列表2011年7月逝世人物列表,是用于汇总2011年7月期间逝世人物的列表。
  • 劳德斯韦尔 (南卡罗来纳州)劳德斯韦尔(英文:Lowndesville),是美国南卡罗来纳州下属的一座城市。城市类型是“Town”。其面积大约为0.78平方英里(2.01平方公里)。根据2010年美国人口普查,该市有人口128人,人口
  • 纳拉亚尼专区纳拉亚尼专区(尼泊尔语:नारायणी अञ्चल)是尼泊尔的十四个行政专区之一,位于该国中南部,首府黑道达,北接甘达基专区和巴格马蒂专区,东临贾纳克布尔专区,南毗印度,西邻蓝毗
  • 菲利普·希肖夫菲利普·希肖夫(保加利亚语:Филип Шишов),保加利亚男子羽毛球运动员。2016年8月,希肖夫与亚历克斯·弗拉尔合作出战保加利亚羽毛球公开赛男子双打项目,在决赛中以2-0的
  • 四氯合钯(II)酸铵四氯合钯(II)酸铵是一种配合物,化学式为(NH4)2。(NH4)2可以由氯化铵和氯化钯在盐酸溶液中反应得到,或者通过海绵钯和氯化铵在甲醇中用氯气氧化得到。将(NH4)2在D2O中反复结晶,