我想知道Page Cache中缓存了哪些文件,并且想实用地释放特定文件的缓存空间。如果需要的话,我可以编写内核模块,甚至修改内核代码。有人能给我一些线索吗?
首先,内核不会维护页面缓存中所有文件的主列表,因为它不需要此类信息。相反,给定一个索引节点,您可以查找关联的页面缓存页面,反之亦然。
对于每个页面缓存struct page
, page_mapping()
将返回struct address_space
它属于。这host
成员struct address_space
标识拥有者struct inode
,从那里您可以获得索引节点号和设备。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)