本文主要讲解开发Android平台下的LKM(Linux Kernel Module)的步骤,以及如何使用Android Emulator调试LKM。
一、编译android内核
1.首先运行模拟器(emulator命令所在目录为androidsdk/tools/,可将其添加至系统环境变量PATH中)
emulator -avd android4
注意:本人使用的是android4的版本,android2.x的版本也可使用
2. goldfish内核下载
git clone android模拟点击lesource/kernel/goldfish.git
3.从模拟器中将/文件复制到goldfish(即kernel)目录
cd goldfish/
adb pull / .
4.将解压
mv config .config
5.进行编译
make ARCH=arm CROSS_COMPILE=arm-eabi- -j4
注意:本人所用arm toolchain为NDKr5c版本,NDKr7所用的gcc 4.4.3版本编译后的模块在加载时会出问题,切莫使用。也可自己编译arm toolchain
6.通过emulator运行刚刚编译好的kernel
emulator -kernel /Volumes/Software/Android/kernel/goldfish/arch/arm/boot/zImage -avd android4
7.通过"About phone",可以查看当前内核信息
提示:也可使用如下命令查看内核版本
cat /proc/version
二、编译"Hello World!"模块,源码详见helloworld.zip
1.解压并进入到helloworld目录
unzip helloworld.zip

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。