Linux设备驱动程序-字符设备驱动程序

1.查看主设备号,次设备号

进入/dev目录执行ls -l,第四,五列分别为主次设备号,10,180,1,5,这些是主设备号,而60,63这些就是次设备号

130|shell@android:/dev # ls -l
crw-rw-r-- system   radio     10,  60 1969-12-31 21:00 alarm
crw-rw-rw- root     root      10,  63 1969-12-31 21:00 ashmem
crw-rw-rw- root     root      10,  59 1969-12-31 21:00 binder
crw-rw-rw- root     root     180, 194 1969-12-31 21:00 btusb0
2.保存设备编号

在linux/types.h中定义了dev_t来保存设备编号:

typedef __u32 __kernel_dev_t;

typedef __kernel_dev_t          dev_t;

这是个32位的数,前12位保存主设备号,后20位保存次设备号

MAJOR(dev_t dev)获取主设备号

MINOR(dev_t dev)获取次设备号

MKDEV(int major,int minor)将主次设备号转换成dev_t类型

3.建立一个字符设备

首先要获得设备编号

//liunux/fs.h

extern int register_chrdev_region(dev_t, unsigned, const char *);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值