网管联盟 | 网管论坛 | 网管u家 | 网管博客 | 网管软件 | 网管求职 | 小游戏 | 网管搜索 | 网管原创 | 网管聚合 | 网管读摘 | 网管焦点 | 世界素材 | 会员投稿 | 会员中心 
中国网管联盟
Windows Linux Cisco 网络技术 数据库 黑客攻防 DotNet Java PHP 认证 新闻资讯 服务器 存储资讯 网络设备 网管学堂 技术专题 焦点 网吧频道
 当前位置: > bitsCN.com > linux > 系统管理 > 内核技术 > Linux内核模块内存申请与释放  

Linux内核模块内存申请与释放

2008-07-24  作者:bitsCN整理  来源:中国网管联盟  点评 投稿 收藏

    申请内存:

    void *kmalloc(size_t size, int flags) 网管u家www.bitscn.net

    kmalloc函数和malloc函数相似,它有两个参数,一个参数是size,即申请内存块的大小,这个参数比较简单,就像malloc中的参数一样。第二个参数是一个标志,在里面可以指定优先权之类的信息。在Linux中,有以下的一些优先权:

网管u家u.bitscn@com

    GFP_KERNEL,它的意思是该内存分配是由运行在内核模式的进程调用的,即当内存低于min_free_pages的时候可以让该进程进入睡眠; 网管u家www.bitscn.net

    GFP_ATOMIC,原子性的内存分配允许在实际内存低于min_free_pages时继续分配内存给进程。 中国网管论坛bbs.bitsCN.com

    GFP_DMA:此标志位需要和GFP_KERNEL、GFP_ATOMIC等一起使用,用来申请用于直接内存访问的内存页。 网管u家bitscn.net

    释放: 网管下载dl.bitscn.com

    Kfree(const void *objp) const void *objp=为需要释放的内存空间指针。

网管u家u.bitscn@com

TAGs   申请   释放   内存   模块       进程   分配   参数   void   GFP_KERNEL      
 上一篇:Linux操作系统内核引导参数简介   下一篇:Linux 可加载内核模块剖析
Linux内核模块内存申请与释放 评论:
loading.. 评论加载中…
评论:请自觉遵守互联网相关政策法规,评论不得超过250字。

验证码: 注册用户
本类热门排行:
最新推荐文章:
网管论坛交流: