linux内核kmalloc函数使用方法
来源:互联网 发布:js date对象 编辑:程序博客网 时间:2024/05/17 10:43
kmalloc函数使用注意
kmalloc使用时,第二个参数为gfp_mask分配器标志,内核中最常用的有
- GFP_KERNEL
- GFP_ATOMIC
如何使用
GFP_KERNEL这个标志使用普通优先级,即可能会导致睡眠 所以只能用在可以重新安全调度的进程上下文里(没有锁持有)
- GFP_ATOMIC标志表示不能睡眠
一般来说,在中断上下文,中断下半部,以及进程上下文锁区间内,不能使用可能导致阻塞的函数,分配内存需要使用GFP_ATOMIC.
总结
分配内存时:
使用GFP_ATOMIC
1.报文处理函数(中断下半部)
2.配置处理函数的锁区间(进程上下文锁区间)
3.中断处理程序(中断上下文)使用GFP_KERNEL
1.配置处理函数的锁区间之外(可重新安全调度进程上下文)
2.其余非中断处理以及中断下半部处理流程
阅读全文
0 0
- linux内核kmalloc函数使用方法
- kmalloc内核函数
- Linux内核学习:kmalloc
- [linux 内核]kmalloc/kfree,vmalloc/vfree函数用法和区别
- linux kmalloc函数
- linux kmalloc函数分析
- 内核中的kmalloc函数详解
- 内核中的kmalloc函数详解
- 内核中的kmalloc函数详解
- 内核中的kmalloc函数详解
- 内核中的kmalloc函数详解
- 内核中的kmalloc函数详解
- linux中kmalloc函数详解
- 浅析linux内核内存管理之kmalloc
- 浅析linux内核内存管理之kmalloc
- Linux内核 kmalloc, kzalloc & devm_kzalloc 区别
- linux内核Kmalloc - GFP_ATOMIC - GFP_KERNEL - GFP_USER
- LINUX内核内存管理kmalloc,vmalloc
- Two Sum
- 堆排序 Java
- 类对象结构
- Composer实现PHP中类的自动加载
- 秦始皇修路,白书P345LA5713(最小生成树,Kruskal算法)
- linux内核kmalloc函数使用方法
- sci期刊发表医学论文注意哪些事项
- springmvc- 分页插件-<jsp:include >遇到问题
- make 2>&1 | tee make.out 命令解释
- 安吉之行
- ButterKnife的功能描述
- 解决ubuntu16.04安装cuda时出现E:无法定位软件包
- 打造新一代去中心化代币交易撮合协议,王东想实现代币交易新生态
- 【转】php中return die exit用法梳理