__get_free_pages()或 alloc_pages()从伙伴分配器获取连续的页面帧,kmem_cache_alloc()或 kmalloc()从slab分配器获取对象(专用或通用),vmalloc()()获取不连续的内存区域。