用于boost共享内存分配的最大可用共享内存

时间:2013-08-20 19:13:20

标签: c++ boost shared-memory

如何检查'managed_shared_memory'分配的最大可用共享内存? (提升)

我正试图在octacore机器上分配所有32 GB的可用内存,但我不允许这样做。

是否有任何操作系统要求我需要填写或设置一些权限才能这样做。

我有什么方法可以从操作系统中获得可用的大小。

感谢。

1 个答案:

答案 0 :(得分:0)

这取决于您使用的操作系统。

例如,在Linux操作系统中,有一个功能可以处理这类信息:getrlimit

从这个手册页中你可以读到这个(其中一个资源是):

  

RLIMIT_DATA这是进程数据段的最大大小(以字节为单位)。如果超出此限制,则malloc()函数将失败,并将errno设置为[ENOMEM]。