一区二区三区日韩精品-日韩经典一区二区三区-五月激情综合丁香婷婷-欧美精品中文字幕专区

分享

內(nèi)核模塊HelloKernel編程實(shí)例詳解

 MikeDoc 2011-10-18
在看“<<Linux軌范設(shè)計 第3版>> 第18章 設(shè)備驅(qū)動軌范”時,發(fā)現(xiàn)第621頁的內(nèi)核模塊嘗試無法經(jīng)由過程。
  怎么回事?
  后來才發(fā)現(xiàn),這本Linux軌范設(shè)計入門經(jīng)典所用的內(nèi)核是2.4版本。
  而2.6版本內(nèi)核模塊編程部門發(fā)生了斗勁年夜的轉(zhuǎn)變。
  具體轉(zhuǎn)變可以查看/usr/src/linux/Documentation/kbuild下的幾篇文章。
  瑯縵沔具體說了然2.6內(nèi)核kbuild和makefile的名目。
  下面就介紹這個內(nèi)核模塊嘗試hello kernel若何正確運(yùn)行,但愿國內(nèi)早點(diǎn)翻譯<<Linux軌范設(shè)計 第4版>>
  我所使用的系統(tǒng)為Debian5,內(nèi)核版本為2.6.26-2-686。
  首先安裝kernel headers,以供給相關(guān)文件編譯內(nèi)核模塊
  $ sudo apt-get install linux-headers-`uname -r`
  hello.c內(nèi)容如下
  $ cat hello.c
  #include <linux/init.h>
  #include <linux/module.h>
  MODULE_LICENSE("Dual BSD/GPL");
  static int hello_init(void)
  {
  printk("Hello, kernel!n");
  return 0;
  }
  static void hello_exit(void)
  {
  printk("Good-bye, kernel!n");
  }
  module_init(hello_init);
  module_exit(hello_exit);
  $
  2.6內(nèi)核核核採用module_init()和module_exit()庖代static __init int init_module(void)和static __exit void cleanup_module(void)函數(shù)。
  Makefile內(nèi)容如下
  $ cat Makefile
  obj-m += hello.o
  KDIR:=/lib/modules/$(shell uname -r)/build
  PWD=$(shell pwd)
  all:
  make -C $(KDIR) M=$(PWD) modules > make.log 2>&1
  clean:
  make -C $(KDIR) M=$(PWD) clean
  $
  其中obj-m為內(nèi)核模塊,obj-k則為編譯到內(nèi)核。
  寫好hello.c和Makefile,接著運(yùn)行make呼吁,編譯自己寫的內(nèi)核模塊
  $ ls
  hello.c Makefile
  $ make
  make -C /lib/modules/2.6.26-2-686/build M=/home/c-aries/下載/module modules > make.log 2>&1
  $ ls
  hello.c hello.mod.c hello.o make.log Module.symvers
  hello.ko hello.mod.o Makefile modules.order
  插入hello模塊
  $ sudo insmod hello.ko
  用dmesg呼吁查看內(nèi)核緩沖區(qū),并用tail查看最后一條信息
  $ dmesg | tail -1
  [24477.822683] Hello, kernel!
  列出模塊清單,查找hello模塊
  $ lsmod | grep hello
  hello 1216 0
  移除hello模塊
  $ sudo rmmod hello
  用dmesg呼吁查看內(nèi)核緩沖區(qū),并用tail查看最后一條信息
  $ dmesg | tail -1
  [24530.986833] Good-bye, kernel!
  $
  成功了!

  Hello Kernel |o|


    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多

    国产欧美日韩视频91| 熟女一区二区三区国产| 91欧美日韩精品在线| 国产精品熟女在线视频| 91麻豆视频国产一区二区| 成年女人午夜在线视频| 日本高清视频在线播放| 麻豆tv传媒在线观看| 人妻精品一区二区三区视频免精| 好吊视频有精品永久免费 | 国产自拍欧美日韩在线观看| 国产一级内射麻豆91| 国产精品白丝一区二区| 国产精品丝袜美腿一区二区| 中日韩免费一区二区三区| 99久久国产精品免费| 麻豆欧美精品国产综合久久| 中文人妻精品一区二区三区四区| 少妇特黄av一区二区三区| 欧美日本道一区二区三区| 国产亚洲成av人在线观看| 中文字幕人妻日本一区二区 | 中文字幕欧美视频二区| 精品人妻一区二区三区在线看| 亚洲一区二区福利在线| 欧美精品激情视频一区| 欧美高潮喷吹一区二区| 粉嫩内射av一区二区| 日韩日韩欧美国产精品| 91精品国自产拍老熟女露脸| 91国自产精品中文字幕亚洲| 欧美精品亚洲精品一区| 久久国产青偷人人妻潘金莲| 国产中文字幕久久黄色片| 日本不卡在线视频你懂的| 视频在线观看色一区二区| 日本高清视频在线播放| 欧美日韩国产自拍亚洲| 91人妻人人揉人人澡人| 激情五月天免费在线观看| 四十女人口红哪个色好看|