• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            小默

            LKM hello world

            //hellomod.c
            //hello world driver for Linux 2.6
            #include <linux/module.h>
            #include 
            <linux/kernel.h>
            #include 
            <linux/init.h>

            //模塊的初始化函數
            static int __init lkp_init(void)
            {
             printk(
            "<1>Hello,World! from kernel space \n"); //<1> output level,print now
             return 0;
            }

            //模塊的退出和清理函數
            static void __exit lkp_cleanup(void)
            {
             printk(
            "<1>GoodBye,World! leaving kernel space \n");
            }

            //向內核注冊模塊所提供的新功能
            module_init(lkp_init); 
            //注銷由模塊提供的所有功能
            module_exit(lkp_cleanup);

            MODULE_LICENSE(
            "GPL");

            //Makefile
            # Makefile2.6
            obj
            -+= hellomod.o        # 產生hellomod 模塊的目標文件

            KERNELDIR :
            = /usr/src/kernels/2.6.27.5-117.fc10.i686/

            all:
                make 
            -C $(KERNELDIR) M=$(PWD) modules

            clean:
                rm 
            -rf *.o *~ core .depend .*.cmd *.ko *.mod.c .tmp_versions    #清理

            //輸出
            [root@colorfulgreen hellomod]# make
            make 
            -/usr/src/kernels/2.6.27.5-117.fc10.i686/ M=/home/green/src/hellomod modules
            make[
            1]: Entering directory `/usr/src/kernels/2.6.27.5-117.fc10.i686'
              CC [M]  /home/green/src/hellomod/hellomod.o
              Building modules, stage 
            2.
              MODPOST 
            1 modules
              CC      
            /home/green/src/hellomod/hellomod.mod.o
              LD [M]  
            /home/green/src/hellomod/hellomod.ko
            make[
            1]: Leaving directory `/usr/src/kernels/2.6.27.5-117.fc10.i686'
            [root@colorfulgreen hellomod]# ls
            hellomod.c   hellomod.mod.c  Makefile        modules.order
            hellomod.c
            ~  hellomod.mod.o  Makefile~       Module.symvers
            hellomod.ko  hellomod.o      Module.markers
            [root@colorfulgreen hellomod]# insmod hellomod.ko
            [root@colorfulgreen hellomod]# lsmod 
            |grep hello
            hellomod                
            5376  0 
            [root@colorfulgreen hellomod]# rmmod hellomod
            [root@colorfulgreen hellomod]# dmesg
             
            Hello,World
            ! from kernel space 
            GoodBye,World
            ! leaving kernel space

            posted on 2010-03-29 09:36 小默 閱讀(247) 評論(0)  編輯 收藏 引用 所屬分類: Linux

            導航

            統計

            留言簿(13)

            隨筆分類(287)

            隨筆檔案(289)

            漏洞

            搜索

            積分與排名

            最新評論

            閱讀排行榜

            久久精品国产99国产精品| 精品国产综合区久久久久久| 天堂无码久久综合东京热| 久久久精品2019免费观看 | 人妻无码久久精品| 国产精品99久久不卡| 免费久久人人爽人人爽av| 日韩久久久久久中文人妻| 欧美一区二区三区久久综合| 久久精品亚洲中文字幕无码麻豆| 久久久久亚洲AV成人网人人软件| 国产激情久久久久影院| 人妻精品久久无码专区精东影业 | 精品一二三区久久aaa片| 曰曰摸天天摸人人看久久久| 久久精品国产精品亜洲毛片| 欧美午夜精品久久久久久浪潮| 欧美亚洲另类久久综合婷婷| 伊色综合久久之综合久久| 久久人人爽人人爽人人片AV麻烦| 亚洲精品乱码久久久久久按摩 | 色婷婷久久久SWAG精品| 久久精品国产第一区二区三区| 国产精品永久久久久久久久久| 伊人色综合九久久天天蜜桃| 久久精品国产乱子伦| 久久精品人人做人人爽97| 91精品国产综合久久精品| 色狠狠久久AV五月综合| 久久天天躁狠狠躁夜夜2020| 99热成人精品免费久久| 亚洲午夜久久影院| 日韩精品久久久久久| 久久国产精品久久久| 国产精品久久成人影院| 国产69精品久久久久777| 日韩精品久久久久久免费| 99久久精品免费看国产一区二区三区| 亚洲一级Av无码毛片久久精品| 午夜福利91久久福利| 亚洲国产精品无码久久久蜜芽|