【发布时间】:2016-10-31 18:07:34
【问题描述】:
- 是否在内核中使用
alloc_pages分配页面,如果相关也映射以供用户使用,确保被固定并且不会被换出到磁盘? -
alloc_pages函数返回的页面地址是dma地址吗?也就是说,硬件设备可以通过 dma 访问的地址类型是否相同?
【问题讨论】:
标签: linux memory linux-kernel
alloc_pages 分配页面,如果相关也映射以供用户使用,确保被固定并且不会被换出到磁盘?alloc_pages函数返回的页面地址是dma地址吗?也就是说,硬件设备可以通过 dma 访问的地址类型是否相同?【问题讨论】:
标签: linux memory linux-kernel
页面是在内核中使用 alloc_pages 分配的,也是为用户映射的 如果这是相关的,请使用,确保被固定并且不会被交换 出磁盘?
alloc_pages() 为内核和用户空间分配页面,取决于谁在调用它。用户空间使用的页面。如果是匿名(用户堆栈或堆)页面,则可以换出。
alloc_pages 函数返回的页面地址是 dma 地址?即硬件设备的地址类型是否相同 可以通过 dma 访问吗?
没有必要。你必须指定一个标志告诉 alloc_pages() 你想要什么样的页面(例如 .__GFP_DMA 或 __GFP_DMA32 用于 dma 地址)。
【讨论】: