Messages in this thread | | | Date | Fri, 20 Oct 2000 20:24:33 -0400 (EDT) | From | Zhixu Liu <> | Subject | about /proc/meminfo and mmap |
| |
Hi, all:
My PC have 128M RAM, but in /proc/meminfo, it display 122424K, not 128*1024K = 131072K, what does this mean?
My program need to a 32M buffer, so I add "append="mem=96M"" to lilo.conf, then the PC only know 96M mem, I can use the rest 32M. Following is a simple example:
/****************************************************************/ int fd = open("/dev/mem", O_RDWR); if (fd < 0) { printf("failed to open /dev/mem\n"); return -1; } start = (DATA *) mmap(0, length*sizeof(DATA),PROT_READ|PROT_WRITE, MAP_SHARED, fd, BASE_ADDRESS); if (start == (DATA *) (-1) ) { printf("failed to map /dev/mem\n"); return -1; }
// do ...
munmap(start, length); /****************************************************************/
Is there some problem? Or does the DATA are all in real RAM? Any suggestions are welcome.
Thanks a lot.
Regards.
Zhixu
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org Please read the FAQ at http://www.tux.org/lkml/
| |