在这里我们实现了一个简易的vector,没有利用到 stl中的内存分配器,内存分配利用的是new进行分配。其余功能大致实现。 1 #ifndef _NVECTOR_ 2 #define _NVECTOR_ 3 #include 4 #include 5 template 6 class nvect....
分类:
其他好文 时间:
2015-09-03 00:40:07
阅读次数:
217
全局的构造和析构函数:
template
inline void _Construct(_T1* __p, const _T2& __value) {
new ((void*) __p) _T1(__value); placement new运算符:在已分配的内存上构造函数对象。opreator new ,new opreator,placement ...
分类:
其他好文 时间:
2015-08-30 17:41:08
阅读次数:
287
【版权声明:尊重原创,转载请保留出处:blog.csdn.net/shallnet,文章仅供学习交流,请勿用于商业用途】
上一节最后说到对于小内存区的请求,如果采用伙伴系统来进行分配,则会在页内产生很多空闲空间无法使用,因此产生slab分配器来处理对小内存区(几十或几百字节)的请求。Linux中引入Slab的主要目的是为了减少对伙伴算法的调用次数。
内...
分类:
系统相关 时间:
2015-08-15 16:32:22
阅读次数:
243
前一篇blog linux内核内存分配(一、基本概念)
主要是分析linux内核内存的分配和物理页分配函数接口。但是在实际的操作中,不一定所有内存申请都需要一个物理页,很多只是需要分配几K大小的内存就可以。所以就需要更小的内存分配函数。刚开始看这个有点不懂,不过懂了就很简单了。哈哈。
摘抄《深入linux设备驱动程序内核机制》的一段话:slab分配器的基本思想是,先利用页面分配...
分类:
系统相关 时间:
2015-08-10 22:13:56
阅读次数:
367
STL以泛型思维为基础,提供了6大组件:容器(containers)、算法(algorithms)、迭代器(iterators)、仿函数(functors)、适配器(adapters)、分配器(allocators)。容器: vector、list、deque、set、map等,用来存放数据。从实....
分类:
其他好文 时间:
2015-08-04 10:40:27
阅读次数:
91
作为C++标准库相当重要的一部分,STL库提供一系列组件操作。它主要可以分为容器、迭代器、基本算法、函数对象以及内存分配器和配接器六个部分。整个STL库的代码都采用模板函数以及模板类的方式实现,具有高度的通用性。对于传统的应用程序来讲,模板库支持并且倡导一种新的编程风格,即称为泛型编程思想,以通用的...
分类:
编程语言 时间:
2015-07-29 12:06:15
阅读次数:
231
本文为原创,转载请注明:http://www.cnblogs.com/tolimit/SLUB和SLAB的区别 首先为什么要说slub分配器,内核里小内存分配一共有三种,SLAB/SLUB/SLOB,slub分配器是slab分配器的进化版,而slob是一种精简的小内存分配算法,主要用于嵌入式系统。....
分类:
系统相关 时间:
2015-07-21 12:12:26
阅读次数:
316
//
// main.m
// 自动售货机
//
/*
自动售货机系统是一个无人售货系统。售货时,顾客把钱投入机器的投币口中,
1.机器检查纸币或者硬币的特点,有效的硬币是一元,五角,有效纸币是十元,五元,其它货币都认为是假币,将其从退币口退出。
2.当机器接到有效的硬币后,把货币放入到储藏箱中,顾客支付的货币根据货币的面值进行累加。
3.自动货机装有物品分配器,每个物品分配器...
分类:
移动开发 时间:
2015-07-21 09:08:27
阅读次数:
184
进程描述符中包含的数据能完整地描述一个正在执行的程序:他打开的文件,进程的地址空间,挂起的信号,进程的状态等。?1:分配进程描述符linux通过使用slab分配器分配task_struct结构,这样能够达到对象复用和缓存着色的目的。现在只需在栈底或栈顶创建一个新的结构struct thread_info结构即可。首先我们先看一下thread_info的结构:struct thread_info {...
分类:
系统相关 时间:
2015-06-16 09:20:54
阅读次数:
193
本文为原创,转载请注明:http://www.cnblogs.com/tolimit/ 之前说了管理区页框分配器,这里我们简称为页框分配器,在页框分配器中主要是管理物理内存,将物理内存的页框分配给申请者,而且我们知道也可页框大小为4K(也可设置为4M),这时候就会有个问题,如果我只需要1KB大小的....
分类:
系统相关 时间:
2015-06-11 14:13:41
阅读次数:
235