C语言 PCI 设备驱动程序将信息导出到 /proc 文件系统



我在一次采访中被问到这个问题。您正在编写 PCI 驱动程序,并且希望将与硬件相关的信息导出到/proc 文件系统。有趣的是,我搜索了驱动程序代码,找不到与/proc 文件系统相关的任何调用,尽管实际上信息已导出。它是自动完成的吗?机制是什么?谁能解释一下?

在/proc 伪文件系统中创建条目在 Linux 设备驱动程序 [3rd ed] 第 4 章中有说明。

现在你可能想考虑使用sysfs;它在LDD3第14章中有介绍。

一种方法是让您的司机

  • 实现一个函数,每当进程使用以下签名读取相应的/proc 条目时,就会调用该函数:

    int (*read_proc((char *page, char **start, off_t offset, int count, int *eof, void *data(;

  • 通过将函数的指针传递给 create_proc_read_entry() 来注册函数,该指针接受/proc 条目的名称作为字符串,其中包括:

    create_proc_read_entry("foobar", 0, NULL, your_read_func_ptr, NULL(;

当驱动程序卸载时,它应删除带有remove_proc_entry()

相关内容

  • 没有找到相关文章

最新更新