Android系统编译后生成三个映像文件,都是用cpio打包,gzip压缩的。

  • ramdisk.img     文件系统,包含/system, /data, /bin等目录。kernel启动时负责初始化。
  • system.img      系统包和库文件,挂载到/system目录
  • userdata.img    用户数据,挂载到/data目录

Android系统目录结构

  • /init                     系统启动文件
  • /system
    • app               系统应用安装目录
    • bin                常用的系统本地命令(二进制),大部分是toolbox的链接(类似于嵌入式Linux中的busybox)
    • etc                系统配置文件,如hosts
    • font               字体目录
    • framework    Java平台架构核心库,jar包和odex优化的文件
    • lib                 系统底层共享库,.so库文件
    • xbin               不常用的系统管理工具,相当于linux的/sbin
    • media
      • audio  铃声,提示音等音频文件, .ogg

        • notifications    通知
        • ui                   界面
        • alarms            警告
        • ringtones        铃声
    • usr                 用户文件夹
      • keychars
      • keylayout
      • share
      • srec        配置
      • ......
    • vendor
    • build.prop      系统设置和变更属性
  • /etc  -->  /system/etc
  • /vendor --> /system/vendor
  • /dev                       存放设备节点文件
  • /proc                    全局系统信息
  • /data                 用户软件和各种数据
    • local/tmp  临时目录,无权限要求
    • app                普通程序安装目录
    • system
      • location     其中的location.gps记录最后的坐标,LocationManager.getLastKnownLocation()数据来自此处
    • data
      • <package_name>

        • files                    Context.getFilesDir() ,Context.openFileOutput() 获取的目录,应用安装目录下
        • cache                  Context.getCacheDir()  获取的目录,应用安装目录下,系统会自动在内存不足或目录大小达到特定数值时自动清理。
        • shared_pref        Context.getSharedPreferences() 建立的preferences文件(xml)存放目录
    • anr                应用发生ANR(Applicaiton is Not Responding)时,Android将问题点的堆栈写入到traces.txt文件中
    • location
      • gps       GPS location provider配置
    • property        其中persist.sys.timezone记录系统时区
  • /sdcard  -->/storage/emulated/legacy         SD卡的FAT32文件系统挂载到此目录

    • Android

      • data

        • <package_name>   应用的额外数据,应用卸载时自动删除。

          • files      Context.getExternalFilesDir()获取的目录。设置->应用->具体应用详情-> 清除数据  操作对象就是这个目录。
          • cache    Context.getExternalCacheDir()获取的缓存目录。设置->应用->具体应用详情-> 清除缓存  操作对象就是这个目录。

lost+found

yaffs文件系统固有的,类似回收站的文件夹。

ODEX

从apk中提取出来的可运行文件,即原apk中classes.dex通过dex优化生成的一个单独存放的dex文件。启动应用时不需要再从apk包中提取dex,速度更快。还可以删除apk包中的dex减少体积。缺点是体积变大,而且升级某个给Odex的应用可能会出现问题。

参考文档

http://blog.csdn.net/conowen/article/details/7251057

Android系统目录结构的更多相关文章

  1. Android系统目录结构详解

    Android系统基于linux内核.JAVA应用,算是一个小巧精致的系统.虽是开源,但不像Linux一般庞大,娇小可亲,于是国内厂商纷纷开发出自己基于Android的操作系统.在此呼吁各大厂商眼光放 ...

  2. (Android系统目录结构)目录预览

    Android系统进入设备后,查看根目录下文件系统,如下: 重要目录和文件说明:mnt 挂载点目录etc 系统主要配置文件system Android 系统文件sys Linux 内核文件proc 运 ...

  3. (Android系统目录结构)/mnt/sdcard 和 sdcard 的区别

    mnt/是Unix/Linux系统下外部设备的专用目录,Linux默认挂载外部设备都会挂载到这个目录;如将SD卡挂载后,会生成目录:/mnt/sdcard/. shell@aeon6735m_65c_ ...

  4. Linux实战教学笔记07:Linux系统目录结构介绍

    第七节 Linux系统目录结构介绍 标签(空格分隔):Linux实战教学笔记 第1章 前言 windows目录结构 C:\windows D:\Program Files E:\你懂的\精品 F:\你 ...

  5. Android之什么是Activity和常用的ADB命令以及Android项目结构的认识

    总结一下之前学习Android的一些内容 一:  Android常用的ADB命令(adb android调试桥)      1.adb devices   查看模拟器设备并重新连接. 2.adb ki ...

  6. Linux系统目录结构以及简单说明

    Linux系统目录结构以及简单说明 linux目录图: / root --- 启动Linux时使用的一些核心文件.如操作系统内核.引导程序Grub等. home --- 存储普通用户的个人文件 ftp ...

  7. Android项目结构 以及体系结构

    学习Android平台的人一般对Android的平台的应该有点认识 其它的就不多讲了 Android项目一般由以下几个部分构成 以上是一个简单的Android项目结构目录图 1. src  主要是 源 ...

  8. Mac OS X 系统目录结构

    在OS X的系统中,不再有Windows用户熟悉的C盘.D盘,这是因为OS X底层是Unix系统,其目录机构符合Unix系统的规范.MAC机器主板使用了Intel主导的EFI标准,硬盘分区格式采用GP ...

  9. Ubuntu小私房(4)--Linux系统目录结构

    Linux目录结构是Linux学习者必须了解的知识,Linux的目录与Windows又有很大的不同,所以搞清楚Linux目录结构是关键. Linux文件类型 (部分转自ChinaBytel) linu ...

随机推荐

  1. mysql中的sql总结

    >>>>>增加字段 ALTER TABLE pj_account ADD COLUMN test INT(11)   NOT NULL DEFAULT 1   COMME ...

  2. php编译报错 configure: error: Please reinstall the libcurl distribution - easy.h should be in <curl-dir>/include/curl/

    ➜ php- yum install -y curl-devel

  3. platform_device与platform_driver

    转自:http://blog.csdn.net/zhandoushi1982/article/details/5130207 做Linux方面也有三个多月了,对代码中的有些结构一直不是很明白,比如pl ...

  4. oracle 10g 学习之游标使用和异常介绍(11)

    一.游标 1. 使用游标 要求: 打印出 80 部门的所有的员工的工资: salary: xxx declare --1. 定义游标 cursor salary_cursor is select sa ...

  5. Type InvokeMember()用法简介

    举例: Type tDate = typeof(System.DateTime); Object result = tDate.InvokeMember("Now", Bindin ...

  6. mac安装nginx

    1,http://nginx.org/en/download.html下载http://nginx.org/download/nginx-1.2.0.tar.gz 2,tar -xf nginx-1. ...

  7. Gradle构建Java项目

    前提:已经安装好Gradle 一.创建目录结构 在项目主目录下,创建以下子目录;在*nix系统下可以使用命令: mkdir -p src/main/java/hello vim src/main/ja ...

  8. 让/etc/profile文件修改后立即生效(转)

    方法1:让/etc/profile文件修改后立即生效 ,可以使用如下命令:# .  /etc/profile注意: . 和 /etc/profile 有空格方法2:让/etc/profile文件修改后 ...

  9. Fibonacci Again

    Problem Description There are another kind of Fibonacci numbers: F(0) = 7, F(1) = 11, F(n) = F(n-1) ...

  10. DFS POJ 2362 Square

    题目传送门 /* DFS:问能否用小棍子组成一个正方形 剪枝有3:长的不灵活,先考虑:若根本构不成正方形,直接no:若第一根比边长长,no 这题是POJ_1011的精简版:) */ #include ...