共享内存访问导致rss增加

Shared memory access cause increasing rss

本文关键字:rss 增加 内存 访问 共享      更新时间:2023-10-16

我有一个apache模块,当它被请求时加载一个100MB的文件到内存中。

所以为了减少执行时间,我尝试IPC共享内存(父进程创建shm段,然后子进程附加它)

我目前使用APR apr_shm_create(mmap + shmopen)。

但是我也发现每个子进程的RSS(ps aux | grep httpd)在执行时分别有大约100MB。(附加时刻除外)

问题:如何重置或防止子进程的RSS增加,从而在整个httpd进程中只消耗100MB的内存?这是不可能的吗?

进程的驻留集大小是映射到该进程的内存并且驻留在RAM中的内存页的总大小。当进程附加到大小为100 MB的共享内存时,其RSS将增加100 MB(如果共享内存段驻留在RAM中并且没有交换或尚未物理分配)。但是这并不意味着占用了更多的物理内存。