引言内存管理是计算机科学中一个相当复杂而有趣的领域。在计算机诞生的这几十年间,内存的管理的技术不断进步,使系统能够更加有效地利用内存这一计算机必不可少的资源。一般而言,内存管理可以分为三类:硬件管理(如TLB),操作系统管理(如Buddy System,Paging,Segmentation),应用...
分类:
Web程序 时间:
2015-12-01 22:46:56
阅读次数:
213
Buddy算法的优缺点:1)尽管伙伴内存算法在内存碎片问题上已经做的相当出色,但是该算法中,一个很小的块往往会阻碍一个大块的合并,一个系统中,对内存块的分配,大小是随机的,一片内存中仅一个小的内存块没有释放,旁边两个大的就不能合并。2)算法中有一定的浪费现象,伙伴算法是按2的幂次方大小进行分配内存块,当然这样做是有原因的,即为了避免把大的内存块拆的太碎,更重要的是使分配和释放过程迅速。但是他也带来...
分类:
编程语言 时间:
2015-12-01 16:34:57
阅读次数:
216
# // Comment By: 凝霜 # // E-mail: mdl2009@vip.qq.com # // Blog: http://blog.csdn.net/mdl13412 # # // 特别说明: SGI STL的allocator在我的编译环境下不...
分类:
其他好文 时间:
2015-11-23 13:10:19
阅读次数:
235
一、 空间配置器标准接口参见《STL源码剖析》第二章-2.1。二、具备次配置力的SGI空间配置器SGI STL的配置器与众不同,也与标准规范不同,其名称是alloc而非allocator,而且不接受任何参数(虽然SGI也定义有一个符合部分标准、名为sllocator的配置器,但SGI自己从未用过它,...
分类:
其他好文 时间:
2015-11-09 08:15:29
阅读次数:
209
1. 所在头文件: , 命名空间: std ; 声明如下: 1 namespace std{ 2 template , 4 class Allocator = allocator > 5 class set; 6 template , 8 ...
分类:
其他好文 时间:
2015-10-18 18:25:10
阅读次数:
225
先让我讲下故事哈一次在MFC中用cout输出一个string类型字符串,编译时出现这样一个错误:errorC2679:binary',classstd::allocator>'(orthereisnoacceptableconversion)以后我记住了C++中不能用cout输出string,所以我...
分类:
编程语言 时间:
2015-10-14 00:25:55
阅读次数:
421
今天有个同事问到,在使用Entity Framework 的Database frist或modelfirst时,怎么在model上添加验证的特性?因为此时的Model是是VS 工具怎么生成的,直接加attribute到modle类上是太现实也不合理。一个比较合理做法,就是用buddy class的...
分类:
数据库 时间:
2015-10-08 19:53:31
阅读次数:
183
http://www.openext.org/2015/09/kernel-buddy/...
分类:
其他好文 时间:
2015-10-03 10:42:42
阅读次数:
132
深入理解STL源码(1) 空间配置器(allocator)深入理解STL源码(0) STL简介深入理解STL源码(3.3) 序列式容器之deque和stack、queue深入理解STL源码(3.2) 序列式容器之list深入理解STL源码(3.1) 序列式容器之vector深入理解STL源码(2) ...
分类:
其他好文 时间:
2015-09-24 14:13:34
阅读次数:
190
Collectl比nmon更专业和深入的linux性能测试工具首先是安装$ sudo apt-get install collectl直接输入collectl就可以看到数据默认是CPU,硬盘,网络运行$ collectl -all后面具体参数b– buddy info (memory fragmen...
分类:
其他好文 时间:
2015-09-21 10:24:31
阅读次数:
161