什么是Android的文件系统? [关闭]

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了什么是Android的文件系统? [关闭]相关的知识,希望对你有一定的参考价值。

什么是android的文件系统?

答案

这取决于什么文件系统,例如/system/datayaffs2/sdcard是vfat。这是mount的输出:

rootfs / rootfs ro 0 0
tmpfs /dev tmpfs rw,mode=755 0 0
devpts /dev/pts devpts rw,mode=600 0 0
proc /proc proc rw 0 0
sysfs /sys sysfs rw 0 0
tmpfs /sqlite_stmt_journals tmpfs rw,size=4096k 0 0
none /dev/cpuctl cgroup rw,cpu 0 0
/dev/block/mtdblock0 /system yaffs2 ro 0 0
/dev/block/mtdblock1 /data yaffs2 rw,nosuid,nodev 0 0
/dev/block/mtdblock2 /cache yaffs2 rw,nosuid,nodev 0 0
/dev/block//vold/179:0 /sdcard vfat rw,dirsync,nosuid,nodev,noexec,uid=1000,gid=1015,fmask=0702,dmask=0702,allow_utime=0020,codepage=cp437,iocharset=iso8859-1,shortname=mixed,utf8,errors=remount-ro 0 0

并且对于支持的其他文件系统,这是列表

nodev   sysfs
nodev   rootfs
nodev   bdev
nodev   proc
nodev   cgroup
nodev   binfmt_misc
nodev   sockfs
nodev   pipefs
nodev   anon_inodefs
nodev   tmpfs
nodev   inotifyfs
nodev   devpts
nodev   ramfs
         vfat
         msdos
nodev   nfsd
nodev   smbfs
         yaffs
         yaffs2
nodev   rpc_pipefs
另一答案

默认情况下,它使用YAFFS - 又一个Flash文件系统。

另一答案

这里的大多数答案都很古老。

在过去,当un-managed nand是最流行的存储技术时,yaffs2是最常用的文件系统。现在很少有设备使用未管理的nand,而那些仍在使用的设备正在慢慢迁移到ubifs。

今天最常见的存储是emmc(托管nand),对于这样的设备,ext4更受欢迎,但是,这个文件系统正在为f2fs(flash friendly fs)慢慢扫清障碍。

编辑:f2fs可能不会使它成为flash设备的常见fs(包括android)

另一答案

Johan很接近 - 这取决于硬件制造商。例如,三星Galaxy S手机使用三星RFS(专有)。然而,使用Android 2.3的Nexus S(也由三星制造)使用Ext4(可能是因为谷歌告诉他们 - Nexus S是目前的谷歌体验手机)。由于这种转变,许多社区开发人员也开始转向Ext4。

另一答案

取决于您使用的硬件/平台。

由于Android在此级别使用Linux内核,因此使用Linux内核支持的任何文件系统或多或少都是可能的。

但由于大多数手机使用某种nand闪存,因此可以安全地假设他们使用YAFFS。

但请注意,如果某个供应商想要销售Android上网本(带有硬盘),他们可以使用ext3或类似的东西。

另一答案

由于大多数设备使用eMMC,因此android使用的文件系统是ext4,除了firmware.refer-http://android-developers.blogspot.com/2010/12/saving-data-safely.html

这是galaxy s4上的文件系统:

  • / system text4
  • / ext4数据
  • / cache ext4
  • / firmware vfat
  • / data / media / mnt / shell / emulated sdcardfs

详细输出如下:

/dev/block/platform/msm_sdcc.1/by-name/system / system ext4 ro,seclabel,relatime,data = ordered 0 0

/dev/block/platform/msm_sdcc.1/by-name/userdata / data ext4 rw,seclabel,nosuid,no dev,noatime,discard,journal_checksum,journal_async_commit,noauto_da_alloc,data = o rdered 0 0

/dev/block/platform/msm_sdcc.1/by-name/cache / cache ext4 rw,seclabel,nosuid,node v,noatime,discard,journal_checksum,journal_async_commit,noauto_da_alloc,data = ord ered 0 0

/dev/block/platform/msm_sdcc.1/by-name/efs / efs ext4 rw,seclabel,nosuid,nodev,no atime,discard,journal_checksum,journal_async_commit,noauto_da_alloc,errors = panic,data = ordered 0 0

/dev/block/platform/msm_sdcc.1/by-name/persdata / persdata / absolute ext4 rw,secla bel,nosuid,nodev,relatime,data = ordered 0 0

/dev/block/platform/msm_sdcc.1/by-name/apnhlos / firmware vfat ro,context = u:objec t_r:firmware:s0,relatime,uid = 1000,gid = 1000,fmask = 0337,dmask = 0227, codepage = cp437,iocharset = iso8859-1,shortname = lower,errors = remount-ro 0 0

/dev/block/platform/msm_sdcc.1/by-name/mdm / firmware-mdm vfat ro,context = u:objec t_r:firmware:s0,relatime,uid = 1000,gid = 1000,fmask = 0337,dmask = 0227,codepage = cp437,iocharset = iso8859-1,shortname = lower,errors = remount-ro 0 0

/ data / media / mnt / shell / emulated sdcardfs rw,nosuid,nodev,relatime,uid = 1023,gid = 1 023 0 0

另一答案

在十六进制编辑器中分析Galaxy Ace 2.2时。 hex似乎指向使用FAT16作为其文件系统的设备。我觉得这很不寻常。但是Fat 16与Linux内核兼容。

另一答案

与Linux类似

/启动

/系统

/复苏

/数据

/高速缓存

/杂项

另一答案

Android支持Linux内核支持的所有文件系统。

例如,SD卡的格式为ext3。

以上是关于什么是Android的文件系统? [关闭]的主要内容,如果未能解决你的问题,请参考以下文章

任何更改后的 Android Firebase 数据库活动/片段正在关闭

Android 逆向Linux 文件权限 ( Linux 权限简介 | 系统权限 | 用户权限 | 匿名用户权限 | 读 | 写 | 执行 | 更改组 | 更改用户 | 粘滞 )(代码片段

什么是Android的文件系统? [关闭]

Android App 在片段中创建 ListView 引用时关闭

后退按钮关闭应用程序而不是转到上一个片段 android 导航组件

C# 最有用的(自定义)代码片段是啥? [关闭]