PE(Portable Execute)文件是WIN32下可执行文件遵循的数据格式,也是反汇编调试必不可少的文件,常见的pe文件有.exe和.dll文件。本文主要介绍pe文件的结构和虚拟内存地址转换到文件地址的方法。
pe文件的基本结构
基本的pe文件主要包括以下部分:如下图
.text节:由编译器产生,村反击本的二进制机器码,我们调试很烦会变得而主要对象。.data节:数据块,宏定...
分类:
其他好文 时间:
2014-05-10 09:56:24
阅读次数:
311
第一章:源起
遇到一个问题,如果一个客户数据文件有2g大,客户要通过界面查询文件中的数据并用列表控件显示数据,要怎么处理这个文件才能让应用程序不会长时间无响应,客户感觉不到程序的卡顿?
第二章:解决之道 第一反应是用内存映射文件处理大文件,将文件分成数次映射至内存地址空间,避免...
这部分只要介绍下虚拟化技术中的内存虚拟化和IO虚拟化两个部分内存虚拟化:上图中的做伴部分是正常情况下内存的使用情况,线性地址到物理地址的一个转换,通常应用程序使用的内存地址是线性地址,需要通过MMU地址转换的一个硬件来实现线性地址到物理地址的一个转换。上图的有半..
分类:
其他好文 时间:
2014-05-09 21:30:18
阅读次数:
415
数组名称代表的是数组第一个元素的内存位置, 而不是数组第一个元素的内存地址
分类:
其他好文 时间:
2014-05-09 16:01:07
阅读次数:
190
举例:x指向的内存地址,其字节内容从低到高依次分别为c1,c2,c3,c4(Delphi读取一个integer的时候,结果是c4c3c2c1,其排列规则是"高高低低"),那么结果是c4,c3,c2,c1(Delphi读取一个integer的时候,结果是c1c2c3c4)用delphi写的程序,把x指...
分类:
其他好文 时间:
2014-05-09 05:41:08
阅读次数:
329
作者 : 卿笃军函数原型size_tfread
(void*buffer,size_tsize,size_tcount,FILE*stream) ;参
数buffer用于接收数据的内存地址size要读写的字节数,单位是字节count要进行读写多少个size字节的数据项,每个元素是size字节.str...
分类:
其他好文 时间:
2014-05-09 05:09:11
阅读次数:
463
8.2.2 操作ELF格式文件的方法
综合以上的描述,总结执行ELF格式文件的方法,步骤如下:
(1)从文件起始位置读取一个struct elf32_ehdr结构体,验证文件的正确性以及文件与操作系统是否匹配。
(2)找到该结构体中e_entry成员,从系统中获得这个值所指向的内存地址。
(3)读出struct elf32_ehdr结构体中的e_phoff、e_phextsize以及e_...
分类:
其他好文 时间:
2014-05-08 00:30:22
阅读次数:
845
进程:运行在系统当中的任务(一个进程至少有一个线程)线程:运行在进程当中的任务(线程不能脱离进程)进程:独立内存地址空间
线程:同进程中线程共享内存地址继承Thread 类 run()子线程的入口子线程没结束前,主线程不会结束优先级(1-10 10最高)的设置,只能让优先级高的
抢到执行CPU的几....
分类:
编程语言 时间:
2014-05-07 00:02:20
阅读次数:
379
所谓的值传递,就是将要传递的值作为一个副本传递,例如:
int i = 10,j
j=i;//值传递,将i的值复制一份传递给j
引用传递,传递的是引用对象的内存地址。例如:
Object x ="Java";//X保存的是内存中"Java"字符串的地址,是对"Java"的一个引用
Object y;
y=x;//引用传递,将X引用地址传递给y,所以y也指向"Java"
再来看下面代码...
分类:
其他好文 时间:
2014-05-04 18:40:12
阅读次数:
286
#define _CRT_SECURE_NO_WARNINGS
#include"stdio.h"
#include"stdlib.h"
#include"string.h"
void MyPrintf(char **);
void MYSORT(char **, int);
void SORTBUF(char **);
void main()
{
int i = 0;
int j = 0...
分类:
其他好文 时间:
2014-05-04 18:13:12
阅读次数:
341