Eva*_*oll 10 kernel memory shared-memory
我只是想知道这些值是在哪里设置的以及它们的默认值是什么?我的当前是 18446744073692774399。我没有把它设置在我能看到的任何地方。
$ cat /proc/sys/kernel/shmmax
18446744073692774399
$ sysctl kernel.shmmax
kernel.shmmax = 18446744073692774399
Run Code Online (Sandbox Code Playgroud)
小智 9
该__init函数通过调用ipc_ns_init设置 的初始值,将其设置为宏的值。shmmaxshm_init_nsSHMMAX
的定义SHMMAX在<uapi/linux/shm.h>:
#define SHMMAX (ULONG_MAX - (1UL << 24)) /* max shared seg size (bytes) */
Run Code Online (Sandbox Code Playgroud)
在 64 位计算机上,该定义等于您找到的值18446744073692774399.