|
楼主 |
发表于 2006-11-15 18:18:41
|
显示全部楼层
代码是这样的:
fd=open(_PATH_MEM,O_RDWR);
if(fd<0)
{
printf("open the /dev/mem failed!\n");
return 1;
}
......
/* map the dev/mem */
offset = start*1024; //start 是四的倍数
mem = mmap(0,dump_size,PROT_READ,MAP_SHARED,fd,offset);
buffer=mem;
if (mem == NULL)
{
printf("mem is null \n");
return 1;
}
if( (fp = fopen(sFile,"wb+")) != NULL )
{
for(count=0; count < read_pagect; count++)
{
if(fwrite(buffer,1,page_size,fp) != page_size)
{
printf("write file error in.\n");
return 1;
}
buffer += page_size;
}
fclose(fp);
}
munmap(mem,dump_size);
这是那部分代码 其他代码写的比较烂,不太好意思贴出来, 主要的都写出来了 我是一页一页读取的
新手,代码写的烂,大家别笑话! |
|