zl程序教程

您现在的位置是:首页 >  系统

当前栏目

【Windows 逆向】内存地址分析 ( 内存条 | 虚拟内存 | 内存地址及寻址范围 | 内存地址与数据的关系 )

Windows数据 分析 关系 逆向 范围 虚拟内存 内存条
2023-06-13 09:17:59 时间

文章目录

一、内存地址


1、内存条

启动设备后 , 运行的是操作系统 , 然后在操作系统中 , 运行的是应用软件 ;

内存条 : 操作系统 和 应用软件 运行在内存中 , 内存 对应的硬件就是 内存条 ,

内存条的大小是固定的 ,

8

G 或

16

G ;

2、虚拟内存

虚拟内存机制 : 程序并不是在 内存条 上运行 , 而是运行在 " 虚拟内存 " 中 , 该机制可以让 每个程序都拥有

4

G 的内存 ;

一个控制台小程序 , 运行后有

4

G 的内存 , 一个大型 3D 游戏运行后 , 也有 4 G 的内存 , 这两个程序显然对内存的需求是不同的 , 虚拟内存 并不是一开始将 4G 的内存完全分配下去 , 而是按需分配 , 这样可以高效利用有限的内存 , 执行更多的程序 ;

3、内存地址及寻址范围

内存地址 : 为了便于 内存中的 数据 存放 和 检索 , 为 每个字节 的 数据分配了地址 ;

32 位的系统 , 其地址是 4 字节 , 寻址范围

2^{32} =4294967296

位 , 对应 4GB 内存 ;

64 位的系统 , 其地址是 8 字节 , 寻址范围

2^{64}

位 , 理论上对应 17179869184GB 内存 , 这只是理论值 , 实际上 Windows 64 系统中 , 最大支持 128GB 内存 ;

二、内存地址与数据的关系


数据 是 存放在内存地址 对应的 虚拟内存中 ;

只要获取到了 内存地址 , 就可以查看 内存地址中存放的数据 ;