我目前正在使用frontswap,它使用zswap压缩RAM页面并存储在RAM中。关于它认为这样做的页面存在一个疑问。 我在https://lwn.net/Articles/386090/和https://www.kernel.org/doc/Documentation/vm/frontswap.txt处了解了frontswap。它说它处理交换页面,但它从未明确提到它使用匿名页面或脏页面或两者。从我的理解。
匿名页面是在程序中空间需求增加时创建的页面。例如,假设您已声明一个大矩阵来进行某些处理。所以当你为这个矩阵分配内存时,这个内存对应于一些我们称之为匿名的RAM页面,因为这些页面不包含文件映射的数据。
脏页是我们从二级存储加载到RAM的页面,在处理过程中我们会修改该页面。
如果我对上述两个定义有误,请纠正我。
Frontswap在page_io.c中作为swap_readpage()和swap_writepage()函数中的钩子存在。那么,我真的想知道什么样的页面通过这些函数调用传递?