Linux内核裁剪移植学习分享

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux内核裁剪移植学习分享相关的知识,希望对你有一定的参考价值。

22.内核裁剪移植
内核源码是大量模块代码的集合!
每一个模块代码都是大量的.c 和 .h文件组成的!
内核是系统所有功能的集合!
内核镜像是一个二进制文件,是一个大型可执行程序!

内核移植步骤:
1)把内核源码包复制到linux系统下的 /work/目录下,并解压!
命令:
cp /mnt/hgfs/xxxxx/linux-3.5.buildok.tar.gz /work/
cd /work
tar xf linux-3.5.buildok.tar.gz
2)解压完成后,进入解压后目录。
命令:
cd linux-3.5/
3)内核源码裁剪,去掉不需要的模块,保留需要的模块!
命令:
make clean
make distclean
cp tiny4412_linux_defconfig .config
make menuconfig
进入配置菜单:
system type
--> Support TrustZone-enabled Trusted Execution Environment [去掉该选项]
保存退出!
4)编译内核源码,生成内核镜像zImage。路径:arch/arm/boot/zImage
命令:
make -j8
5)进入内核镜像所在目录,编写烧录脚本,烧录zImage镜像!
命令:
cd arch/arm/boot/
vim sd_fusing.sh
编辑:
#!/bin/bash

if [ -e /dev/sdb ]
then
echo fusing...
dd iflag=dsync oflag=dsync if=./zImage of=/dev/sdb seek=1057
else
echo /dev/sdb is not find!
exit -1
fi

echo fused OK!!!

chmod 777 sd_fusing.sh
烧录: 插入SD卡
./sd_fusing.sh
6)烧录完成,拔出SD卡!

补充:
内核源码的默认配置文件是: .config
内核配置方法有以下三种:
方法1:在终端一个一个功能的询问!
make config
方法2:Qt风格的内核配置菜单
make xconfig
方法3:由shell脚本勾画出来的内核配置菜单
make menuconfig
menuconfig菜单使用方法:
上下键:选项之间切换
左右键:操作方式之间切换 <select exit help>
空格键:对选项进行选择<勾选/取消>
回车键:执行操作 <进入下级菜单(select),返回上级菜单(exit)>

嵌入式Linux学习交流群:195723435
内核源码是大量模块代码的集合!
每一个模块代码都是大量的.c 和 .h文件组成的!
内核是系统所有功能的集合!
内核镜像是一个二进制文件,是一个大型可执行程序!

内核源码包:linux-3.5.buildok.tar.gz
内核移植步骤:
1)把内核源码包复制到linux系统下的 /work/目录下,并解压!
命令:
cp /mnt/hgfs/xxxxx/linux-3.5.buildok.tar.gz /work/
cd /work
tar xf linux-3.5.buildok.tar.gz
2)解压完成后,进入解压后目录。
命令:
cd linux-3.5/
3)内核源码裁剪,去掉不需要的模块,保留需要的模块!
命令:
make clean
make distclean
cp tiny4412_linux_defconfig .config
make menuconfig
进入配置菜单:
system type
--> Support TrustZone-enabled Trusted Execution Environment [去掉该选项]
保存退出!
4)编译内核源码,生成内核镜像zImage。路径:arch/arm/boot/zImage
命令:
make -j8
5)进入内核镜像所在目录,编写烧录脚本,烧录zImage镜像!
命令:
cd arch/arm/boot/
vim sd_fusing.sh
编辑:
#!/bin/bash

if [ -e /dev/sdb ]
then
echo fusing...
dd iflag=dsync oflag=dsync if=./zImage of=/dev/sdb seek=1057
else
echo /dev/sdb is not find!
exit -1
fi

echo fused OK!!!

chmod 777 sd_fusing.sh
烧录: 插入SD卡
./sd_fusing.sh
6)烧录完成,拔出SD卡!

补充:
内核源码的默认配置文件是: .config
内核配置方法有以下三种:
方法1:在终端一个一个功能的询问!
make config
方法2:Qt风格的内核配置菜单
make xconfig
方法3:由shell脚本勾画出来的内核配置菜单
make menuconfig
menuconfig菜单使用方法:
上下键:选项之间切换
左右键:操作方式之间切换 <select exit help>
空格键:对选项进行选择<勾选/取消>
回车键:执行操作 <进入下级菜单(select),返回上级菜单(exit)>

以上是关于Linux内核裁剪移植学习分享的主要内容,如果未能解决你的问题,请参考以下文章

Linux内核学习方法专题分享-2.资料推荐

Linux内核学习方法专题分享-1.Linux内核系统架构

linux4.10.8 内核移植---裁剪内核

内核裁剪--三星2410

linux4.10.8 内核移植---初步裁剪分区修改和文件系统

全栈工程师阶段性计划