编写内核(Linux)模块,用于保存从删除到交换的进程页面

时间:2012-11-19 11:12:31

标签: linux linux-kernel kernel kernel-module

需要将进程页面(用户部分!)从删除保存到交换。

我只需要在内核中执行此操作。 (我知道的语言C)

(也许在shrink_page_list中插入钩子?)

我有进程的ID,需要在系统中保存和阈值的物理内存量(我们填充,而不填充)。 ID和阈值写入/ proc,/ dev或/ sys。

如何处理?

要查看哪些文件?

要阅读哪些教程?

也许有些例子与此任务有关。

信息:我在编译Debian Lenny的内核,使用Qemu在我的Ubuntu上启动它。

1 个答案:

答案 0 :(得分:0)

请参阅get_user_pages。 http://www.makelinux.net/ldd3/chp-15-sect-3

使用get_user_pages,您可以获得所需的任何页面并将其锁定在内存中。

更好的是,请查看来源的评论 http://lxr.free-electrons.com/source/mm/gup.c#L637