androidandroid源码及系统目录结构分析

林多 林多     2022-12-11     679

关键词:

Android源码及系统目录结构分析

Android源码(Android10)

目录说明
/artAnroid RunTime(Android运行环境)
/bionicbionic C库(嵌入式专用的c库)
/bootable启动引导相关代码
/build系统编译规则(基础开发包的配置)
/compatibilityAndroid兼容定义文档(cdd)
/ctsCompatibility Test Suite(Google兼容测试标准)
/dalvikdalvik虚拟机
/developersAndroid示例项目(可单独运行)
/developmentAndroid开发基础库(工具、示例)
/device设备及相关配置信息
/externalAndroid系统使用的OSS
/frameworksAndroid基础框架(Android Framework)
/hardware厂商硬件适配层(HAL)
/kernelLinux内核(默认不下载具体内容)
/libcore核心库
/libnativehelperJNI相关的类
/packages应用程序包(Android Package)
/pdkPlatform Development Kit(平台开发套件)
/platform_testing平台相关测试例
/prebuilts预编译资源
/sdksdk和模拟器
/system底层文件系统库、应用、组件
/testAndroid测试套件(VTS/MTS等等)
/toolchainAndroid工具链
/toolsAndroid工具集
/vendor(默认没有)厂商定制代码

Android系统目录结构

根目录

目录说明
acct系统回收站(删除的系统文件)
data用户安装应用及各种数据
dev设备文件
etc软链 /system/etc/
lost+found记录遗失片段
mnt设置挂载信息目录(挂载点)
odmodm分区(ODM厂商使用,自定义的BSp)
oem同product oem使用
proc运行时文件
productproduct分区(产品专用配置和应用,OEM/Original Equipment Manufacturer定制系统使用)
sinb系统工具
sdcard软链 //storage/self/primary
storage存储设备
sys内核文件
system系统级应用、配置文件
vdatavdata文件路径(保存并隐藏android设备上的私密图像和视频)
vendor厂商定制资源目录

System目录

  • 该目录存放系统级应用和系统配置文件
目录说明
/system/app/系统App、厂商定制软件
/system/bin/系统自带的可执行程序(组件)
/system/build.prop系统属性信息(文件)
/system/fonts/系统字体
/system/framework/系统框架文件(核心 am.jar/wm.jar等等)
/system/lib/系统动态库
/system/lib64/系统动态库
/system/media/系统铃音、提示音、界面音效
/system/priv-app系统核心app(该目录中的service被kill后系统重新拉起)
/system/product软链到/product
/system/usr/用户配置文件
/system/xbin/用于存放扩展的可执行程序

data目录

  • 该目录用于存放用户安装的软件以及各种数据
目录说明
/data/adb/adb
/data/aee_exp./用于保存重启异常的信息(产生对应db文件存在这里)
/data/anr/记录应用ANR信息
/data/app/用户安装的App
/data/app-asec/付费应用加密容器路径
/data/app-ephemeral/ephemeral app(短暂应用)数据目录
/data/app-lib/用户安装app lib
/data/app-private/受DRM保护app(DRM数字权限管理)
/data/bootchart/bootchart工具相关文件
/data/cache/存放用户应用缓存数据
/data/core/core dump信息存储路径
/data/dalvik-cachedalvik缓存文件
/data/data/应用的数据、文件、数据库等信息
/data/drm/数字版权管理(保存一些用于DRM的key资源等)
/data/dumpsys/dumpsys工具相关文件
/data/local/存放数据
/data/lost+found/记录遗失片段
/data/media/用户预置media资源
/data/misc/主要为连接过的设备信息(Wifi、蓝牙等)
/data/property/记录系统属性值信息
/data/resource-cache/用户资源缓存
/data/system/系统信息
/data/tombstones/墓碑文件
/data/user/应用的数据、文件、数据库等信息

hadoop源码分析之namenode的目录构成与类继承结构

与DataNode节点类似,NameNode节点也有自己的目录和类继承结构,但是NameNode节点的目录结构比DataNode节点就简单多了,下面就来简单分析NameNode节点的目录构成与类继承结构。NameNode的目录构成在NameNode节点运行时,维护着整个HD... 查看详情

zepto源码分析-代码结构转载

本来想学习一下jQuery的源码,但由于jQuery的源码有10000多行,设计相当复杂,所以决定从zepto开始,分析一个成熟的框架的代码结构及执行步骤。网上也有很多zepto的源码分析,有的给源码添加注释,有的谈与jQuery的不同,但是都... 查看详情

flutterandroid工程结构及应用层编译源码深入分析(代码片段)

...er系列文章连载~《FlutterAndroid工程结构及应用层编译源码深入分析》《Flutter命令本质之Fluttertools机制源码深入分析》《Flutter的runApp与三棵树诞生流程源码分析》《FlutterAndroid端Activity/Fragment流程源码分析》《FlutterAndroid端Flut... 查看详情

