• Android源码目录结构详解


    Android 4.0
    |-- Makefile
    |-- bionic (bionic C库)
    |-- bootable (启动引导相关代码)
    |-- build (存放系统编译规则及generic等基础开发包配置)
    |-- cts (Android兼容性测试套件标准)
    |-- dalvik (dalvik JAVA虚拟机)
    |-- development (应用程序开发相关)
    |-- external (android使用的一些开源的模组)
    |-- frameworks (核心框架——java及C++语言)
    |-- hardware (部分厂家开源的硬解适配层HAL代码)
    |-- out (编译完成后的代码输出与此目录)
    |-- packages (应用程序包)
    |-- prebuilt (x86和arm架构下预编译的一些资源)
    |-- sdk (sdk及模拟器)
    |-- system (底层文件系统库、应用及组件——C语言)
    `-- vendor (厂商定制代码)

    bionic 目录
    |-- libc (C库)
    | |-- arch-arm (ARM架构,包含系统调用汇编实现)
    | |-- arch-x86 (x86架构,包含系统调用汇编实现)
    | |-- bionic (由C实现的功能,架构无关)
    | |-- docs (文档)
    | |-- include (头文件)
    | |-- inet (?inet相关,具体作用不明)
    | |-- kernel (Linux内核中的一些头文件)
    | |-- netbsd (?nesbsd系统相关,具体作用不明)
    | |-- private (?一些私有的头文件)
    | |-- stdio (stdio实现)
    | |-- stdlib (stdlib实现)
    | |-- string (string函数实现)
    | |-- tools (几个工具)
    | |-- tzcode (时区相关代码)
    | |-- unistd (unistd实现)
    | `-- zoneinfo (时区信息)
    |-- libdl (libdl实现,dl是动态链接,提供访问动态链接库的功能)
    |-- libm (libm数学库的实现,)
    | |-- alpha (apaha架构)
    | |-- amd64 (amd64架构)
    | |-- arm (arm架构)
    | |-- bsdsrc (?bsd的源码)
    | |-- i386 (i386架构)
    | |-- i387 (i387架构?)
    | |-- ia64 (ia64架构)
    | |-- include (头文件)
    | |-- man (数学函数,后缀名为.3,一些为freeBSD的库文件)
    | |-- powerpc (powerpc架构)
    | |-- sparc64 (sparc64架构)
    | `-- src (源代码)
    |-- libstdc++ (libstdc++ C++实现库)
    | |-- include (头文件)
    | `-- src (源码)
    |-- libthread_db (多线程程序的调试器库)
    | `-- include (头文件)
    `-- linker (动态链接器)
    `-- arch (支持arm和x86两种架构)

    bootable 目录
    .
    |-- bootloader (适合各种bootloader的通用代码)
    | `-- legacy (估计不能直接使用,可以参考)
    | |-- arch_armv6 (V6架构,几个简单的汇编文件)
    | |-- arch_msm7k (高通7k处理器架构的几个基本驱动)
    | |-- include (通用头文件和高通7k架构头文件)
    | |-- libboot (启动库,都写得很简单)
    | |-- libc (一些常用的c函数)
    | |-- nandwrite (nandwirte函数实现)
    | `-- usbloader (usbloader实现)
    |-- diskinstaller (android镜像打包器,x86可生产iso)
    `-- recovery (系统恢复相关)
    |-- edify (升级脚本使用的edify脚本语言)
    |-- etc (init.rc恢复脚本)
    |-- minui (一个简单的UI)
    |-- minzip (一个简单的压缩工具)
    |-- mtdutils (mtd工具)
    |-- res (资源)
    | `-- images (一些图片)
    |-- tools (工具)
    | `-- ota (OTA Over The Air Updates升级工具)
    `-- updater (升级器)

    build目录
    .
    |-- core (核心编译规则)
    |-- history (历史记录)
    |-- libs 
    | `-- host (主机端库,有android “cp”功能替换)
    |-- target (目标机编译对象)
    | |-- board (开发平台)
    | | |-- emulator (模拟器)
    | | |-- generic (通用)
    | | |-- idea6410 (自己添加的)
    | | `-- sim (最简单)
    | `-- product (开发平台对应的编译规则)
    | `-- security (密钥相关)
    `-- tools (编译中主机使用的工具及脚本)
    |-- acp (Android "acp" Command)
    |-- apicheck (api检查工具)
    |-- applypatch (补丁工具)
    |-- apriori (预链接工具)
    |-- atree (tree工具)
    |-- bin2asm (bin转换为asm工具)
    |-- check_prereq (检查编译时间戳工具)
    |-- dexpreopt (模拟器相关工具,具体功能不明)
    |-- droiddoc (?作用不明,java语言,网上有人说和JDK5有关)
    |-- fs_config (This program takes a list of files and directories)
    |-- fs_get_stats (获取文件系统状态)
    |-- iself (判断是否ELF格式)
    |-- isprelinked (判断是否prelinked)
    |-- kcm (按键相关)
    |-- lsd (List symbol dependencies)
    |-- releasetools (生成镜像的工具及脚本)
    |-- rgb2565 (rgb转换为565)
    |-- signapk (apk签名工具)
    |-- soslim (strip工具)
    `-- zipalign (zip archive alignment tool)

    dalvik目录 dalvik虚拟机
    .
    |-- dalvikvm (main.c的目录)
    |-- dexdump (dex反汇编)
    |-- dexlist (List all methods in all concrete classes in a DEX file.)
    |-- dexopt (预验证与优化)
    |-- docs (文档)
    |-- dvz (和zygote相关的一个命令)
    |-- dx (dx工具,将多个java转换为dex)
    |-- hit (?java语言写成)
    |-- libcore (核心库)
    |-- libcore-disabled (?禁用的库)
    |-- libdex (dex的库)
    |-- libnativehelper (Support functions for Android's class libraries)
    |-- tests (测试代码)
    |-- tools (工具)
    `-- vm (虚拟机实现)

    development 目录 (开发者需要的一些例程及工具)
    |-- apps (一些核心应用程序)
    | |-- BluetoothDebug (蓝牙调试程序)
    | |-- CustomLocale (自定义区域设置)
    | |-- Development (开发)
    | |-- Fallback (和语言相关的一个程序)
    | |-- FontLab (字库)
    | |-- GestureBuilder (手势动作)
    | |-- NinePatchLab (?)
    | |-- OBJViewer (OBJ查看器)
    | |-- SdkSetup (SDK安装器)
    | |-- SpareParts (高级设置)
    | |-- Term (远程登录)
    | `-- launchperf (?)
    |-- build (编译脚本模板)
    |-- cmds (有个monkey工具)
    |-- data (配置数据)
    |-- docs (文档)
    |-- host (主机端USB驱动等)
    |-- ide (集成开发环境)
    |-- ndk (本地开发套件——c语言开发套件)
    |-- pdk (Plug Development Kit)
    |-- samples (例程)
    | |-- AliasActivity (?)
    | |-- ApiDemos (API演示程序)
    | |-- BluetoothChat (蓝牙聊天)
    | |-- BrowserPlugin (浏览器插件)
    | |-- BusinessCard (商业卡)
    | |-- Compass (指南针)
    | |-- ContactManager (联系人管理器)
    | |-- CubeLiveWallpaper (动态壁纸的一个简单例程)
    | |-- FixedGridLayout (像是布局)
    | |-- GlobalTime (全球时间)
    | |-- HelloActivity (Hello)
    | |-- Home (Home)
    | |-- JetBoy (jetBoy游戏)
    | |-- LunarLander (貌似又是一个游戏)
    | |-- MailSync (邮件同步)
    | |-- MultiResolution (多分辨率)
    | |-- MySampleRss (RSS)
    | |-- NotePad (记事本)
    | |-- RSSReader (RSS阅读器)
    | |-- SearchableDictionary (目录搜索)
    | |-- SimpleJNI (JNI例程)
    | |-- SkeletonApp (空壳APP)
    | |-- Snake (snake程序)
    | |-- SoftKeyboard (软键盘)
    | |-- Wiktionary (?维基)
    | `-- WiktionarySimple(?维基例程)
    |-- scripts (脚本)
    |-- sdk (sdk配置)
    |-- simulator (?模拟器)
    |-- testrunner (?测试用)
    `-- tools (一些工具)

    external 目录
    .
    |-- aes (AES加密)
    |-- apache-http (网页服务器)
    |-- astl (ASTL (Android STL) is a slimmed-down version of the regular C++ STL.)
    |-- bison (自动生成语法分析器,将无关文法转换成C、C++)
    |-- blktrace (blktrace is a block layer IO tracing mechanism)
    |-- bluetooth (蓝牙相关、协议栈)
    |-- bsdiff (diff工具)
    |-- bzip2 (压缩工具)
    |-- clearsilver (html模板系统)
    |-- dbus (低延时、低开销、高可用性的IPC机制)
    |-- dhcpcd (DHCP服务)
    |-- dosfstools (DOS文件系统工具)
    |-- dropbear (SSH2的server)
    |-- e2fsprogs (EXT2文件系统工具)
    |-- elfcopy (复制ELF的工具)
    |-- elfutils (ELF工具)
    |-- embunit (Embedded Unit Project)
    |-- emma (java代码覆盖率统计工具)
    |-- esd (Enlightened Sound Daemon,将多种音频流混合在一个设备上播放)
    |-- expat (Expat is a stream-oriented XML parser.)
    |-- fdlibm (FDLIBM (Freely Distributable LIBM))

    转自:http://www.zhixing123.cn/android/26330.html

  • 相关阅读:
    贝塞尔曲线实现的购物车添加商品动画效果
    Rxjava学习(一基础篇)
    OkHttp3源码详解(三) 拦截器-RetryAndFollowUpInterceptor
    ViewDragHelper详解(侧滑栏)
    linux系统装windows时需要注意的问题
    ARM GCC 内嵌汇编手册
    ADS的默认连接分析及编译器产生符号解惑
    ARM 的Thumb状态测试
    load-store/register-memory/register-plus-memory比较
    进位位(carry)与溢出位(overflow)的区别
  • 原文地址:https://www.cnblogs.com/zglsh/p/4581884.html
Copyright © 2020-2023  润新知