Linux2.6内核中引入了sysfs文件系统。sysfs文件系统整理的设备驱动的相关文件节点,被视为dev文件系统的替代者。同时也拥有类似proc文件系统一样查看系统相关信息的功能。最主要的作用是sysfs把连接在系统上的设备和总线组织成分级的文件,使其从用户空间可以访问或配置。
Sysfs被加载在 /sys/目录下,它的子目录包括:
(本文以高通sdm630平台为例)
1) Block:在系统中发现的每个块设备在该目录下对应一个子目录,如mmcblk0对应eMMC设备主节点(此部分可以参考文章: linux驱动由浅入深系列:块设备驱动之一(高通eMMC分区实例)。每个子目录中又包含一些属性文件,它们描述了这个块设备的各方面属性,如:设备大小。(loop块设备是使用文件来模拟的)
我们查看/sys/block目录的详细信息,发现都是链接文件,指向了/sys/devices/下的设备: