1. Android 根文件系统目录结构
![](https://img-blog.csdnimg.cn/bd1ae78c6126446388db76b4b59e5aa9.png)
2. Android 根文件系统的来源
Android 的文件系统实际是通过源码编译出来的, 最后的文件都生成在 out/target/product/产品名/目录下, 以下几个目录组合成了完整的根文件系统:
整个Android系统系统由如下几个文件组合起来:
out/target/product/xxxx:
root/systme 、root/vendor/、 root/data/、root/cache/目录是空的,但是在板子上实际是有很多东西的,所以说root提供的是一个顶层结构;
但是system、vendor是有东西的,所以系统启动的时候会将其挂载到root上去;
如何去挂载的?自然是通过镜像也就是xxx.img,也就是我们可以看到除了以文件夹的形式存在,还以img的格式存在;所以一般会编译成目录,还会编译成镜像,也就是把文件夹打包成特定的镜像(文件)
目录 | 镜像 |
root | ramdisk.img |
system | system.img |
vendor | vendor.img |
data | userdata.img |
3.Android上电启动过程理解![](https://img-blog.csdnimg.cn/42335e6f253f4d22b3e0e55c8e49e123.png)
Android有vim,可以通过more去查看
init.rc最重要
这里为什么没有看到挂载system,这里涉及到另一个技术点,把system分区作为一个整个根分区
查看祖先进程:init
linker:链接器
init.environ.rc:初始化环境变量,设置了一些路径