linux内核烧制,手机烧录自己编译的linux kernel
编译linux kernel :
首先,要编译手机平台上的内核镜像,需要交叉编译工具,而一般主流的手机上的交叉编译环境都很完备了,只要把它纳入PATH目录,基本都可以make成功。
假设交叉编译环境工具路径:~/ANDROID_CROSS_TOOL/
把交叉编译环境的bin目录加入/etc/profile
PATH=~/ANDROID_CROSS_TOOL/bin:PATH
使得开机时自动运行。
把交叉编译环境加入PATH环境变量以后,就可以make。
make成功以后,在kernel/kernel/arch/arm/boot/目录下会生成一个zImage的镜像文件,这个就是编译内核生成的内核镜像。
然后,通过./out/host/linux-x86/bin/目录下的mkbootimg命令制作boot镜像:
$./out/host/linux-x86/bin/mkbootimg --kernel
kernel/arch/arm/boot/zImage --ramdisk
out/target/product/kt501/ramdisk.img --output
out/target/product/kt501/boot.img
可见在这里,通过mkbooting命令把kernel和ramdisk打包成了一个boot镜像。
有了boot.img镜像,就可以在手机中烧录编译好的内核了。
烧录手机,有两种烧录方式:
1.卡烧
2.机烧
1.卡烧
卡烧相对容易,首先要熟悉一下手机烧录SD卡和普通SD卡的区别。烧录所用的SD卡是有一个标志文件,文件名为:“auto_flag.txt”(也许不同的手机型号标志文件不同),而且我们可以打开这个文件,其实里面是空的,说明,这个文件只起标志作用。当手机检测到了这个标志文件,就开检索需要烧录的系统文件,因为我只是重新编译了kernel,因此只需要重新烧录kernel。这时,把当时编译内核时打包生成的boot.img烧录到SD卡上。然后把SD卡装到手机上,只要开机,因为该SD卡含有“auto_flag.txt”标志文件,所以检测需要烧录的系统镜像,接着把我们自己编译的boot.img烧录到手机系统中。
2.机烧
机烧相对麻烦,而且不能被打断,曾经有一个工程师在烧录手机的时候碰了以下连接线,于是,手机的FLASH被洗空,然后就怎么都烧不上去了。
机烧的话,先进入手机的fast_boot模式,用USB连接手机和电脑,执行烧录脚本burn_linux.sh。下面是butn_linux脚本的内容:
#!/bin/bash
TARGET_PATH=.
echo "$TARGET_PATH"
./fastboot devices
./fastboot flash xloader $TARGET_PATH/MLO
./fastboot flash bootloader $TARGET_PATH/u-boot.bin
./fastboot flash environment $TARGET_PATH/u-boot.env
./fastboot flash boot $TARGET_PATH/boot.img
./fastboot flash logo $TARGET_PATH/logo.bmp
./fastboot flash userdata $TARGET_PATH/userdata.img
./fastboot erase cache
./fastboot flash system $TARGET_PATH/system.img
./fastboot flash recovery $TARGET_PATH/recovery.img
./fastboot flash auto_install
$TARGET_PATH/auto_install.iso
./fastboot reboot
可见,它就是把编译好的kernel,system等等用fastboot命令烧录到手机上。所以像我这样,只是烧录内核的话,就只要执行:
$./fastboot flash boot $TARGET_PATH/boot.img
就可以了,可以节省时间。
最后提醒,在烧录过程中,尽量不要打断它。
linux内核烧制,手机烧录自己编译的linux kernel相关推荐
- linux内核的配置过程,linux内核的配置机制及其编译过程
linux内核的配置机制及其编译过程. 一.配置系统的基本结构 Linux内核的配置系统由三个部分组成,分别是: 1.Makefile:分布在 Linux 内核源代码根目录及各层目录中,定义 Linu ...
- (编译适用于ARM的linux内核并进行QEMU仿真)Compile Linux kernel 3.2 for ARM and emulate with QEMU
译者序 作为第一篇翻译文档,一方面对于翻译经验不足.措辞不当,另一方面对于linux我也是初学者,很多东西尚处于待学阶段,而翻译此文的动机就是我要学习如何跨平台进行文件系统的编译,所以翻译的结果肯定有 ...
- Linux内核学习之路_1_编译Linux内核
1.准备工作 1.1 学习环境 1.2 下载Linux内核源码 1.3 解压Linux内核 1.4 目录结构介绍 1.2.2 Linux内核配置 1.1 学习环境 本系列教程使用的环境如下: 操作系统 ...
- LINUX - 实时LINUX内核(PREEMPT_RT)的编译安装以及测试
目录 1.什么是实时性操作系统? 2.怎么实现实时性系统? 3.PREEMPT_RT 4.使用方法 4.1下载linux内核源码 4.2下载RT patch 4.3 使用方法 5.测试 6.总结 7. ...
- linux内核_Linux驱动编程的本质就是Linux内核编程
由于Linux驱动编程的本质属于Linux内核编程,因此我们非常有必要熟悉Linux内核以及Linux内核的特点. 这篇文章将会帮助读者打下Linux驱动编程的基础知识. 本篇文章分为如下三个小节进行 ...
- linux内核精髓:精通linux内核必会的75个绝技,Linux内核精髓精通Linux内核必会的75个绝技 PDF 高清扫描版...
经过近20年的发展,Linux操作系统已经成为当今最成功的开源软件之一,使用广泛,影响深远.随着Linux操作系统功能的不断丰富和完善,Linux内核的源代码也从最初的几万行增加到如今的数百万行,庞大 ...
- Linux内核精选文章向读者汇报 | 相遇Linux
本微信公众号精选人气文章向各位读者汇报: 人气最火: Linux实时补丁即将合并进Linux 5.3 投资自己: OS部门Linux死锁/hungtask/soft_hard/lockup分享视频报名 ...
- Linux源代码逐条解释,Linux内核源代码解释让你真正了解linux.ppt
Linux内核源代码解释让你真正了解linux.ppt 解读Linux内核源代码让您真正明白Linux操作系统 序 一些基本概念 操作系统的基本概念 I386系统的基本概念 Linux简介 源码阅读和 ...
- linux内核映像查看,RockPI 4A 查看Linux内核映像编译信息
在Linux内核调试时,经常会遇到下面的情况: 1.明明已经修改过代码,为什么功能没生效? 2.明明自己验证的功能没有问题,别人验证就出问题了呢? 遇到事情,不要慌,也不用先拿手机拍个照. 我们先看下 ...
最新文章
- [整合] 解决 Dell T640 安装显卡后风扇转速不降低
- Oracle报错TNS-12532: TNS:invalid argument
- arduino代码运行时间测试函数,代码性能运行时间测试方法
- [心得分享] 产品规划思考
- Python :给类或者类的对象添加打印内容 def __repr__(self)
- 如何去找一些还没有完全上市的 在私募投资的公司 D轮左右 财经媒体
- 科大星云诗社动态20210818
- java.nio.DirectByteBuffer管理堆外内存
- C#ORM系统 Moon.ORM使用方法
- 定时器函数执行原理揭秘
- SVN遗漏so文件的解决办法
- Voicemeeter Potato —— Windows 平台下的终极虚拟音频混音器
- Winform支付宝扫码支付
- <一起JS(基础篇)>4.标识符、字符串、Number、波尔值、Null和Undefined
- php 微信公号授权登入,WordPress 微信公众号授权登录
- WPS(word)批量给所有表格添加题注(标题)
- 阿里IOT云飞燕平台的使用和感悟。
- Java代码获取网络和本地视频时长等信息
- 【亲测】后期特效合成软件:Nuke 13 Mac版(支持m1)
- 基于android的运动app,毕业设计(论文)-基于Android的手机运动的APP设计与实现.doc...
热门文章
- 原来,我们的时间这样被科技巨头们瓜分(转)
- spring获取webapplicationcontext,applicationcontext几
- Lync 小技巧-17-查询Lync 2013聊天记录
- Android 中文API (65) —— BluetoothClass[蓝牙]
- 吴裕雄--天生自然 高等数学学习:两类曲线积分之间的联系
- MyBatis中![CDATA[ ]]的使用
- Linux下 对文件行数打乱(乱序排列)
- mysql字段冲突报错
- 【推荐】2016年不得不读的九本好书
- BZOJ2388: 旅行规划