关于/ proc / kpageflags文件

时间:2019-06-11 13:34:09

标签: memory-management memory-leaks shared-memory ram

/ proc / kpageflags。该文件为每个文件包含一组64位标志    页面,由PFN索引。

标志是(来自fs / proc / page.c,在kpageflags_read上方):

 0. LOCKED
 1. ERROR
 2. REFERENCED
 3. UPTODATE
 4. DIRTY
 5. LRU
 6. ACTIVE
 7. SLAB
 8. WRITEBACK
 9. RECLAIM
10. BUDDY
11. MMAP
12. ANON
13. SWAPCACHE
14. SWAPBACKED
15. COMPOUND_HEAD
16. COMPOUND_TAIL
17. HUGE
18. UNEVICTABLE
19. HWPOISON
20. NOPAGE
21. KSM
22. THP
23. BALLOON
24. ZERO_PAGE
25. IDLE

我在物理内存页面上有标志,怎么知道页面是否脏了?

我以为是标志&(1 << 4),但失败了。

1 个答案:

答案 0 :(得分:0)

假定变量中的标志位为64位

if((flags >> 4) & 0x1) return true; //page is dirty

我想这个逻辑应该告诉页面是否脏了