首页 Sysfs文件系统在嵌入式开发中的应用

Sysfs文件系统在嵌入式开发中的应用

举报
开通vip

Sysfs文件系统在嵌入式开发中的应用 &nbsh1;   Sysfs文件系统在嵌入式开发中的应用     刘江 【Summary】在嵌入式开发中我们有时需要在用户层控制内核及其驱动的一些功能。传统的方法是通过ioctl系统调用实现。而Sysfs为我们提供了一种更为方便的通过读写文件的方法。大大方便了嵌入式开发。 【Key】嵌入式;内核驱动;Sysfs文件系统 Sysfs是一个向用户空间导出内核数据结构,对象和性...

Sysfs文件系统在嵌入式开发中的应用

&nbsh1;

 

Sysfs文件系统在嵌入式开发中的应用

 

 

刘江

【Summary】在嵌入式开发中我们有时需要在用户层控制内核及其驱动的一些功能。传统的方法是通过ioctl系统调用实现。而Sysfs为我们提供了一种更为方便的通过读写文件的方法。大大方便了嵌入式开发。

【Key】嵌入式;内核驱动;Sysfs文件系统

Sysfs是一个向用户空间导出内核数据结构,对象和性质的文件系统,它不仅提供了察看内核内部数据结构的能力,还可以修改这些数据结构。Sysfs已经成为老式的IOCTL机制的一种替代品。向内核发送神秘的ioctl通常需要一个C程序。与之相比,从/向Sysfs文件读/写一个值要简单的多。一个简单的shell命令就足够了。

一、建立属性文件

Sysfs是用于 关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf 现设备驱动模型的文件系统,它基于ramfs。要使用Sysfs就需要了解Sysfs提供给外界的API。Sysfs文件系统中提供了四类文件的创建与管理,分别是目录、普通文件、软链接文件、二进制文件。目录层次往往代表着设备驱动模型的结构,软链接文件则代表着不同部分间的关系。比如某个设备的目录只出现在/sys/devices下,其他地方涉及到它时只好用软链接文件链接过去,保持了设备唯一的实例。而普通文件和二进制文件往往代表了设备的属性,读写这些文件需要调用相应的属性读写。

我们可以使用DEVICE_ATTR函数宏来建立一个属性文件。函数宏DEVICE_ATTR原型是DRIVER_ATTR(_name,_mode,_show,_store)。函数宏DEVICE_ATTR内封装的是__ATTR(_name,_mode,_show,_stroe)方法。_show:表示的是读方法,_stroe表示的是写方法。通过以下实例我们可以在Sysfs文件系统中建立一个dev_attr_watchdog的属性文件。其中wd_show和wd_store分别为读写方法。

staticDEVICE_ATTR(watchdog,S_IRUGO|S_IWUSR,wd_show,wd_store);

将_mode设置为S_IRUGO|S_IWUSR使创建的属性文件为可读可写。在驱动的初始化函数中需要调用device_create_file来使属性文件与驱动设备文件关联。函数原型为intdevice_create_file(structdevicedev,conststructdevice_attributeattr);

二、属性的读写

本文档为【Sysfs文件系统在嵌入式开发中的应用】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
个人认证用户
资教之佳
暂无简介~
格式:doc
大小:36KB
软件:Word
页数:4
分类:互联网
上传时间:2023-11-27
浏览量:0