FB LIKE JACKER

Android的源代码结构

2011 年Feb月 26 日由 发布 | 类别: 其他 | Tags:

顶层目录:
.
|– bionic (全局的Makefile)
|– bootable (基础库的源代码)
|– build (编译和配置所需的脚本和工具)
|– dalvik (java虚拟机)
|– development (开发应用程序所需的模板和工具)
|– external (目标机器使用的库)
|– frameworks (应用程序框架层)
|– hardware (与硬件相关的库)
|– kernel (linux-2.6.xx内核)
|– out (编译后生成的目录,包含构建文件系统所需的文件)
|– packages (Android的各种应用程序)
|– prebuilt   (Android在各种平台下编译的预置脚本)
|– system (Android的底层库)
`– vendor     (针对不同平台的内核编译脚本)

bionic目录:
.
|– Android.mk
|– libc (C库)
| |– Android.mk
| |– CAVEATS
| |– Jamfile
| |– MODULE_LICENSE_BSD
| |– NOTICE
| |– README
| |– SYSCALLS.TXT
| |– arch-arm (arm架构的代码,包含系统调用的汇编实现)
| |– arch-x86 (x86架构的代码,包含系统调用的汇编实现)
| |– bionic (与架构无关的c代码)
| |– docs
| |– include
| |– inet
| |– kernel  (Linux内核的一些头文件)
| |– netbsd
| |– private
| |– stdio        (stdio实现)
| |– stdlib        (stdlib实现)
| |– string        (string函数实现)
| |– tools
| |– tzcode
| |– unistd        (与时区相关的代码)
| `– zoneinfo      (时区信息)
|– libdl           (libdl实现,dl是动态链接,提供访问动态链接库的功能)
| |– Android.mk
| |– MODULE_LICENSE_BSD
| |– NOTICE
| |– dltest.c
| `– libdl.c
|– libm (libm数学库的实现)
| |– Android.mk
| |– MODULE_LICENSE_BSD_LIKE
| |– Makefile-orig
| |– NOTICE
| |– alpha (apaha结构)
| |– amd64 (arm64架构)
| |– arm (arm架构)
| |– bsdsrc
| |– fpclassify.c
| |– i386
| |– i387
| |– ia64
| |– include
| |– isinf.c
| |– man
| |– powerpc (powerpc架构)
| |– sparc64 (sparc64架构)
| `– src
|– libstdc++ (libstdC++ C++实现库)
| |– Android.mk
| |– MODULE_LICENSE_BSD
| |– NOTICE
| |– include
| `– src
|– libthread_db (多线程程序的调试器库)
| |– Android.mk
| |– MODULE_LICENSE_BSD
| |– NOTICE
| |– include
| `– libthread_db.c
`– linker (动态连接器)
|– Android.mk
|– MODULE_LICENSE_APACHE2
|– NOTICE
|– arch
|– ba.c
|– ba.h
|– debugger.c
|– dlfcn.c
|– linker.c
|– linker.h
|– linker_debug.h
`– rt.c

bootloader目录:
.
|– bootloader (适合各种bootloader的通用代码)
| `– legacy
|– diskinstaller (android镜像打包器,在x86平台下生成iso)
| |– Android.mk
| |– config.mk
| |– editdisklbl
| |– init.rc
| |– installer.c
| |– installer.conf
| |– installer.h
| |– installer_img_layout.conf
| `– libdiskconfig
`– recovery (与系统恢复相关)
|– Android.mk
|– NOTICE
|– amend
|– bootloader.c
|– bootloader.h
|– commands.c
|– commands.h
|– common.h
|– etc (init.rc恢复脚本)
|– firmware.c
|– firmware.h
|– install.c
|– install.h
|– minui (一个简单的UI)
|– minzip (一个简单的压缩工具)
|– mtdutils
|– recovery.c
|– res
|– roots.c
|– roots.h
|– test_roots.c
|– tools
|– ui.c
|– verifier.c
`– verifier.h

