码迷,mamicode.com
首页 >  
搜索关键字:内存地址    ( 2918个结果
memcpy内存拷贝及优化策略图解
#include using namespace std; //不安全的内存拷贝(当源内存地址与目标内存地址重叠时会产生错误) void h_memcpy(char*src,char *dst,intsize){ if (src == NULL|| dst == NULL) { return; }...
分类:其他好文   时间:2014-10-08 18:20:05    阅读次数:169
如何在C#中模拟C++的联合(Union)?[C#, C++] How To Simulate C++ Union In C#?
1 什么是联合?联合(Union)是一种特殊的类,一个联合中的数据成员在内存中的存储是互相重叠的。每个数据成员都在相同的内存地址开始。分配给联合的存储区数量是“要包含它最大的数据成员”所需的内存数。同一时刻只有一个成员可以被赋给一个值。下面我们来看看C++中如何表达联合://Code#01union...
分类:编程语言   时间:2014-10-07 21:26:44    阅读次数:353
简单的内存分配器
采用自定义的operator运算符实现自己的内存分配策略,在某些时候可以提高程序的效率。C++中的new运算符,具体工作流程如下:1.调用operator new申请原始内存2.调用place new表达式,执行类的构造函数3.返回内存地址而delete操作符的工作是:1.调用对象的析构函数2.调用...
分类:其他好文   时间:2014-10-05 19:54:28    阅读次数:262
简单的内存分配器
采用自定义的operator运算符实现自己的内存分配策略,在某些时候可以提高程序的效率。 C++中的new运算符,具体工作流程如下: 1.调用operator new申请原始内存 2.调用place new表达式,执行类的构造函数 3.返回内存地址 而delete操作符的工作是: 1.调用对象的析构...
分类:其他好文   时间:2014-10-02 02:25:11    阅读次数:165
C++ 左值 右值
最近在研究C++ 左值 右值,搬运、收集了一些别人的资料,供自己记录和学习,若以后看到了更好的解释,会继续补充。(打“?”是我自己不明白的地方 )参考:《Boost程序库探秘——深度解析C++准标准库(第2版)》 9787302342731左值:一个可以用来存储数据的变量,有实际的内存地址(变量名)...
分类:编程语言   时间:2014-09-30 11:47:19    阅读次数:236
Varnish---原理及应用
Varnish---原理及应用原理如下图:用户请求到达Varnish服务器,经由网卡将请求接入进来到达tcp/ip协议栈解封装后由varnish将报文中请求资源的uri进行hash计算,而后根据计算的得到的键,到进程维持的hash表对比,若键相同,则根据相应的键去值指针所标识的,内存地址空间或是硬盘地址..
分类:其他好文   时间:2014-09-30 04:54:13    阅读次数:552
【解答】关于内核中没开MMU之前的虚拟地址物理地址转换问题
1. 内核没开MMU之前有虚拟地址吗?没有MMU哪来的虚拟地址? 答:有,因为加载时地址和运行时地址不同导致的没打开MMU之前也会有虚实地址问题。 2. 加载时地址和运行时地址什么区别,为什么有这种区别? 答:加载时地址:把可执行文件放到物理内存的内存地址,例如把镜像放到0x80000000地址处,则加载时地址=0x80000000 运行时地址:镜像生成后的虚拟地址,由编译器和连接脚本决定。 内核镜像放到内存中时,放置的地址是任意的,所以要考虑到这种情况,在没打开mmu之前使用内存中的数据都要计算偏移...
分类:其他好文   时间:2014-09-29 13:17:21    阅读次数:169
虚拟内存地址(翻译)
Virtual Memory and Memory Mapping Virtual memory was introduced in 1959. The main goal was to significantly simplify programming by abstracting the qu...
分类:其他好文   时间:2014-09-27 00:11:58    阅读次数:314
指向指针的指针做函数的参数(转载)
一. 回顾指针概念: 今天我们又要学习一个叫做指向另一指针地址的指针。让我们先回顾一下指针的概念吧! 当我们程序如下申明变量: short int i; char a; short int * pi; 程序会在内存某地址空间上为各变量开辟空间,如下图所示。 内存地址→6 7 8 9 10 11 12...
分类:其他好文   时间:2014-09-25 01:28:08    阅读次数:202
linux 内存地址空间管理 mm_struct
Linux对于内存的管理涉及到非常多的方面,这篇文章首先从对进程虚拟地址空间的管理说起。(所依据的代码是2.6.32.60) 无论是内核线程还是用户进程,对于内核来说,无非都是task_struct这个数据结构的一个实例而已,task_struct被称为进程描述符(process descriptor),因为它记录了这个进程所有的context。其中有一个被称为'内存描述符‘(memory de...
分类:系统相关   时间:2014-09-24 12:32:06    阅读次数:365
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!