内核模块为/ proc

如何编写一个内核模块,在/ proc中创build一个名为mymod的目录,其名称中的一个文件是mymodfile。 写入该文件时,该文件应接受1到3的数字,并根据已写入的数字在读取时返回以下消息:

•1:当前系统时间(以微秒为单位)
•2:系统正常运行时间
•3:系统中当前进程的数量

“输出”

root@Paradise# echo 1 > /proc/mymod/mymodfile root@Paradise# cat /proc/mymod/mymodfile 08:30:24 342us root@Paradise# echo 2 > /proc/mymod/mymodfile root@Paradise# cat /proc/mymod/mymodfile up 1 day, 8 min root@Paradise# echo 3 > /proc/mymod/mymodfile root@Paradise# cat /proc/mymod/mymodfile process count: 48 

请给我一些提示如何编写内核模块以及如何编译和安装它。

你正在寻找的是“ Linux内核模块编程指南” ,特别是/ proc文件系统部分 ,它有详细记录如何添加新条目的例子。

本月在法国杂志“Gnu / Linux杂志”上有一篇关于这方面的文章。

我没有我的书签,但这些链接看起来不错:

http://www.linuxhq.com/lkprogram.html

http://tldp.org/HOWTO/modulee-HOWTO/x839.html

http://tldp.org/LDP/lkmpg/2.6/html/lkmpg.html

这可能会更容易使用sysfs。 Sysfs的设计考虑了这些操作,并且具有创建目录和虚拟文件以及对这些文件进行读写操作的简单函数。