build目录:
.
|– buildspec.mk.default
|– cleanspec.mk
|– core (核心的编译规则)
| |– Makefile
| |– apicheck_msg_current.txt
| |– apicheck_msg_last.txt
| |– armelf.x
| |– armelf.xsc
| |– armelflib.x
| |– base_rules.mk
| |– binary.mk
| |– build-system.html
| |– build_id.mk
| |– checktree
| |– cleanbuild.mk
| |– clear_vars.mk
| |– combo
| |– config.mk
| |– config.mk~
| |– copy_headers.mk
| |– definitions.mk
| |– device.mk
| |– distdir.mk
| |– droiddoc.mk
| |– dynamic_binary.mk
| |– envsetup.mk
| |– executable.mk
| |– filter_symbols.sh
| |– find-jdk-tools-jar.sh
| |– host_executable.mk
| |– host_java_library.mk
| |– host_prebuilt.mk
| |– host_shared_library.mk
| |– host_static_library.mk
| |– java.mk
| |– java_library.mk
| |– key_char_map.mk
| |– main.mk
| |– multi_prebuilt.mk
| |– node_fns.mk
| |– notice_files.mk
| |– package.mk
| |– pathmap.mk
| |– prebuilt.mk
| |– prelink-linux-arm.map
| |– process_wrapper.sh
| |– process_wrapper_gdb.cmds
| |– process_wrapper_gdb.sh
| |– product.mk
| |– product_config.mk
| |– raw_executable.mk
| |– raw_static_library.mk
| |– root.mk
| |– shared_library.mk
| |– static_java_library.mk
| |– static_library.mk
| |– tasks
| `– version_defaults.mk
|– envsetup.sh
|– history (历史记录)
| `– cupcake.txt
|– libs
| `– host
|– target (目标机编译对象)
| |– board (开发平台)
| `– product (开发平台对应的编译规则)
`– tools (编译时主机使用的工具和脚本)
|– acp
|– apicheck (api检查工具)
|– applypatch        (补丁工具)
|– apriori          (预链接工具)
|– atree           (tree工具)
|– bin2asm          (bin转换为asm的工具)
|– buildinfo.sh
|– check_builds.sh
|– check_prereq       (检查编译时间戳的工具)
|– compare_fileslist.py
|– dexpreopt
|– droiddoc
|– dump-package-stats
|– fileslist.py
|– findleaves.sh
|– fixlinebreaks.sh
|– fs_config
|– fs_get_stats       (获取文件系统的状态)
|– iself           (判断是否为elf格式)
|– isprelinked
|– kcm            (与按键相关)
|– lsd
|– mktarball.sh
|– print_module_licenses.sh
|– releasetools       (生成镜像文件的工具和脚本)
|– rgb2565          (rgb转换为565)
|– signapk          (apk签名工具)
|– soslim           (strip工具)
`– zipalign

