共享内存的工作方式顾名思义,共享内存让一段内存可供多个进程访问。用特殊的系统调用(即对 UNIX 内核的请求)分配和释放内存并设置权限;通过一般的读写操作读写内存段中的数据。共享内存并不是从某一进程拥有的内存中划分出来的;进程的内存总是私有的。共享内存是从系统的空闲内存池中分配的,希望访问它的每个进...
分类:
系统相关 时间:
2014-10-31 11:30:22
阅读次数:
298
一、执行计划缓冲 优化器生成的执行计划保存在SQL Server内存池中的一个特别部分,被称为计划缓冲或过程缓冲。过程缓冲是SQL Server缓存的一部分。在缓冲中保存计划可使SQL Server避免在重新提交相同的查询时再次通过整个查询优化过程运行。SQL Server支持不同的技术,如:计划....
分类:
其他好文 时间:
2014-10-24 10:49:19
阅读次数:
122
ngx_array _t是一个顺序容器,支持达到数组容量上限时动态改变数组的大小,类似于STL中vector,具有以下特性:
下标直接索引,访问速度快
动态增长
由slab内存池统一管理分配出的内存,效率高...
分类:
编程语言 时间:
2014-10-21 15:29:35
阅读次数:
322
看完自己重写了一下,不知道的又看了一遍。
Mempool.h
#ifndef MEMPOOL_H_
#define MEMPOOL_H_
#include
#include
#include
namespace flysnow {
enum {STEP_ = 8};
enum {MAX_BYTES_ = 128};
enum {FREELIST_NUM_ = MAX...
分类:
其他好文 时间:
2014-10-17 00:35:13
阅读次数:
336
先从较浅的层面来说,Python的内存管理机制可以从三个方面来讲(1)垃圾回收(2)引用计数(3)内存池机制一、垃圾回收:python不像C++,Java等语言一样,他们可以不用事先声明变量类型而直接对变量进行赋值。对Python语言来讲,对象的类型和内存都是在运行时确定的。这也是为什么我们称Pyt...
分类:
编程语言 时间:
2014-10-11 03:38:44
阅读次数:
244
多进程编程多用在并发服务器的编写上,当收到一个请求时,服务器新建一个进程处理请求,同时继续监听。为了提高响应速度,服务器采用进程池的方法,在初始化阶段创建一个进程池,池中有许多预创建的进程,当请求到达时,只需从池中分配出来一个进程即可;当进程不够用时,进程池将再次创建一批进程。类似的方法可以用在.....
分类:
编程语言 时间:
2014-10-09 14:31:54
阅读次数:
317
Data Execution Prevention,数据执行保护,专门用来弥补计算机对数据和代码混淆这一天然缺陷。DEP 的原理是将数据所在的内存页(默认的堆、各种堆栈页、内存池页)标记为不可执行,当试图执行不可执行页的数据时,CPU 抛出异常,转入异常处理。MS 从 Windows XP sp2 ...
分类:
其他好文 时间:
2014-10-08 11:38:55
阅读次数:
431
深入理解mysql之BDB系列(1)---BDB相关基础知识作者:杨万富一:BDB体系结构1.1.BDB体系结构BDB总体的体系结构如图1.1所看到的,包括五个子系统(见图1.1中相关数)。1)数据存取子系统,2)事务子系统,3)锁子系统,4)内存池管理子系统,5)日志子系统。在一个应用程序中,并....
分类:
数据库 时间:
2014-10-07 12:09:13
阅读次数:
336
在用gpreftools优化gko_pool的时候我发现一个问题,malloc竟然成了性能瓶颈 由于在每个连接建立的时候gko_pool默认会为读写各分配2KB的buf备用,这个是比较固定的 每个连接的的生命周期会伴随着4KB大小的内存malloc & free 正好可以写个只能分配固定大小内存的“...
分类:
其他好文 时间:
2014-10-04 03:20:35
阅读次数:
180
忽然想起前几天在公司看到一篇关于内存管理的文章,但当时由于别的事情给打断了。今天想起来,就又在网上找了一下,与大家分享一下。
虽然自己现在从事内核模块开发,对内存池和引用计数也有所了解,但由于理解深度及文笔,不能自己娓娓道来,所以就和大家一起来瞻仰一下大师给我们的讲解。
以下内容来自于http://www.ibm.com/developerworks/cn/linux/l-memory/...
分类:
系统相关 时间:
2014-09-27 14:18:39
阅读次数:
242