/* kmap.c */ /* Dump kernel memory structures */ #include #include #include #include unsigned int buf[1024]; void main(void) { int map; int addr; int count; int i; map = open("/dev/mem", O_RDONLY); printf("Handle is %d \n", map); while (1) { scanf("%x %x", &addr, &count); lseek(map, addr, SEEK_SET); read(map, buf, 4 * count); for (i = 0; i < count; i++) { if ((i % 8) == 0) { printf("\n%08x - ", addr + 4 * i); } printf("%08x ", buf[i]); } printf("\n\n - Enter addr, count \n"); } }