Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1090992
  • 博文数量: 252
  • 博客积分: 4561
  • 博客等级: 上校
  • 技术积分: 2833
  • 用 户 组: 普通用户
  • 注册时间: 2008-03-15 08:23
文章分类

全部博文(252)

文章存档

2015年(2)

2014年(1)

2013年(1)

2012年(16)

2011年(42)

2010年(67)

2009年(87)

2008年(36)

分类:

2009-12-18 16:37:39

#include
#include
#include
#include
#include
#include
#include
#include
#include

#define err(msg) printk(KERN_ALERT "%s\n", msg)

static struct class *ffclass;
static struct device *dev;

static int __init maininit(void)
{
        ffclass = class_create(THIS_MODULE, "ffclass");
        if (IS_ERR(ffclass)) {
                err("class_create");
                goto out;
        }

        dev = device_create(ffclass, NULL, MKDEV(22, 0), NULL, "ffclass");
        if (dev == NULL) {
                err("device_create");
                goto err;
        }

        printk(KERN_INFO "device create success.\n");

        return 0;
err:
        class_destroy(ffclass);
out:
        return -1;
}

static void __exit mainexit(void)
{
        device_destroy(ffclass, MKDEV(22, 0));
        class_destroy(ffclass);

        printk(KERN_INFO "device destroy success.\n");
}

module_init(maininit);
module_exit(mainexit);
MODULE_LICENSE("GPL");

阅读(760) | 评论(0) | 转发(0) |
0

上一篇:对shell脚本加密

下一篇:添加模块到内核

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