从软件的角度来看,在内存页面变dirty的指令和内核实际上在页面表项(PTE)中标记页面的时间之间的延迟是多少?
换句话说,如果一个指令dirty一个页面,下一条指令是否可以读取PTE并查看dirty bit?
发布于 2018-02-20 11:01:25
5.4页面转换表输入字段
...
Dirty (D) Bit. Bit 6.
This bit is only present in the lowest level of the page-translation hierarchy. It indicates whether the pagetranslation table or physical page to which this entry points has been written. The D bit is set to 1 by the processor the first time there is a write to the physical page.
3.7.6页面目录和页面表项
...
Dirty (D) flag, bit 6
Indicates whether a page has been written to when set. (This flag is not used in page-directory entries that point to page tables.) Memory management software typically clears this flag when a page is initially loaded into physical memory. The processor then sets this flag the first time a page is accessed for a write operation.
发布于 2018-02-20 11:14:20
AMD64体系结构程序员手册第2卷:系统编程(修订版3.22,2012年9月)
一般而言,脏位更新相对于其他加载和存储被排序,但不一定涉及访问WC存储器; 尤其是,它们可能不会导致WC缓冲区被刷新。但是,为了确保与未来处理器的兼容性,在读取D位之前应插入序列化操作。
发布于 2018-02-20 12:39:58
根据本文档的第2033页,Intel x86缓存关于页表的信息。
https://stackoverflow.com/questions/-100003496
复制相似问题