通过.ko获取内核全局变量(jiffies)

来源:互联网 发布:蚂蚁网络电视官方下载 编辑:程序博客网 时间:2024/05/01 03:03

由于某设备缺少一个模块,需要对原来代码中的jiffies(系统时钟节拍)进行移植,做成一个.ko,方法如下:

  • #include <linux/init.h>  
  • #include <linux/module.h> 
  • MODULE_LICENSE("Dual BSD/GPL");
  • module_param(jiffies,ulong,444) 
  • static int hello_init(void)  
  • {  
  •         printk(KERN_ALERT "Hello, world/n");  
  •         return 0;  
  • }  
  • static void hello_exit(void)  
  • {  
  •         printk(KERN_ALERT "Goodbye, cruel world/n");  
  • }  
  • module_init(hello_init);  
  • module_exit(hello_exit);

  • makefile如下:

    1. obj-m := hello.o  

    2. KERNELDR := /usr/src/linux-2.6.26  

    3. PWD := $(shell pwd)  

    4. modules:  

    5.     $(MAKE) -C $(KERNELDR) M=$(PWD) modules  

    6. moduels_install:  

    7.     $(MAKE) -C $(KERNELDR) M=$(PWD) modules_install  

    8. clean:  

    9.     rm -rf *.o *~ core .depend .*.cmd *.ko *.mod.c .tmp_versions 

    使用make命令,编译成一个.ko文件,在LINUX下执行insmod hello.ko

    然后在sys文件夹下可以找到hello这个模块,打开会找到programme,再                                                                                                                         打开就会找到jiffies,用cat就可以查看,module_param就是钥匙,444表示

    LINUX的root,group及usr的权限


    原创粉丝点击