Chinaunix首页 | 论坛 | 博客
  • 博客访问: 7549431
  • 博文数量: 961
  • 博客积分: 15795
  • 博客等级: 上将
  • 技术积分: 16612
  • 用 户 组: 普通用户
  • 注册时间: 2010-08-07 14:23
文章分类

全部博文(961)

文章存档

2016年(1)

2015年(61)

2014年(41)

2013年(51)

2012年(235)

2011年(391)

2010年(181)

分类: 嵌入式

2011-01-13 19:32:42

  1. #include <linux/module.h>
  2. #include <linux/init.h>

  3. MODULE_LICENSE("GPL");
  4. MODULE_AUTHOR("David Xie");
  5. MODULE_DESCRIPTION("Memory alloc Module");
  6. MODULE_ALIAS("malloc module");

  7. char *buf1 = NULL;
  8. char *buf2 = NULL;


  9. int alloc_init()
  10. {
  11.     buf1 = kmalloc(100,GFP_KERNEL);
  12.     memset(buf1,0,100);
  13.     strcpy(buf1,"<<< --- Kmalloc Mem OK! --- >>>");
  14.     printk("<0>BUF 1 : %s\n",buf1);
  15.     
  16.     buf2 = get_zeroed_page(GFP_KERNEL);
  17.     strcpy(buf2,"<<<--- Get Free Page OK! --- >>>");
  18.     printk("<0>BUF 2 : %s\n",buf2);
  19.     return 0;
  20. }


  21. void alloc_exit()
  22. {
  23.     kfree(buf1);
  24.     free_page(buf2);
  25.     printk("<0><<< --- Module Exit! --->>>\n");
  26. }

  27. module_init(alloc_init);
  28. module_exit(alloc_exit);
  1. ifneq ($(KERNELRELEASE),)

  2. obj-m := alloc_mem.o

  3. else
  4.     
  5. KDIR := /home/guoqian/4-3-1/linux-2.6.29
  6. all:
  7.     make -C $(KDIR) M=$(PWD) modules ARCH=arm CROSS_COMPILE=arm-linux-
  8. clean:
  9.     rm -f *.ko *.o *.mod.o *.mod.c *.symvers modul*

  10. endif
阅读(1938) | 评论(0) | 转发(3) |
0

上一篇:矩阵键盘

下一篇:内核定时器

给主人留下些什么吧!~~