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. 原创centos7安装hadoop2.7(转载请注明出处)

    启用ip vi /etc/sysconfig/network-scripts/ifcfg-ONBOOT=yes 编辑DNS /etc/resolv.conf nameserver 114.114.11 ...

  2. (二)STM32中中断优先级理解

    很多人在配置STM32中断时对固件库中的这个函数NVIC_PriorityGroupConfig()——配置优先级分组方式,会很不理解,尤其是看中文翻译版的,因为中文翻译版里把这里翻译成“先占优先级和 ...

  3. Struts2标签库

    一. 写jsp页面的时候,在struts2中,用的是s标记,先引入标记: <%@ taglib prefix="s" uri="/struts-tags" ...

  4. kvm 克隆虚拟机

    两步: 第一步导出XML: [root@ok ~]# virsh dumpxml centos02 >12c.xml 第二步磁盘文件 [root@ok virhost]# cp centos02 ...

  5. Zabbix利用msmtp+mutt发送邮件报警(公告:这文章有问题,还没有修改,2016-08-25)

    [root@86 ~]# wget http://jaist.dl.sourceforge.net/project/msmtp/msmtp/1.4.32/msmtp-1.4.32.tar.bz2 百度 ...

  6. 8.桥接模式(Bridge Pattern)

    using System; namespace ConsoleApplication6 { class Program { static void Main(string[] args) { // 创 ...

  7. .NET 下各种Resource的读取方式

    1) Embedded Resource (Build Action 设置为 Embedded Resource) 在运行时使用GetManifestResourceStream读取 Image.Fr ...

  8. Xamarin.Android开发实践(十七)

    Xamarin.Android之定位 一.前言 打开我们手中的应用,可以发现越来越多的应用使用了定位,从而使我们的生活更加方便,所以本章我们将学习如何在Xamarin中进行定位的开发. 二.准备工作 ...

  9. iOS经典面试题

    前言 写这篇文章的目的是因为前两天同学想应聘iOS开发,从网上找了iOS面试题和答案让我帮忙看看.我扫了一眼,倒吸了一口冷气,仔细一看,气的发抖.整篇题目30多个没有一个答案是对的,总结这篇面试题的作 ...

  10. Android JNI(转)

    JNI,全称Java Native Interface,是用于让运行在JVM中的Java代码和运行在JVM外的Native代码(主要是C或者C++)沟通的桥梁.代码编写者即可以使用JNI从Java的程 ...