无法从共享对象映射段:资源暂时不可用

时间:2012-05-18 08:46:24

标签: c memory dlopen

在Linux x86_64上加载共享库时我得到了

dlopen error: "FILENAME" failed to map segment from shared object: Resource temporarily unavailable

该机器安装了48个GiB主机内存,没有其他用户登录。因此,它可能不是因为内存不足。

我加载了几十个共享库。

代码就像(非常简化的设置)。是的mlockall是故意的:

#if _POSIX_MEMLOCK > 0
#warning "POSIX_MEMLOCK available" 
#else
#error "POSIX_MEMLOCK needed. Aborting"
#endif

int main()
{
  if (mlockall(MCL_FUTURE)) {
    printf("error page-locking\n");
    exit(1);
  }

  void *handle;
  handle = dlopen( "filename.so" ,  RTLD_LAZY);

}

页面锁定的其他限制吗?

0 个答案:

没有答案