获取Linux上的usermode可用虚拟地址空间大小
是否有任何方法(无论是syscall、procfs、sysfs)来获取为用户空间保留的虚拟地址空间部分的大小?如果我理解正确,我需要的是一个内核“获取Linux上的usermode可用虚拟地址空间大小,linux,memory,memory-management,linux-kernel,Linux,Memory,Memory Management,Linux Kernel,是否有任何方法(无论是syscall、procfs、sysfs)来获取为用户空间保留的虚拟地址空间部分的大小?如果我理解正确,我需要的是一个内核“TASK\u SIZE常量,除非在这条线上还有一些其他区域可以在用户空间中访问。无论如何,它似乎是一个由所有进程共享的内核配置常量。不幸的是,我没有发现任何迹象表明它在某个地方暴露于usermode 例如,getrlimit(RLIMIT_AS)说的是infinite而不是确切的数字限制sysconf()没有任何类似的内容。在/proc//stat中有
TASK\u SIZE
常量,除非在这条线上还有一些其他区域可以在用户空间中访问。无论如何,它似乎是一个由所有进程共享的内核配置常量。不幸的是,我没有发现任何迹象表明它在某个地方暴露于usermode
例如,getrlimit(RLIMIT_AS)
说的是infinite
而不是确切的数字限制sysconf()
没有任何类似的内容。在/proc//stat
中有一个vsize
,它是当前为给定进程分配的虚拟内存大小,但我正在寻找此字段的上限。有没有办法获得这个限额