驱动开发学习day2-->字符设备驱动框架

本文介绍了Linux字符设备驱动的基本框架,包括字符设备的定义、设备号的概念、静态和动态申请设备号的方法、创建和初始化字符设备的过程。此外,还讨论了用户空间与内核空间数据拷贝的实现。
摘要由CSDN通过智能技术生成

1 字符设备驱动框架

1.1 字符设备
        定义:是指只能一个字符一个字符的读写的设备,不能数据读取设备中的某一段数据,读取数据需要按照先后顺序。字符设备是面向字节流的


    常见的字符设备:鼠标 键盘 串口 控制台 led设备
    块设备:是指可以从设备的任意位置读取一定长度数据的设备。
    常见的块设备:硬盘 磁盘 u盘 光盘 sd卡。。。

1.2 字符设备框架

init:
    {
    申请设备号(静态申请 动态申请 )
    创建一个字符设备--》属性
    初始化字符设备--》方法
    将设备号和字符设备关联起来
    }
exit:
    {
    销毁字符设备
    删除申请的字符设备号
    }

买车:
    1 申请车牌号(静态申请 动态申请)陕A.88888 陕A.44444
    2 买车
    3 车牌号和车关联
卖车:
    1 卖车/销毁
    2 注销车牌号


2 设备号

         定义:设备号是设备在内核中的身份和标志,是内核区分不同设备的唯一标识符,设备号是由主设备号和次设备号构成,主设备号表是一类设备,次设备号表示该类设备中的一个设备。
    
      设备号是一个32bit位的无符号整数,高12位是主设备号,低20位是次设备号

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值