我正在研究 Linux 中的内存分配,我有一个关于伙伴分配器的问题。阅读可用的文档内核.org我了解到伙伴分配器负责物理页面的分配(通过 __alloc_pages() 函数)。
我想知道伙伴系统(和 __alloc_pages() 函数)是否参与向用户进程分配页面,或者是否仅为内核进程分配页面。
综上所述,我的问题是:如果需要将用户进程加载到物理内存中,那么会涉及伙伴分配器吗?
答案1
IMO,用户进程的页面和内核进程的页面之间没有区别。因此,我相信每当需要在物理内存上分配任何内容时,都会涉及伙伴分配器。