hboot分区----------负责启动。
radio分区----------负责驱动。
recovery分区-------负责恢复。
boot分区-----------系统内核。
system分区---------系统文件。
cache分区----------系统缓存。
userdata分区-------用户数据。
需要注意的是,前6个区的容量在罩桥系统信息里面是看不出来的,我们看到的rom总容量,其实就是第7个区userdate区的大小,这个区主要装一些软件,是用户可以使用的分区。这个分区的大小直接影响到安装软件的数量。也就是说userdate区就是我们常说谨隐的“可用rom”
在安卓里,虽然软件可以安装到卡中,但是一些系统软件最好还是安装到userdata分区,否则会出现加载的一些小问题,比如使用的桌面软件和一些在桌面上显示插件的软件。并且就算你把软件都装到卡里,userdata分区还是会不断祥闷厅减小。就像在电脑里,就算你把软件装到D盘,仍然会在c盘生成一些系统文件,占掉c盘空间一样。
8g的应当是系统分区,内容用re管理器可以查看。
AndroidStudio 提供了 Device File Explorer 可实时查看设备文件系统。部分分区要求 Root 才能查看,可自行刷机或者使用可 Root 配置的模拟器。其中 system 分区可做了解,data 和 storage 分区需要重点掌握。同时,随着 Android 10 推出 scoped-storage ,以往通过文件路径读取 storage 分区可能失效。并且往后随着系统更新,存储框架的约束并定越收越睁蠢棚紧。有必要对整个安卓应用所涉及的存储空间有熟悉的了解悉则,同时做好兼容 Android10 scoped-storage 的准备工作。
始终存在且只读挂载,刷 ROM 的分区.
查看方式
|
<pre style="overflow: autofont-family: consolas, Menlo, "PingFang SC", "Microsoft YaHei", monospacefont-size: 13pxmargin: 0pxpadding: 10pxcolor: rgb(136, 143, 150)background: rgb(0, 0, 0)line-height: 1.6border: nonetext-align: right">1
2
</pre>
|
<pre style="overflow: autofont-family: consolas, Menlo, "PingFang SC", "Microsoft YaHei", monospacefont-size: 13pxmargin: 0pxpadding: 10pxcolor: rgb(197, 200, 198)background: rgb(29, 31, 33)line-height: 1.6border: nonewidth: 364px">/system
Environment.getRootDirectory().getAbsolutePath()
</pre>
|
主要目录
Internal Storage, *** 作该区域存储文件,需要 root 权限 *** 作,用于存放应用内的重要信档李息,
查看方式
|
<pre style="overflow: autofont-family: consolas, Menlo, "PingFang SC", "Microsoft YaHei", monospacefont-size: 13pxmargin: 0pxpadding: 10pxcolor: rgb(136, 143, 150)background: rgb(0, 0, 0)line-height: 1.6border: nonetext-align: right">1
2
</pre>
|
<pre style="overflow: autofont-family: consolas, Menlo, "PingFang SC", "Microsoft YaHei", monospacefont-size: 13pxmargin: 0pxpadding: 10pxcolor: rgb(197, 200, 198)background: rgb(29, 31, 33)line-height: 1.6border: nonewidth: 364px">/data
Environment.getDataDirectory().getAbsolutePath()
</pre>
|
主要目录
External Storage/Shared Storage,不需要 root 权限就可以 *** 作。可能包含可移除的存储介质,在使用之前需要判断是否挂载(mounted)
查看方式
|
<pre style="overflow: autofont-family: consolas, Menlo, "PingFang SC", "Microsoft YaHei", monospacefont-size: 13pxmargin: 0pxpadding: 10pxcolor: rgb(136, 143, 150)background: rgb(0, 0, 0)line-height: 1.6border: nonetext-align: right">1
2
3
</pre>
|
<pre style="overflow: autofont-family: consolas, Menlo, "PingFang SC", "Microsoft YaHei", monospacefont-size: 13pxmargin: 0pxpadding: 10pxcolor: rgb(197, 200, 198)background: rgb(29, 31, 33)line-height: 1.6border: nonewidth: 343px">/storage/emulated/0
@Deprecated Android10 版本上不再推荐使用该 Api
Environment.getExternalStorageDirectory()
</pre>
|
主要目录
一些重要的建议
细节编码可直接查看 Android Q 独立存储 一文
关于Android文件系统总结的知识就说到这里,喜欢Android开发的同学,可以 点击这里 免费获取《Android开发核心知识点笔记》 研读,祝愿大家的技术都越来越成熟。
除此之外,我也分享一些免费的优质资源,包括: Android学习PDF+架构视频+面试文档+源码笔记 , 高级架构技术进阶脑图、Android开发面试专题资料,高级进阶架构资料 这几块的内容。分享给大家,非常适合近期有面试和想在技术道路上继续精进的朋友。
或者是想解决面试难题,也可以点击:
《Android学习PDF+架构视频+面试文档+源码笔记》
来获取学习资料
最后再分享一下我自己的一个专栏,里面定期分享Android架构技术知识点及解析,还会不断更新的 BATJ面试专题 ,以及安卓相关资料免费分享,欢迎大家关注,如有好的文章也欢迎投稿。
查看当前系统运行的进程adb shell ps 会打印出所有的进程,包括名字和进程号
查看任意一个进程包含的所有线程及其状态
adb shell ps -t | grep pid-num
如果线程状态为D,表明线程已经处于无法返回的状态,一般是内核中存在死锁或者死循环
/proc文件系统
该文件系统下面的内容都是在内存中,而不是在磁盘空间,同时按照特定的信息,放在/proc/下特定目录,如进程pid-num,专门会有一个目录,/proc/pid-num/保存了该进程的很多信息
可以则茄执行命令:adb shell ll /proc/pid-num查看
查看该进程所有打开的文件掘盯者:adb shell ls -l /proc/pid-num/fd
查看该进程的内存使用情况:adb shell ls /判薯proc/pid-num/maps
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)