可以从linux 2.6.30+下的用户空间访问(非共享)mmap页面的肮脏吗?平台特定的黑客和kludges欢迎.
理想情况下,我正在寻找一个位数组,每页一个(4kB?)mmap的区域,如果该页面已被写入,则设置该区域是mmap的.
(我知道,写作过程可以跟踪这些信息 - 但如果内核正在这样做,那么这样做似乎很愚蠢.)
谢谢,
克里斯.
当我使用mmap创建写时复制映射(MAP_PRIVATE)时,只要我写入特定地址,就会复制此映射的某些页面.在我的程序中的某一点,我想弄清楚哪些页面实际上已被复制.有一个名为"mincore"的调用,但它只报告页面是否在内存中,这与正在复制的页面不同.
有没有办法弄清楚哪些页面被复制了?