1、kmalloc和kfree
#include <linux/slab.h> void *kmalloc(size_t size, int flags); flag: GFP_ATOMIC - 用来从中断处理和进程上下文之外的其他代码中分配内存,从不睡眠 GFP_KERNEL - 内核内存的正常分配,可以睡眠,物理地址上连续,内部调用__get_free_pages GFP_USER - 用来为用户空间页分配内存,可以睡眠 GFP_HIGHUSER - 通GFP_USER,但是从高端内存分配
void kfree(const void *objp);
2、后备缓存