小默

free pages

#include <linux/module.h>
#include 
<linux/kernel.h>
#include 
<linux/gfp.h>
#include 
<linux/mm.h>

int __init freepage_init()
{
    unsigned 
long page;

    page 
= __get_free_pages(GFP_KERNEL,3);  //8 page
    if(!page){
        
//no enough space
        return -ENOMEM;
    }

    printk(
"<1>the vaddr of the first page is <%lx>..",page);

    free_pages(page,
3);

    
return 0;
}

void __exit freepage_exit()
{
    
return;
}

module_init(freepage_init);
module_exit(freepage_exit);

MODULE_LICENSE(
"GPL");

Makefile:
obj-m := freepage.o
KDIR :
= /lib/modules/$(shell uname -r)/build
PWD :
= $(shell pwd)

default:
    $(MAKE) 
-C $(KDIR) SUBDIRS=$(PWD) modules


posted on 2010-06-01 20:18 小默 阅读(171) 评论(0)  编辑 收藏 引用 所属分类: Linux


只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   博问   Chat2DB   管理


导航

统计

留言簿(13)

随笔分类(287)

随笔档案(289)

漏洞

搜索

积分与排名

最新评论

阅读排行榜