字符设备的注册与注销模版

//一下程序申请了2个从设备号//#define MEMDEV_MAJOR 254 static mem_major = MEMDEV_MAJOR;  //主设备号module_param(mem_major, int, S_IRUGO);struct cdev cdev; static int __init  XXX_init(void)//驱动程序的注册{d
摘要由CSDN通过智能技术生成
//一下程序申请了2个从设备号
//#define MEMDEV_MAJOR 254 
static mem_major = MEMDEV_MAJOR;  //主设备号


module_param(mem_major, int, S_IRUGO);
struct cdev cdev; 
static int __init  XXX_init(void)//驱动程序的注册
{
dev_t devno = MKDEV(mem_major, 0);//mem_major=MEMDEV_MAJOR=254;   宏MKDEV的作用是生成设备号,将主从设备号连接起来;
//devno为设备类型的32位数
/* 静态申请设备号*/
  if (mem_major)
    result = register_chrdev_region(devno, 2, "memdev");//devno为设备类型的32位数  申请几个次设备号
  else  /* 动态分配设备号 */
  {
    result = alloc_chrdev_region(&devno, 0, 2, "memdev");//分配到的设备号将会存在devno
    mem_major = MAJOR(devno);//如果想知道申请的主设备号是多少,可以用MAJOR()函数将主设备好提取出来
  }  
  if (result < 0)
    return result;
 /*设备注册*/
  
  /*由于我们定义了一个s
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值