linux为什么有些驱动必须用sysfs?
sysfs是一个特殊的文件系统,可以理清楚设备驱动模型之间的层级关系。可以通过这个文件系统来操作设备。有些设备还只能用sysfs来使用。sysfs可以通过读写数据对设备进行具体的操作。ioctl也可以读写数据,但是有些场合还是使用sysfs更合适。
sysfs可以在控制台和shell脚本上直接和用户空间进行交互,而ioctl需要编写个c程序才能运行。因此在这方面sysfs更合适。
怎么实现呢?
因为在驱动中提供了sysfs接口给用户使用,使得用户可以通过cat或者echo命令来查看和修改驱动中某些变量的值。
下面介绍驱动中创建sysfs接口的方法。