insmod ./test.ko onevalue=0x27 twostring="Oh my god!"
#include <linux/module.h>
#include <linux/kernel.h>
static int onevalue = 1;
static char *twostring = NULL;
MODULE_PARM (onevalue, "i");
MODULE_PARM (twostring, "s");
int init_module (void)
{
printk ("Hello world [onevalue=%d:twostring=%s]\n", onevalue, twostring);
return 0;
}
void cleanup_module (void)
{
printk ("Goodbye world\n");
}
beyes@linux-beyes:~/C/hh2410/module_test> /opt/host/armv4l/bin/armv4l-unknown-linux-gcc -D__KERNEL__ -DMODULE -Wall -O2 -I/HHARM2410-STUDY/kernel/include/ -c test.c -o test.o
insmod test.o onevalue=0x27 twostring="Oh my god"
Hello world [onevalue=39:twostring]=Oh my god
#include <linux/init.h>
#include <linux/module.h>
#include <linux/kernel.h>
#include <linux/moduleparam.h>
static int onevalue = 1;
static char *twostring = NULL;
module_param (onevalue, int, 0);
module_param (twostring, charp, 0);
static int hello_init (void)
{
printk ("Hello, world [onevalue=%d:twostring=%s]\n", onevalue, twostring);
return 0;
}
static void hello_exit (void)
{
printk ("Goodbye, world\n");
}
module_init (hello_init);
module_exit (hello_exit);
MODULE_LICENSE ("Dual BSD/GPL");
beyes@linux-beyes:~/C/hh2410/module_test> sudo /sbin/insmod test26.ko onevalue=0x27 twostring="hello,baby"
beyes@linux-beyes:~/C/hh2410/module_test> sudo /sbin/rmmod test26.ko
beyes@linux-beyes:~/C/hh2410/module_test> sudo /sbin/insmod test26.ko onevalue=0x27 twostring="hello baby"
insmod: error inserting 'test26.ko': -1 Unknown symbol in module
Hello, world [onevalue=39:twostring=hello,baby]
Goodbye, world
欢迎光临 曲径通幽论坛 (http://www.groad.net/bbs/) | Powered by Discuz! X3.2 |