- 博客(8)
- 资源 (4)
- 收藏
- 关注
原创 Windows虚拟内存的使用(五)
VirtualQuery的使用VirtualQuery函数可以查询本进程地址空间中内存区域的详细情况(区域大小,区域内容等信息)函数原型:DWORD VirtualQuery(LPVOID lpAddress,PMEMORY_BASIC_INFORMATION lpBuffer,DWORD dwLength);lpAddress:表示要查询状态的内存区域开始地址lpBuff
2014-12-30 15:02:43 823
原创 Windows虚拟内存的使用(四)
锁定页面和解锁页面1 通过调用VirtualLock方法,可以将页面锁定在物理内存中,从而防止虚拟内存管理机制将页面交换至页面文件,而引起不必要的硬盘和物理内存之间的低效页面交换。2 通过调用VirtualUnlock方法,可以解锁页面,允许系统对页面进行交换操作3 锁定页面时系统会根据当前可用实际RAM情况,以及进程工作集配额判定当前最大可锁定的页面的实际数量,超过此数量会引起一个错
2014-12-29 22:25:59 1978
原创 windows虚拟内存的使用(三)
VirtualAlloc使用大页面的步骤和例子使用大页面支持的步骤:1 运行->secpol.msc2 在本地策略->用户权限分配->将页面锁定在内存中添加适当的用户组,默认将Administrators组添加进去,并注销重新登陆系统。3 使用AdjustTokenPrivileges为进程打开SE_LOCK_MEMORY_PRIVILEGE特权4 使用GetLargePage
2014-12-29 21:12:51 1110
转载 Windows虚拟内存的使用(二)
下面的代码是从MSDN里复制出来的,下面的代码描述了通过对异常的处理来达到动态分配内存的目的,这个思路确实有点想不到啊。代码如下:#include "stdafx.h"#include #include // for printf#include // for exit#define PAGELIMIT 10
2014-12-28 20:18:52 600
原创 Windows虚拟内存的使用(一)
虚拟内存API: VirtualAlloc:虚拟内存的申请 VirtualFree:虚拟内存的释放/************************************************************************//* 功能:以直接预定并提交方式进行虚拟内存申请和赋值参数:无返回:无*//*************************
2014-12-28 17:08:53 1302
原创 PE文件的相对虚拟地址(RVA)和文件偏移地址(FOA)的转换
RVA(相对虚拟地址)和FOA(文件偏移)的具体含义大家可以看看《Windows PE 权威指南》或者是小甲鱼的PE结构详解视频,我相信大家看完之后一定会理解的,我这里就不写这些概念了。之所以会产生两者的转换,是因为同一个文件在硬盘和内存中的对齐方式不一样,我们可以通过IMAGE_OPTIONAL_HEADER结构体的SectionAlignment(内存对齐方式)和FileAlignment(文
2014-12-27 15:15:18 10809
转载 PE文件格式及相关资料
PE文件格式应用于所有32位Windows系统:Windows 9X, Windows NT,Windows 2000及Windows XP(Vista已经对PE格式进行了升级,也出现了PE64),而在MSDN 98中有PE的大量详细资料(按目录:MSDN Library Visual Studio 6.0 | Specification | Platforms | Microsoft P
2014-12-27 14:17:18 636
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人