Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android系統教程 >> Android開發教程 >> 一個hello程序的android內核模塊編譯方法及在模擬器中進行測試結論

一個hello程序的android內核模塊編譯方法及在模擬器中進行測試結論

編輯:Android開發教程

hello module source:

#include <linux/init.h>

#include <linux/module.h>

static int hello_init(void)

{

       printk(KERN_ALERT "Hello,world\n");

       return 0;

}

static void hello_exit(void)

{

       printk(KERN_ALERT "Goodbye, cruel world\n");

}

module_init(hello_init);

module_exit(hello_exit);

compile hello.ko module Makefile code:

obj-m := hello.o

all:

       make ARCH=arm EXTRA_CFLAGS="-D_CONFIG_ARM_ -fno-pic" -C $(KDIR) M=$(PWD) modules

clean:

       $(MAKE) -C $(KDIR) M=$(PWD) cleanhe

Make hello.ko function:

make CROSS_COMPILE=arm-linux-androideabi- KDIR=/opt/hackandroid/goldfish_0228

NOTE: KDIR is kernel path.  what's kernel path??? please refer to :http://blog.csdn.net/yygydjkthh/article/details/20172023

tested on android emulator:

run android emulator:

emulator -avd Android4.2.2 -kernel arch/arm/boot/zImage

push hello.ko to emulator:

testhello$ adb push hello.ko /data/local

60 KB/s (2648 bytes in 0.042s)

NOTE: what is zImage? How get the zImage???  please refer to : http://blog.csdn.net/yygydjkthh/article/details/20172023

testhello$ adb shell

root@android:/# cd data/local/                                                

root@android:/data/local # ls

hello.ko

root@android:/data/local # insmod hello.ko                                    

root@android:/data/local # dmesg -c                                            

<1>Hello,world

root@android:/data/local # lsmod                                              

hello 702 0 - Live 0x00000000 (PO)

root@android:/data/local # rmmod hello                                        

root@android:/data/local # dmesg -c                                          

<1>Goodbye, cruel world

root@android:/data/local # lsmod

root@android:/data/local #

<1>Hello,world

so, that's ok,  good night :_).

查看本欄目更多精彩內容:http://www.bianceng.cn/OS/extra/

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved