proc新接口
注意,在较新版本的内核中,procfs
的函数接口有所变化。
系统 | 内核版本 |
---|---|
Linux | 5.10.111 |
在驱动中添加以下代码:
#include < linux/kernel.h >
#include < linux/module.h >
#include < linux/init.h >
#include < linux/proc_fs.h >
#include < linux/seq_file.h >
struct proc_dir_entry *my_proc_entry;
static int proc_clk_show(struct seq_file *m, void *v)
{
seq_printf(m,
"pll0: %lu Mhzn"
"pll1: %lu Mhzn"
"pll2: %lu Mhzn",
100, 200, 300);
return 0;
}
static int clk_info_open(struct inode *inode, struct file *filp)
{
return single_open(filp, proc_clk_show, NULL);
}
static const struct proc_ops clk_stat_proc_fops = {
.proc_open = clk_info_open,
.proc_read = seq_read,
.proc_lseek = seq_lseek,
.proc_release = seq_release,
};
static int __init my_module_init(void)
{
my_proc_entry = proc_create("clk", 0, NULL, &clk_stat_proc_fops);
return 0;
}
static void __exit my_module_exit(void)
{
proc_remove(my_proc_entry);
}
module_init(my_module_init);
module_exit(my_module_exit);
MODULE_LICENSE("GPL");
新的proc
接口中,将原来的struct file_operations
换成了struct proc_ops
,其中成员函数也添加了对应的前缀proc
,但本质还是一样的,只是换了名字,更加规范了一些。
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。
举报投诉
-
内核
+关注
关注
3文章
1362浏览量
40221 -
接口
+关注
关注
33文章
8491浏览量
150811 -
驱动
+关注
关注
12文章
1824浏览量
85169 -
Linux
+关注
关注
87文章
11222浏览量
208886
发布评论请先 登录
相关推荐
Linux平台/proc虚拟文件系统详解
Linux 内核提供了一种通过 /proc 文件系统,在运行时访问内核内部数据结构、改变内核设置的机制。proc文件系统是一个伪文件系统(即虚拟文件系统),它只存在内存当中,而不占用外存空间。它以文件系统的方式为访问系统内核数据
发表于 06-08 10:49
•1447次阅读
Linux proc文件系统详解
上一篇:《文件系统有很多,但这几个最为重要》介绍了procfs(进程文件系统的缩写),包含一个伪文件系统(启动时动态生成的文件系统),用于通过内核访问进程信息。这个文件系统通常被挂载到 /proc 目录, /proc中不仅仅放了
发表于 06-15 11:42
•1044次阅读
USB接口驱动的移植介绍
一、介绍目前5G网络比较火,这里介绍一款5g模组的驱动的移植,实现5G上网,目前有很多5G模组,比如移远、simcom、华为等等接口类型有u***和PCIE,这里先
发表于 12-20 07:32
Linux内核空间设备驱动程序的开发
本文详细介绍了Linux平台下内核空间设备驱动程序的开发。在比较proc和dev两种文件系统的基础上,分别以PCI设备和USB设备的驱动程序
发表于 08-19 08:44
•18次下载
需要了解的Linux中 /proc/[pid] 目录的各文件
用户和应用程序可以通过 proc 得到系统的信息,并可以改变内核的某些参数。由于系统的信息,如进程,是动态改变的,所以用户或应用程序读取 proc 文件时,proc 文件系统是动态从系统内核读出所需信息并提交的。
发表于 04-26 15:37
•624次阅读
Linux驱动开发-proc接口介绍
Linux系统上的/proc目录是一种文件系统,即proc文件系统。 与其它常见的文件系统不同的是,/proc是一种伪文件系统(也即虚拟文件系统),存储的是当前内核运行状态的一系列特殊
AIO 3399ProC工具Linux Upgrade Tool 1.34
电子发烧友网站提供《AIO 3399ProC工具Linux Upgrade Tool 1.34.zip》资料免费下载
发表于 09-21 10:25
•2次下载
AIO 3399ProC工具Linux Upgrade Tool v1.24
电子发烧友网站提供《AIO 3399ProC工具Linux Upgrade Tool v1.24.zip》资料免费下载
发表于 09-21 10:24
•3次下载
AIO 3399ProC Linux SDK源码包(仅支持RK3399Pro)
电子发烧友网站提供《AIO 3399ProC Linux SDK源码包(仅支持RK3399Pro).txt》资料免费下载
发表于 09-21 09:59
•13次下载
如何通过proc接口发起系统请求
有些硬件平台可能不能使用 SysRq 复合键,这种情况下,也可以通过 /proc 接口进入系统请求状态。 因为在内核配置选项中,使能了 CONFIG_MAGIC_SYSRQ 选项后,系统启动之后
Linux驱动中procfs接口的创建
procfs接口创建 实现效果: 例如, 在 /proc 下创建一个clk节点,通过 cat /proc/clk 可查看内容: 在驱动中添加以下代码: # include # incl
Linux中的proc介绍
/proc 是一种伪文件系统(也即虚拟文件系统),存储的是当前内核运行状态的一系列特殊文件,用户可以通过这些文件查看有关系统硬件及当前正在运行进程的信息,甚至可以通过更改其中某些文件来改变内核的运行状态。
评论