嵌入式LINUX驱动学习之12内核内存分配

嵌入式LINUX驱动学习之12内核内存分配

一、头文件、函数及说明:

//头文件位置 : include/linux/slab.h
/*申请内存函数:   kmalloc()
      实现方式一般参考源文件:include/linux/slab_def.h 、
                       include/linux/slob_def.h、
                       include/linux/slub_def.h
      功能:分配一段物理上和虚拟空间都是连续的内存地址空间 
      参数: size   : 需要申请内存空间的大小;
            flags  : GFP_KERNEL;主要用于进程,
                     GFP_ATOMIC;主要用于中断处理程序中,也可用于其它不会发生休眠的程序中;
                     更多参考include/linux/gfp.h
*/                                 
void *kmalloc(size_t size, gfp_t flags)
void kfree(const void *);//释放申请的内存,参考为kmalloc的返回值;

猜你喜欢

转载自blog.csdn.net/weixin_47273317/article/details/108279395