找回密码
 注册
关于网站域名变更的通知
查看: 271|回复: 1
打印 上一主题 下一主题

利用Linux设备来驱动模型(上)

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2019-8-14 10:00 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
尽管LDD3中说对多数程序员掌握设备驱动模型不是必要的,但对于嵌入式Linux的底层程序员而言,对设备驱动模型的学习非常重要。
& v: W* k& l$ [! U* ULinux设备模型的目的:为内核建立一个统一的设备模型,从而又一个对系统结构的一般性抽象描述。换句话说,Linux设备模型提取了设备操作的共同属性,进行抽象,并将这部分共同的属性在内核中实现,而为需要新添加设备或驱动提供一般性的统一接口,这使得驱动程序的开发变得更简单了,而程序员只需要去学习接口就行了。
/ l5 d: Z3 R+ a8 t在正式进入设备驱动模型的学习之前,有必要把documentation/filesystems/sysfs.txt读一遍(不能偷懒)。sysfs.txt主要描述/sys目录的创建及其属性,sys目录描述了设备驱动模型的层次关系,我们可以简略看一下/sys目录,
3 g) B! E# r- o, n# t6 z- g  H# W' v3 b# y. Y$ l' b
. ]3 X. U& P+ v) N

( }! L- @" p% `' l. h/ M' H* G
3 o% J' N7 G) C2 t/ ]* T

! ]; ~, z1 T6 H0 V. Yblock:所有块设备
7 Y% U" T% E( w- {( Hdevices:系统所有设备(块设备特殊),对应struct device的层次结构
  @2 p% D- v6 s* Sbus:系统中所有总线类型(指总线类型而不是总线设备,总线设备在devices下),bus的每个子目录都包含
, x! N9 U- M( b( _% s    --devices:包含到devices目录中设备的软链接
( `( V: d' I- C5 L! s    --drivers:与bus类型匹配的驱动程序
! a3 H0 P* m% }. H  Iclass:系统中设备类型(如声卡、网卡、显卡等)
2 @% H% ^( R  H8 S+ T  _7 ]fs:一些文件系统,具体可参考filesystems /fuse.txt中例子* a& X+ P6 T/ k4 e; ^& e, J6 V1 g
dev:包含2个子目录
, j  j! G) H5 w6 x1 k7 a, y- C3 q--char:字符设备链接,链接到devices目录,以<major>:<minor>命名
# N/ |: c' w, ?6 |! a# R--block:块设备链接2 [& H, r8 D9 v# ^& Q" w* R: ?

* F3 m! d* o/ ?
游客,如果您要查看本帖隐藏内容请回复
. [2 X* b4 [6 T& b3 w

/ @& Y7 C) ^3 n
- r$ E  k3 d9 s4 g

- d: T$ D2 c( z
. [: S/ u, ~8 z- T. [0 x8 b0 {" q, c
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-11-24 23:21 , Processed in 0.171875 second(s), 26 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表