android architecture
在安卓中,最经典的架构就是分四层,分别是application、framework、libraries、kernel四层,通过这四层将android的整个架构都丰满起来
其架构图如下
android 系统组成
- Process FW: android 系统固件,主要包含 NON-HLOS-64bit.bin tz.mbn sbl1.mbn rpm.mbn hyp.mbn这些启动时用到的文件
- bootloader: android引导加载kernel,包含:emmc_appsboot_8916.mbn(aboot/lk)
- boot.img: kernel ramdisk DT(kernel层的内容)
- system.img:android framework hwlib app 等等
- recovery.img:kernel ramdisk DT recovery 等等
boot.img和recovery.img不同之处是打包了不同的配置文件,recovery.img还包含负责系统升级的用户空间运行时(bootable/recovery)。
android 加载img过程
如果是做android底层开发最重要的是看log
一般我们使用的都是
adb logcat
至于adb的详细介绍,我在后面会单独开一篇博客进行介绍
有时我们可以用串口进行查看log,但是博主现在基本上也没用到这块,如果后面的工作有机会使用的话就拿出来介绍一番·
那么为了方便刷机最后呢写一个脚本来执行,这样能够省去一大堆的时间·
Bash-script
Sha-Bang(#!)所在的行在第一行,其作用是告知该脚本使用的是哪种命令解释器.
很多情况下省略了Sha-Bang(#!)仍然能够运行脚本,这是由于系统在这种情况下是默认使用了当前命令行解释器的。
#!/bin/sh
#!/bin/bash
#!/usr/bin/perl
#!/usr/bin/tcl
例子
简单的bash脚本
#!/bin/bash
echo Hello World!
shell脚本我将在linux博客中详细地进行介绍,因为这个脚本一般都是来自于linux系统进行运行的,当然还有其他的·