期刊文献+

基于C++的高效内存池的设计与实现 被引量:3

Design and Implementation of Efficient Memory Pool Based on C++
下载PDF
导出
摘要 为了高效、安全地利用计算机内存资源,在大型的软件设计中,往往要进行大量的内存分配与回收操作,为此,C++专门提供了malloc等相关函数进行操作,这些函数能够满足一般的使用,但由于它们调用了操作系统API,所以实际使用时会在操作系统中产生大量的内存碎片,让内存分配成为效率瓶颈,从而降低系统性能.基于此,通过对循环首次适应算法进行改进,设计并实现了基于C++的高效内存池,大幅提升了内存分配与回收的效率.同时,还为内存池编写了相关的分配子,使其能与C++标准库无缝对接,提供了若干具有垃圾回收功能的智能指针,提高了内存管理与程序运行的效率. In the development of large scale software,memory allocation and reclaiming usually occur for efficiency and safety. Therefore,C ++ provides special functions for this,such as malloc,etc. These functions can meet the demands of common users. However,these functions call API,so the actual use of these functions produce massive memory fragments in OS and result in the efficiency bottleneck of memory allocation which lowers the system performance. This paper has improved next-fit algorithm and designed a memory pool with efficient strategies based on C ++. The strategies could extremely upgrade the efficiency of memory allocation and reclaiming. Meanwhile,for the perfect connection of memory pool with C ++ standard library,the strategies provide relevant allocators for memory pool. In addition,there are a number of smart pointers which have the function of garbage collection. They can free users from complex and fallible memory management,and improve the efficiency of the program.
出处 《成都大学学报(自然科学版)》 2017年第3期257-261,共5页 Journal of Chengdu University(Natural Science Edition)
基金 四川省科技厅软件科学研究计划(2017ZR0198) 四川省科技厅应用基础计划(2016JY0255)资助项目
关键词 内存池 内存分配 循环首次适应算法 高效策略 memory pool memory allocation next-fit algorithm efficient strategy
  • 相关文献

参考文献4

二级参考文献18

  • 1钟宝荣,袁文亮.内存数据库中存储结构的实现机制[J].计算机工程与设计,2007,28(5):1213-1214. 被引量:11
  • 2[2]http://www.linux.org Linux kernel 2.6.16
  • 3Apache官方网站[EB/0L].[2007-02-16].http://www.apache.org.
  • 4张中庆.Apache源代码全景分析草案[EB/OL].[2007-02-18].http://blog.csdn.net/tingya/arehive/2005/12/08/547322.aspx.
  • 5WEISS M.数据结构和算法分析(C语言)[M].2版.冯舜玺,译.北京:机械工业出版社,2004.
  • 6翁小东.电信级用系统中多进程共享内存池的实现[J].电脑知识技术,2009,4(5-12):3300-3306.
  • 7张海阔,赵冲冲,王玉,等.链表快速查找的内存池管理优化技术研究[C]. 2007年全国高性能计算学术年会,2007.
  • 8STEVENS W R. UNIX网路编程(第2卷)[M].北京:人民邮电出版社,2010.
  • 9LOWELL R M. A C + + pooled, shared memory allocatorfor simulator development [ C ]. IEEE, 2004, Proceedings ofthe 37th Annual Simulation Symposium , 2004.
  • 10Bryant R E,Hallaron D.深入理解计算机系统[M].北京:机械工业出版社,2011.

共引文献6

同被引文献25

引证文献3

二级引证文献9

相关作者

内容加载中请稍等...

相关机构

内容加载中请稍等...

相关主题

内容加载中请稍等...

浏览历史

内容加载中请稍等...
;
使用帮助 返回顶部