dalvik目录:
.
|– Android.mk
|– MODULE_LICENSE_APACHE2
|– NOTICE
|– README.txt
|– dalvikvm             (main.c的目录)
|– dexdump              (dex反编译)
|– dexlist
|– dexopt              (预验证与优化)
|– docs
|– dvz
|– dx
|– hit
|– libcore              (核心库)
|– libcore-disabled
|– libdex
|– libnativehelper
|– run-core-tests.sh
|– tests               (测试代码)
|– tools
`– vm                 (虚拟机实现)

development目录:
.
|– Cerberus
| |– Android.mk
| |– Android.mk~
| |– main.c
| `– main.c~
|– apps              (一些核心的应用程序)
| |– CustomLocale       (自定义区域设置)
| |– Development
| |– Fallback         (和语言相关的程序)
| |– FontLab          (字库)
| |– OBJViewer         (obj查看器)
| |– SdkSetup          (sdk安装器)
| |– SpareParts        (高级设置)
| |– Term            (远程登录)
| `– launchperf
|– build (编译脚本模版)
| |– Android.mk
| |– sdk-darwin-x86.atree
| |– sdk-linux-x86.atree
| |– sdk.atree
| |– sdk.exclude.atree
| `– tools
|– cmds (monkey工具)
| `– monkey
|– data (数据配置)
| `– etc
|– docs
| |– SDK_RELEASE_NOTES
| |– howto_build_SDK.txt
| `– howto_use_cupcake_sdk.txt
|– emulator
| |– keymaps
| |– mksdcard
| |– qemud
| |– qtools
| |– sensors
| `– skins
|– host
| |– Android.mk
| `– windows
|– ide              (集成开发环境)
| |– eclipse
| |– intellij
| `– xcode
|– pdk (插件开发工具包)
| |– Pdk.mk
| |– README
| |– docs
| |– doxygen_config
| |– hosting
| |– ndk
| `– sample
|– samples (例程)
| |– AliasActivity
| |– ApiDemos (API演示程序)
| |– Compass (指南针)
| |– GlobalTime (全球时间)
| |– HelloActivity (Hello)
| |– Home (Home)
| |– JetBoy (JetBoy游戏)
| |– LunarLander
| |– MailSync (邮件同步)
| |– MySampleRss (RSS)
| |– NotePad (记事本)
| |– PlatformLibrary
| |– RSSReader (RSS阅读器)
| |– SimpleJNI (JNI例程)
| |– SkeletonApp (空壳APP)
| |– Snake (Snake游戏)
| `– SoftKeyboard (软键盘)
|– simulator
| |– app
| `– wrapsim
|– testrunner
| |– Android.mk
| |– adb_interface.py
| |– am_instrument_parser.py
| |– android_build.py
| |– coverage.py
| |– coverage_targets.py
| |– coverage_targets.xml
| |– errors.py
| |– logger.py
| |– run_command.py
| |– runtest.py
| |– test_defs.py
| `– test_defs.xml
`– tools
|– androidprefs
|– anttasks
|– apkbuilder
|– axl
|– ddms
|– draw9patch
|– dumpeventlog
|– eclipse
|– eventanalyzer
|– findunused
|– hierarchyviewer
|– idegen
|– jarutils
|– jdwpspy
|– layoutlib_utils
|– line_endings
|– makedict
|– mkstubs
|– ninepatch
|– runtest
|– screenshot
|– scripts
|– sdkmanager
|– sdkstats
|– traceview
`– zoneinfo

external目录:
.
|– aes (ASE加密)
|– apache-http (网页服务器)
|– bison (自动生成语法分析器,将无关文法转换为C,C++)
|– bluez
|– bsdiff (diff工具)
|– bzip2 (压缩工具)
|– clearsilver (html模板系统)
|– dbus (低延时,低开销,高可用性的IPC机制)
|– dhcpcd (DHCP服务)
|– dosfstools (DOS文件系统工具)
|– dropbear (SSH2的服务器)
|– e2fsprogs (EXT2文件系统工具)
|– elfcopy (ELF复制工具)
|– elfutils (ELF工具)
|– embunit
|– emma (Java代码覆盖率统计工具)
|– esd (将多种音频流混合在一个设备上播放)
|– expat
|– fdlibm
|– freetype (字体)
|– gdata (google的无线数据)
|– genext2fs
|– giflib (gif库)
|– googleclient (google用户库)
|– grub
|– icu4c
|– iptables (防火墙)
|– jdiff
|– jhead (jpeg头部信息工具)
|– jpeg (jpeg库)
|– libffi
|– libpcap (网络数据包捕获函数)
|– libpng (png库)
|– libxml2 (xml解析库)
|– netcat
|– netperf (网络性能测试工具)
|– neven
|– opencore (多媒体框架)
|– openssl (SSL加密)
|– oprofile
|– ping
|– ppp
|– protobuf
|– qemu (ARM模拟器)
|– safe-iop
|– skia (SKIA图像引擎)
|– sonivox
|– sqlite (数据库)
|– srec
|– strace (调试跟踪工具)
|– tagsoup
|– tcpdump (TCP抓包软件)
|– tinyxml
|– tremor
|– webkit (浏览器核心)
|– wpa_supplicant (无线网卡管理)
|– xdelta3
|– yaffs2 (yaffs文件系统)
`– zlib

 

« [2.3.2 for HTC Hero] Cronos Ginger 1.4.0
[2.3.2 for HTC Hero] Elelinux-7.0.0-RC1-Hero-v0.9 »

About tangzhihui

» has written 311 posts

锋客的朋友们

  • 少数派
  • 煮机网

签订契约成为机油吧!

Buy me a coffee~ ;-)

Buy me a coffee~ ;-)
閃開│讓專業的來 沒辦法│我這個人就是太正直了