⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 一个linux的模块例子.txt

📁 一个LINUX模块例子内核模块时LINUX提供给用户动态扩充内核的一种机制。利用模块在PROC文件系统中挂接一个能读取系统时钟的文件。
💻 TXT
字号:
内核模块时LINUX提供给用户动态扩充内核的一种机制。
一个LINUX的模块例子为:
#include <linux/kernel.h>
#include <linux/module.h>

static int count;
static char * string;

MODULE_PARM(count,"i");
MODULE_PARM(string,"s");

int init_module(void)
{
	printk("hello!\n");
	printk("count->%d.\n",count);
	printk("string->%s.\n",string);
	return 0;
}
void cleanup_module(void)
{
	printk("Goodbye.\n");
}

如该程序生成hello.o模块,可以使用以下命令加载它:
insmod -f hello.o count=1 string="hello"

用以下命令显示它的名字:
lsmod

使用以下命令卸载它:
rmmod hello


练习4让我们利用模块在PROC文件系统中挂接一个能读取系统时钟的文件。
注意练习4给出的struct proc_dir_entry 是内核2.2的结构,如果你的实验系统为
内核2.4的请修正为2.4版的结构(该结构说明在proc_fs.h中)

其中的my_read函数为读取系统时钟的函数,其实现可套用4.2节中给出的例子。

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -