作者mayasky ( )
看板LinuxDev
标题Re: [问题] mmap memory issue
时间Fri Dec 18 20:24:06 2009
※ 引述《RiverJackson (JACK)》之铭言:
: 请问一下
: 我去开hello这个档案
: 但是free一下 并没有减少 4M空间(4000000)
: 还有为什麽p 要宣告成int呢
: exit(1);
: }
: p = mmap(NULL, 4000000, PROT_WRITE, MAP_SHARED, fd, 0);
: if (p == MAP_FAILED) {
: perror("mmap");
: exit(1);
: }
: close(fd);
: p[0] = 0x30313233;
: munmap(p, 6);
: return 0;
1.没减少4M~因为你还没真的用4M,只是先帮你作好4M的对应(VMA),demanded paging
2.你要用unsinged int也可以,反正一样长,但你用VOID却不能给值
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 114.43.215.91
1F:推 RiverJackson:是喔 所以档案会一值变大 直到4M的长度 12/18 23:59
2F:→ RiverJackson:不是档案多大就帮你 mapping多大的空间? 12/19 00:00
3F:→ mayasky:那部份address留给你~但还没实际对应到实体记忆体 12/19 00:14