zoukankan      html  css  js  c++  java
  • 编写第一个驱动

    .c源码:

      1  #include <linux/module.h>     /* 引入与模块相关的宏 */
      2  #include <linux/init.h>        /* 引入module_init() module_exit()函数 */
      3  #include <linux/moduleparam.h> /* 引入module_param() */
      4
      5  MODULE_AUTHOR("Yu Qiang");
      6  MODULE_LICENSE("GPL");
      7
      8  static int nbr = 10;
      9  module_param(nbr, int, S_IRUGO);
     10  static int __init yuer_init(void)
     11 {
     12     int i;
     13     for(i=0; i<nbr; i++)
     14     {
     15         printk(KERN_ALERT "Hello, How are you. %d/n", i);
     16     }
     17     return 0;
     18 }
     19
     20 static void __exit yuer_exit(void)
     21 {
     22     printk(KERN_ALERT"I come from yuer's module, I have been unlad./n");
     23 }
     24
     25  module_init(yuer_init);
     26  module_exit(yuer_exit);

    makefile:

     obj-m:=modules.o
      2 modules-objs:=mymodules.o
      3 KDIR:=/usr/src/linux-headers-3.13.0-32-generic
      4 default:
      5     make -C $(KDIR) M=$(PWD) modules
      6 clean:
      7     rm -rf *.o .* .cmd *.ko *.mod.c .tmp_versions

  • 相关阅读:
    记录某次应急演练
    C++之分文件编写
    C++之冒泡排序实现
    cobaitstrike之修改特征
    cobaitstrike之DNS上线
    网盘搜索【不断更新ing】
    CVE-2021-2109 Weblogic Server远程代码执行
    C++之一维&二维数组
    CDH-5.12.2安装教程
    linux安装mysql教程
  • 原文地址:https://www.cnblogs.com/oracleloyal/p/5357933.html
Copyright © 2011-2022 走看看