【问题标题】:Process independent function to allocate hugepage进程独立函数分配大页
【发布时间】:2011-11-12 17:59:23
【问题描述】:

我正在阅读hugetlb.c,发现alloc_huge_page() 可以分配大页面,但取决于进程,这意味着它的参数struct vm_area_struct *vma 是每个进程的虚拟内存区域。但是,我想要的是一个独立于进程的数据结构,因为我想在虚拟内存空间中构建文件系统,并尝试为我的文件系统分配 2MB 块。

谁能解释一下?

【问题讨论】:

  • 你能解释一下你想写什么样的代码吗?我猜这是在Linux中?内核模式代码还是用户空间?你知道 FUSE(用户空间中的文件系统)吗?

标签: c memory-management


【解决方案1】:

您可以使用文件映射共享内存:http://msdn.microsoft.com/en-us/library/windows/desktop/aa366551(v=vs.85).aspx

你也可以使用shmem之类的库,但我不确定它是否支持Win32/64

【讨论】:

  • 我想要的是在内核空间而不是用户空间分配页面,所以我不能使用库。我认为 alloc_huge_page() 可以,但它取决于进程。 alloc_fresh_huge_page() 与进程无关,但它只分配虚拟内存空间,而不是真正的物理页面。
猜你喜欢
  • 2016-12-31
  • 1970-01-01
  • 1970-01-01
  • 2012-08-27
  • 2021-01-31
  • 2015-12-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多