3

我正在编写一个高性能服务器应用程序(在 Linux 上),我正在尝试获得一条快速的关键路径。我担心在我的操作过程中内存分页和内存交换到磁盘(延迟毫秒级)。

我的问题是,如果我在服务器上有很多内存(比如 16GB)并且我的内存利用率保持在 6-10GB 左右,而且我知道同一个盒子上没有其他进程。应用启动暖机后能否保证不漏页?

4

1 回答 1

1

这不能保证。Linux 的默认行为是有时使用 RAM 来缓存文件,这可以提高某些工作流程的性能。这意味着有时即使内存未全部使用,内存页也会被换出。

您可以使用 mlock/mlockall 将进程的页面锁定在内存中。有关man 2 mlock更多信息,请参阅。

于 2012-11-01T14:52:19.440 回答