订阅/ sys中的文件

Inotify不会触发/sys文件更改 – 有哪些方法来订阅那里的更改?

使用udev和udev规则获取/ sys中反映的更改通知(硬件hotplug,驱动程序加载,固件加载等)。

有关详细信息,请参阅http://hackaday.com/2009/09/18/how-to-write-udev-rules/

改变/ sys的事件通常由udev处理。 因此,您可以添加udevd规则来处理事件,或者使用libudev来访问和监视sysfs。 我刚刚在这里找到一些教程: http : //www.signal11.us/oss/udev/

要通知/ sys文件或目录的更改,我使用python中的轮询对象 。

 import select poll_objet = select.poll() fd_object = file("/sys/what_you_want_to_survey", "r") poll_objet.register(fd_object) # I use the select.POLLPRI | select.POLLERR combination in my code ;) result = poll_object.poll() 

其中结果是被触摸的(fd,event)列表。