自由表

✍ dations ◷ 2025-02-23 21:14:47 #数据结构,内存管理

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

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

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

相关

  • 旅行者腹泻旅行者腹泻(traveler's diarrhea,簡稱TD)是一种肠胃道感染疾病。旅行者腹泻的定义是指在旅途之中,持续排出未成形粪便的状态。常常伴随着腹部痉挛性的疼痛、恶心、发烧、胀气。
  • 汉斯·奥斯特汉斯·克海斯提安·奥斯特(丹麦语:Hans Christian Ørsted,1777年8月14日-1851年3月9日),丹麦物理学家、化学家和文学家。在物理学领域,他首先发现载流导线的电流会产生作用力于磁
  • 成田国际机场成田国际机场(日语:成田国際空港/なりたこくさいくうこう Narita Kokusai Kūkō */?;IATA代码:NRT;ICAO代码:RJAA),通称成田机场(成田空港),原名为新东京国际机场(新東京国際空港/しん
  • 古希腊观念科学革命(英语:Scientific revolution),指近世历史上,现代科学在欧洲萌芽的这段时期。在那段时期中,数学、物理学、天文学、生物学(包括人体解剖学)与化学等学科皆出现突破性的进步,
  • 癫痫大发作强直-阵挛性发作(英语:tonic-clonic seizure),又称为大发作(英语:grand mal seizure),是最为常见的全身性发作类型。任何年龄均可发病,但常见于儿童。强直-阵挛性发作包括强直期(tonic p
  • M3侦察车M3侦察车(M3 Scout Car)是美国在二战时期装备的一种四轮驱动轮型装甲车,主要用于巡逻、侦察、指挥、救护和火炮牵引用途。M3侦察车于1938年由怀特汽车公司(White Motor)设计,原本
  • 盲肠线盲肠线为铁路路线的类型之一,指某路线只有一端接到其他路线,中途各站及端点站皆无接续线,导致该路线形似盲肠而得名。此语源自日语,但在医学上应指阑尾而非盲肠。主要出现于改线
  • 彼得·魏斯彼得·魏斯(1916年11月8日-1982年5月10日),德国剧作家、小说家、画家和电影艺术家,入瑞典国籍。他最为知名的作品是戏剧《马拉/萨德》(Marat/Sade) 和小说《反抗的美学》(Die Ästh
  • 周炳谟周炳谟(1560年-1625年),字仲觐,直隶无锡人。明朝政治人物。父周子义,官至吏部侍郎。炳谟中式万历三十二年(1604年)进士。天启年间,官至礼部侍郎。诏修《光宗实录》,周炳谟直书神宗末年
  • 伊莲·佩姬伊莲·佩姬OBE(英语:Elaine Paige,父姓彼克史达夫 (Bickerstaff),1948年3月5日-),英国歌手、演员与著名音乐剧名伶。成长于伦敦北部巴内特,佩姬就读于艾达·福斯特戏剧学校,并于1964