Chinaunix
标题:
/dev与/sys的疑惑
[打印本页]
作者:
chengyake
时间:
2013-04-07 14:43
标题:
/dev与/sys的疑惑
本人小菜,对/dev和/sys还没什么理解,不过一直有个疑惑:
驱动的目的无非是整合BSP资源,按照一定逻辑为用户空间提供一套使用接口。
那么在/dev中的open,ioctrl,close..等 和 /sys下的各个节点访问 在功能上是否重复
无非是/sys提供了一个类方式的树而已,所涉及的功能有什么是ioctrl所不能实现的吗?
两者并存的必要在哪?
作者:
jianzhouyang
时间:
2013-07-03 16:12
/sys不单单只提供给用户空间通过系统调用来读写属性文件,它给用户空间提供了内核设备、驱动、总线关系,与及类与设备的关系,在sys中,每个目录最根本的表示就是一个kobject,正是因为有这些koject kset的支持,都会让内核提供支持热插拔的机制,以及各个设备上电的先后等等,比较用户空间的mdev 或者 udev就是通过 sys的uevent机制动态在/dev创建设备节点。建议去看ldd3的设备模型,设备模型贯彻到几乎所有的驱动子系统,除非是很简单的驱动才没有用到设备模型的概念,不要只单单看到驱动是怎么写的,驱动背后的东西更多。
作者:
lelee007
时间:
2013-07-21 23:42
驱动的目的无非是整合BSP资源,按照一定逻辑为用户空间提供一套使用接口。
-------------------------------------------
我肿么感觉把驱动和BSP的角色放反了咧?
作者:
gz金易龙
时间:
2013-08-13 21:01
sys文件系统是2.6内核为了设备驱动模提出的,也有人说SYS文件系统是设备驱动模型的“副产品”。在这个文件系统中内核以“一切皆文件”的设计哲学将驱动以文件的方式展现出来。在这个系统中体现各个设备之间的关系,以树状结构展现各个驱动之间的联系。当然也包含上面这位同学说的热插拔,设备文件管理等等。
而/dev是设备文件,在Linux中维护两条设备链表,一条管理字符设备,一条管理块设备,而管理就是通过主设备好和从设备来确定的,在/dev下面的设备文件重要的就是主设备号和从设备号。
作者:
jmyu2006
时间:
2013-08-15 15:07
本来就是一个历史产物,你可以发现/sys下有些链接是指向/dev下的。
实际当中,用的比较多的还是在用户控件通过/sys下的属性文件与驱动交互。
如果实在不明白,不必纠结,先放放。
欢迎光临 Chinaunix (http://bbs.chinaunix.net/)
Powered by Discuz! X3.2