tag 标签: 内核模块

相关博文
  • 热度 21
    2013-7-1 16:14
    1087 次阅读|
    1 个评论
    下面以hello module的动态加载方式说明一下内核驱动模块动态加载的一般流程:   进入内核源代码的驱动代码路径,找到mini210_hello_moudle.c,浏览一下源文件的代码,以便在动态加载时,可以根据打印信息确定加载是否成功。   mini210_hello_module.c源代码如图8:   图8 在mini210_hello_module.c所在路径中,键入vim Kconfig,编辑内核驱动配置文件,编辑完成后保存退出。如图9: 图9   2.1、每一个Kconfig都作为menuconfig中的一个菜单。   2.2、每一个对应的config项都是一个菜单项,其中MINI210_HELLO_MODULE为菜单项标签(记下标签名,下边修改Makefile文件时需要据此编写配置项)。   2.3、tristate是菜单类型。常用的菜单类型有bool和tristate,含义分别是bool只能选中或不选中,对应的default值只能是y或者n;tristate的含义除了y、n之外还有m(可以编译成内核模块)   2.4、deponds on定义的是依赖关系,先不详述。   键入vim Makefile编辑,如图10: 图10   插入方框内内容是为了保证在编译内核时可以把HELLO_MOUDLE编译进内核。   返回内核源代码根目录,键入make menuconfig,修改配置项菜单,找到Mini210 module sample菜单项(Kconfig中tristate后面的字符串就是menuconfig中显示的菜单名),键入M,表示要以动态加载的模式插入内核驱动模块,保存menuconfig并退出。如图11: 图11 在命令行键入make modules编译生成后缀为ko的内核驱动模块,编译完成后进入mini210_hello_module.c所在路径中可以找到mini210_hello_module.ko。 键入cp mini210_hello_module.ko /home/nfs/,将内核驱动模块复制到nfs路径中。 登录tiny210的串口终端,键入mount –t nfs –o nolock 192.168.0.102:/home/nfs /mnt/,挂载nfs文件系统,挂载成功后,键入ls /mnt/查看mini210_hello_module.ko内核驱动模块。 在/mnt路径下键入insmod mini210_hello_module.ko,加载内核驱动模块,并查看打印信息,如图12: 图12   结合mini210_hello_module.c中打印信息可以确定内核驱动模块挂载成功。   键入rmmod mini210_hello_moudle(不加ko),可以卸载hello模块。如图13: 图13
相关资源
  • 所需E币: 5
    时间: 2019-12-26 10:26
    大小: 7.02KB
    上传者: 2iot
    Linux内核模块和驱动的编写……
  • 所需E币: 3
    时间: 2019-6-7 08:37
    大小: 872.22KB
    上传者: royalark_912907664
    Rootkit作为当前危害最大的木马程序,它能够运行在内核层,从中破坏系统的内核结构,比传统木马程序的隐蔽性更强。针对Rootkit隐藏技术和检测技术面临的问题,采用了一种新的检测方法,它能够检测隐藏在虚拟机中的内核级Rootkit。通过实验验证,结果表明该技术能够有效监测内核级Rootkit木马。