Android系统源码目录结构详解
需积分: 10 73 浏览量
更新于2024-09-19
收藏 55KB DOC 举报
本文将详细解释Android系统的目录架构及其各个组成部分,主要关注核心库、启动引导、编译规则、测试套件、JAVA虚拟机、应用程序开发、开源模块、核心框架、硬件适配、编译输出、应用包、预编译资源、SDK、文件系统库、厂商定制代码等多个方面。
1、Android目录结构
- `a/bionic`:Bionic C库,它是Android系统的基础,包含了用于系统调用、内存管理等关键功能的实现。
- `libc`: 提供了基本的C库功能,如内存分配、字符串处理等。
- `libdl`: 动态链接库,负责加载和管理运行时的动态链接库。
- `libm`: 数学库,实现了各种数学函数,如三角函数、指数和对数等。
- `b/bootable`:启动引导相关代码,包括引导加载器、恢复模式等,确保设备能够正确启动。
- `c/build`:存放系统编译规则和配置,用于构建整个Android系统。
- `d/cts`:Android兼容性测试套件,确保应用程序在不同设备上的一致性。
- `e/dalvik`:Dalvik JVM,Android早期使用的JAVA虚拟机,现在已经由ART(Android RunTime)取代。
- `f/development`:应用程序开发相关的工具和资源,对开发者友好。
- `g/external`:包含Android系统使用的各种开源项目和库,如WebKit、SQLite等。
- `h/frameworks`:核心框架,包括Java和C++代码,定义了Android API和系统服务。
- `i/hardware`:硬件抽象层(HAL),提供了与硬件设备交互的接口。
- `j/out`:编译完成后生成的代码和文件输出目录。
- `k/packages`:应用程序包,包含系统预装应用和用户可安装应用。
- `l/prebuilt`:预编译的库和资源,针对不同的处理器架构(x86和ARM)。
- `m/sdk`:包含了Android SDK和模拟器,供开发者使用。
- `n/system`:文件系统库,包括系统级的应用和服务,多用C语言编写。
- `o/vendor`:厂商定制代码,各手机制造商在此添加自己的特性和应用。
2、Bionic目录详解
Bionic C库是Android系统的核心部分,它提供了许多基础功能,如:
- `libc`: 包含了不同架构下的实现,如`arch-arm`、`arch-x86`,并有文档、头文件、私有头文件等。
- `libdl`: 实现了动态链接功能,允许程序在运行时加载和使用动态库。
- `libm`: 提供数学库功能,针对不同架构有不同的实现,如`arm`、`amd64`,并且包含了源自BSD的源码。
以上是Android目录结构的详细解析,这些目录和子目录共同构成了Android系统的基础架构,支持着各种应用程序和服务的运行。
2010-07-18 上传
2013-03-19 上传
2012-10-23 上传
2021-01-06 上传
点击了解资源详情
点击了解资源详情
kaisn001
- 粉丝: 0
- 资源: 3
最新资源
- 行业资料-电子功用-具有对目标呼叫立即分配的电梯组合控制装置的说明分析.rar
- onPartage-front-end-feegow
- Clip-Imp-开源
- unixenv 书籍,可以看看
- Advanced_Descriptors-2.2.0-cp36-cp36m-manylinux1_x86_64.whl.zip
- IOS应用源码Demo-可制作新闻图片列表的demo-毕设学习.zip
- Native-JS-Sample:该项目解释了 InMobi Native 广告的 Javascript 广告代码的基本工作示例
- 基于java的小区停车位管理系统源码.zip
- 行业资料-电子功用-具有密封陶瓷反射外壳的无电极的灯的说明分析.rar
- jQuery右侧选项卡焦点图片轮播代码
- wp-ajax-search-widget:using使用此内联ajax搜索小部件搜索WordPress网站
- 51单片机STC89C52RC开发板例程之流水灯-2.rar
- 基于java-112_基于Android的应用商店设计与实现-源码.zip
- Web-Crawler:用Python编写的Web爬网程序模板
- IOS应用源码Demo-评分组件-毕设学习.zip
- OpenDTA-开源