如何分析springboot源码模块及结构?--springboot源码

注:该源码分析对应SpringBoot版本为2.1.0.RELEASE1前言本篇接如何搭建自己的SpringBoot源码调试环境?--SpringBoot源码(一)。前面搭建好了自己本地的SpringBoot源码调试环境后,此时我们不要急着下手进入到具体的源码调试细节中,刚... 查看详情

androidandroid获取系统各个目录(代码片段)

android各个目录获取不会创建文件,但是会创建databases目录getApplicationContext().getDatabasePath("dataBase1.db") 查询的时候要带着.db,也就是包含数据库名字的后缀 会创建目录的的接口(一般的getDir接口都会创建目录)getApplicationContex... 查看详情

flutterandroid工程结构及应用层编译源码深入分析(代码片段)

...er系列文章连载~《FlutterAndroid工程结构及应用层编译源码深入分析》《Flutter命令本质之Fluttertools机制源码深入分析》《Flutter的runApp与三棵树诞生流程源码分析》《FlutterAndroid端Activity/Fragment流程源码分析》《FlutterAndroid端Flut... 查看详情

android事件分发机制分析及源码详解(代码片段)

Android事件分发机制分析及源码详解文章目录Android事件分发机制分析及源码详解事件的定义事件分发序列模型分发序列分发模型事件分发对象及相关方法源码分析事件分发总结一般在实际开发中,我们很少主动去处理相关滑... 查看详情

hashmap实现原理及源码分析(代码片段)

...对应实现HashMap的实现原理进行讲解,然后会对JDK7的HashMap源码进行分析。目录  一、什么是哈希表  二、HashMap实现 查看详情

hashmap实现原理及源码分析(代码片段)

...对应实现HashMap的实现原理进行讲解,然后会对JDK7的HashMap源码进行分析。目录  一、什么是哈希表  二、HashMap实现 查看详情

hashmap实现原理及源码分析(代码片段)

...对应实现HashMap的实现原理进行讲解,然后会对JDK7的HashMap源码进行分析。目录  一、什么是哈希表  二、Ha 查看详情

flume-ng源码分析-整体结构及配置载入分析

在http://flume.apache.org上下载flume-1.6.0版本,将源码导入到Idea开发工具后如下图所示:一、主要模块说明flume-ng-channels里面包含了filechannel,jdbcchannel,kafkachannel,memorychannel通道的实现。flume-ng-clients实现了log4j相关的几个Appender,使得... 查看详情

java源码——hashmap的源码分析及原理学习记录

学习HashMap时,需要带着这几个问题去,会有很大的收获:  一、什么是哈希表  二、HashMap实现原理  三、为何HashMap的数组长度一定是2的次幂?  四、重写equals方法需同时重写hashCode方法 一.什么是哈希表  在了... 查看详情

冯·诺依曼结构原理及层次结构分析

...>冯·诺依曼计算机的组成(硬件+软件)​​​​1.硬件系统(总体图)​​​​(1)硬件系统-运算器​​​​(2)硬件系统-控制器​​​​(3)硬件系统-存储器​​​​(4)硬件系统-输入/输出设备​​​​2.软件系统​... 查看详情

linux系统移植:内核源码目录分析

文章目录Linux系统移植:内核源码目录分析一、目录文件简述二、VSCode创建源码工程Linux系统移植:内核源码目录分析一、目录文件简述先看一下一级目录:首先看一下linux自带的文件夹目录功能arch存放架构文件相关... 查看详情

熊猫烧香病毒源码及分析(代码片段)

今天在OSC看到有人共享熊猫烧香的源码,用Delphi写的,真的是跨平台啊,犹对Japanese操作系统破坏最甚,字里行间留露出作者的愤青情绪啊,大体的看了下,主要是通过拷贝到Windows系统目录中,注册表... 查看详情

activity的管理结构分析及源码解析

例行广告,喜欢这篇文章的朋友可以关注我的博客http://zwgeek.com之前几篇文章分析了Activity的启动流程,当时因为要抓启动的主线,所以中间涉及到一些类之间的关系都一笔带过了。后来再重新看前面文章的时候发现... 查看详情

ffmpeg源码简单分析:结构体成员管理系统-avoption

=====================================================FFmpeg的库函数源码分析文章列表:【架构图】FFmpeg源码结构图-解码FFmpeg源码结构图-编码【通用】FFmpeg源码简单分析:av_register_all()FFmpeg源码简单分析:avcodec_register_all()FFmpeg源码简单分析... 查看详情

android面试宝典

AndroidAndroid基础知识Android内存泄漏总结Android内存泄漏分析及总结Android性能优化ListView详解RecyclerView和ListView异同Asynctask源码分析插件化技术自定义控件事件分发机制ANR问题Art和Dalvik的区别Android关于OOM的解决方案FragmentActivity&Fr... 查看详情