1. gzyueqian
      13352868059
      首頁 > 新聞中心 > > 正文

      Linux 2.6.12內(nèi)核上加載一個簡單的模塊

      更新時間: 2008-03-21 14:24:40來源: 粵嵌教育瀏覽量:400

         運(yùn)行環(huán)境:linux-2.6.12

      編譯環(huán)境:arm-linux-gcc(3.4.1)

      運(yùn)行平臺:AT91RM9200

       

      一、編寫模塊程序testmodule.c

       

       

      #include <linux/init.h>
                  #include <linux/kernel.h>
                  #include <linux/module.h>
                  static int hello_init(void)
                  {
                  printk("Hello! This is the first test module!\n");
                  return 0;
                  }
                  static void hello_exit(void)
                  {
                  printk("Module exit! Bye Bye!\n");
                  return;
                  }
                  module_init(hello_init);
                  module_exit(hello_exit);
                  MODULE_LICENSE("GPL");

       

      二、編寫Makefile

       

       

      obj-m := testmodule.o
                  KDIR := /src/linux-2.6.12
                  PWD := $(shell pwd)
                  default:
                  $(MAKE) -C $(KDIR) SUBDIRS=$(PWD) modules
                  #################################################

       

      注意:"$(MAKE)"前面要空一個"Tab"

      KDIR 為內(nèi)核的路徑,這個內(nèi)核要與AT91RM9200運(yùn)行的內(nèi)核先同(編譯器也要相同的,要不運(yùn)行不了)。

       

      三、編譯

      在linux下執(zhí)行:make CC=/src/3.4.1/bin/arm-linux-gcc

      /*注釋:/src/3.4.1/bin/arm-linux-gcc 為交叉編譯環(huán)境的路徑*/

      生成testmodule.ko

       

      四、運(yùn)行

      1、將testmodule.ko通過串口或者網(wǎng)口下載到AT91RM9200的板子上

       

      2、執(zhí)行:chmod +x testmodule.ko修改模塊的屬性將其設(shè)為可執(zhí)行文件

       

      3、執(zhí)行:insmod testmodule.ko

      Hello! This is the first test module!

      執(zhí)行:rmmod testmodule.ko

      Module exit! Bye Bye!

      免費(fèi)預(yù)約試聽課

      亚洲另类欧美综合久久图片区_亚洲中文字幕日产无码2020_欧美日本一区二区三区桃色视频_亚洲AⅤ天堂一区二区三区

      
      

      1. 亚洲一区二区三区手机版 | 亚洲欧美日韩一区二区综合 | 精品呦一区二区三区 | 视色日韩AV一区二区三区 | 偷拍精品久久91 | 伊人久久大香线蕉精品 |