APP下载

基于C++的高效内存池的设计与实现

2017-10-12刘永红赵卫东

成都大学学报(自然科学版) 2017年3期
关键词:分配设计

鄢 涛, 于 曦, 刘永红, 赵卫东, 余 悦, 曾 谊

(1.成都大学 信息科学与工程学院, 四川 成都 610106;2.成都大学 模式识别与智能信息处理四川省高校重点实验室, 四川 成都 610106)

基于C++的高效内存池的设计与实现

鄢 涛1,2, 于 曦1,2, 刘永红1,2, 赵卫东1,2, 余 悦1, 曾 谊1

(1.成都大学 信息科学与工程学院, 四川 成都 610106;2.成都大学 模式识别与智能信息处理四川省高校重点实验室, 四川 成都 610106)

为了高效、安全地利用计算机内存资源,在大型的软件设计中,往往要进行大量的内存分配与回收操作,为此,C++专门提供了malloc等相关函数进行操作,这些函数能够满足一般的使用,但由于它们调用了操作系统API,所以实际使用时会在操作系统中产生大量的内存碎片,让内存分配成为效率瓶颈,从而降低系统性能.基于此,通过对循环首次适应算法进行改进,设计并实现了基于C++的高效内存池,大幅提升了内存分配与回收的效率.同时,还为内存池编写了相关的分配子,使其能与C++标准库无缝对接,提供了若干具有垃圾回收功能的智能指针,提高了内存管理与程序运行的效率.

内存池;内存分配;循环首次适应算法;高效策略

0 引 言

大型的计算机软件应用中,往往需要进行大量的内存分配与回收工作,这些工作可以通过各种内存分配函数来完成,比如C语言的malloc.但由于操作系统在分配内存时,需要进行大量的查找工作,所以使用如malloc来分配内存实际上是比较低效的.不仅如此,由于分配算法本身的问题,多次……

登录APP查看全文

猜你喜欢

分配设计
基于可行方向法的水下机器人推力分配
何为设计的守护之道?
《丰收的喜悦展示设计》
应答器THR和TFFR分配及SIL等级探讨
遗产的分配
一种分配十分不均的财富
绩效考核分配的实践与思考
瞒天过海——仿生设计萌到家
设计秀
有种设计叫而专