1:简单代码

#include<linux/init.h>
#include<linux/module.h> MODULE_LICENSE("GPL");
MODULE_AUTHOR("jiuyueguang");
MODULE_DESCRIPTION("SIMPLE MODULE DRIVER"); static int hello_init(void){
printk(KERN_INFO"hello word\n");
return ;
}
static void hello_exit(void){
printk(KERN_INFO"hello word exit\n");
}
module_init(hello_init);
module_exit(hello_exit);

2:查看printk输出信息

 dmesg | tail 

3:带参数类型的模块简单代码

#include<linux/init.h>
#include<linux/module.h> MODULE_LICENSE("GPL");
MODULE_AUTHOR("jiuyueguang");
MODULE_DESCRIPTION("SIMPLE MODULE DRIVER"); static char *name="no name";
static int age=; static int hello_init(void){
printk(KERN_INFO"hello word name=%s and age=%d\n",name ,age);
return ;
}
static void hello_exit(void){
printk(KERN_INFO"hello word exit name=%s and age=%d \n",name ,age);
}
module_init(hello_init);
module_exit(hello_exit);
module_param(name,charp,S_IRUGO);
module_param(age,int,S_IRUGO);

安装带参数的模块:

sudo insmod hello_param.ko    

安装的时候没有加参数,采用程序中的默认值输出:

hello word name=no name and age=

安装的时候加参数:

sudo insmod hello_param.ko name='jiuyueguang' age=

输出:

hello word name=jiuyueguang and age=

4:我自己的Makefile

ifeq ($(KERNELRELEASE),)
KERNELDIR ?= /lib/modules/$(shell uname -r)/build
PWD := $(shell pwd)
modules:
$(MAKE) -C $(KERNELDIR) M=$(PWD) modules
modules_install:
$(MAKE) -C $(KERNELDIR) M=$(PWD) modules_install
clean:
rm -rf *.o *~ core .depend .*.cmd *.ko *.mod.c .tmp_versions Module* module* a.out
.PHONY: modules modules_install clean
else
obj-m := hello_param.o //每次修改这里就够了
endif

ubuntu动态加载模块简单模板的更多相关文章

  1. Python3的动态加载模块简单实例

    import os import sys import time import myconfig b = ['123'] a = os.path.abspath(myconfig.__file__) ...

  2. OrchardCore 如何动态加载模块?

    前言 今天,我们再次讨论下OrchardCore,通过初期调研,我们项目采用OrchardCore底层设施支持模块化,同时根据业务场景,额外还需支持二次开发,于是有了本文,若有不同解决方案,欢迎留言探 ...

  3. stevedore动态加载模块

    stevedore动态加载模块,stevedore使用setuptools的entry points来定义并加载插件.entry point引用的是定义在模块中的对象,比如类.函数.实例等,只要在im ...

  4. DevExpress XtraReport - 动态加载报表布局模板

    XtraReport的报表模板文件是.repx,下面的代码演示动态加载报表布局模板. XtraReport mReport = new XtraReport(); mReport.LoadLayout ...

  5. Python_getattr+__import__ 实现动态加载模块、类对象或函数

    __import__() 语法 __import__(name[, globals[, locals[, fromlist[, level]]]]) 参数 name -- 字符串,模块的导入路径 说明 ...

  6. AngularJs 动态加载模块和依赖

    最近项目比较忙额,白天要上班,晚上回来还需要做Angular知识点的ppt给同事,毕竟年底要辞职了,项目的后续开发还是需要有人接手的,所以就占用了晚上学习的时间.本来一直不打算写这些第三方插件的学习笔 ...

  7. [driver]linux内核动态加载模块

    问题: 1. 把编译好的模块放到板子/lib/modules对应文件夹下,并且执行了depmod -a, 比如pl2303.ko, 那么下一次插入pl2303的串口线,是否可以识别,也就是自动加载pl ...

  8. angular-ui-router动态加载模块

    1.定义index.html主页,对于通用的js就不用require依赖加载了,其中main.js作为主模块,用require添加系统路由模块. <!DOCTYPE html> <h ...

  9. nginx平滑升级、在线添加模块(tengine 动态加载模块)

    http://www.orzace.com/how-to-upgrade-nginx/ 下面是nginx替换成tengine再加上lua 模块,(tengine-2.0.1版本暂时无法动态加载lua模 ...

随机推荐

  1. java中正则表达式要进行转义的字符。

    /** * 转义正则特殊字符 ($()*+.[]?\^{},|) * * @param keyword * @return */public static String escapeExprSpeci ...

  2. AndroidStudio怎样导入jar包

    来自:http://jingyan.baidu.com/article/e6c8503c7190b7e54f1a1893.html AndroidStudio用于开发安卓Apk非常地方便,但是它的很多 ...

  3. IDEA Java/Scala混合项目maven打包

    1.首先创建maven项目 2.创建成功后新建class,只有java的,没有scala的 3.修改pom.xml文件,引入scala <?xml version="1.0" ...

  4. VS中的 MD/MT设置 【转】

    VS系列工具作为目前微软主打的集成开发环境,在历经了近20多年的发展后,到如今已经可以 说是Windows平台上各种IDE环境中的翘楚了.很多别的开发工具已经难望其项背了,如今VS2010也已经面市很 ...

  5. 百科知识 .tar.xz文件如何打开

    7-ZIP可以打开,右击提取到当前目录即可   发现这个压缩比例还是相当不一般的,都快十倍了.

  6. iOS_7_scrollView大图缩放

    终于效果图: BeyondViewController.h // // BeyondViewController.h // 7_scrollView大图展示 // // Created by beyo ...

  7. Django开发微信公众平台

    处理微信发来的信息,实际上就是处理xml的过程.先写xml工具类 # -*- coding:utf-8 -*- from xml.dom import minidom from Web.model.W ...

  8. error MSB8011: 未能注冊输出。请尝试启用“逐用户重定向”

    初试MFC就遇到困难了.vs2010创建一个MFC ActiveX控件项目. 什么都还没做呢,就出现故障了? 郁闷呀.! ! 1>C:\Program Files\MSBuild\Microso ...

  9. 内核顶层Makefile相关4

    http://www.groad.net/bbs/simple/?f104.html make 的递归执行与 MAKEFLAGS 变量 make 的递归调用是指:在 Makefile 中使用 make ...

  10. Spark SQL之External DataSource外部数据源(二)源代码分析

    上周Spark1.2刚公布,周末在家没事,把这个特性给了解一下,顺便分析下源代码,看一看这个特性是怎样设计及实现的. /** Spark SQL源代码分析系列文章*/ (Ps: External Da ...