Android内存types(RAM v内存)

在单独的线程中,我通过询问将文件复制到“内部存储器”的最佳方式来展示我对存储器types的无知,并被告知这不是一个好主意,并且将文件读入“RAM” 。 我现在试图了解这两种types的内存是如何相关的以及如何使用它们。

我明白,“内部存储器被认为是用来存储APK,ROM映像等的闪存”。

我的HTC Hero规范说,有“ROM:512MB,RAM:288MB”,没有任何迹象表明内存如何细分。

在手机上,“设置” – >“SD&手机存储”页面只是指“SD卡”和“内部手机存储”,后者仅显示“可用空间”的一个数量。

Android参考数据存储提到“内部存储”。 这是“你可以保存文件”的地方。 该页面还提到了我认为可以存储在“内部存储”中的SQLite数据库文件。 但是,这个页面似乎没有提供内部存储与另一个(可能是更dynamic的)types之间的RAM细分的任何解释。

整个RAM(Hero上的288MB)是否存在某种dynamic的分割,可以用不同的方式使用两个子分区? 如果是这样,在Android文档中的位置是这样解释的?

Solutions Collecting From Web of "Android内存types(RAM v内存)"

我明白,“内部存储器被认为是用来存储APK,ROM映像等的闪存”。

我的HTC Hero规范说,有“ROM:512MB,RAM:288MB”,没有任何迹象表明内存如何细分。

RAM在任何types的永久性基础上都不是“细分”的。 内存由运行的进程根据需要使用。 SDK应用程序要注意的最大问题是,一个进程可以消耗多less内存是一个上限 – 在你的英雄中,应该是16MB。

在手机上,“设置” – >“SD&手机存储”页面只是指“SD卡”和“内部手机存储”,后者仅显示“可用空间”的一个数量。

“内部电话存储”是指为APK文件,数据库,首选项和其他本地文件预留的部分闪存空间。

该页面还提到了我认为可以存储在“内部存储”中的SQLite数据库文件。

正确。

但是,这个页面似乎没有提供内部存储与其他(大概是更dynamic的)types之间的RAM细分的任何解释。

RAM与内部存储无关。

整个RAM(Hero上的288MB)是否存在某种dynamic的分割,可以用不同的方式使用两个子分区?

没有。


让我们退后一步。

RAM是RAM是RAM。 手机上的RAM与桌面上的RAM,笔记本,上网本等没有太大的区别。在过去的几十年里,这种结构在使用上保持相对稳定,特别是一旦我们从大型机中逃出来。 正在运行的程序(操作系统和最终用户应用程序)会占用RAM,但只能在运行时使用。 内存在重新启动的时候被擦除,在手机上和桌面上一样多。

现在,您的平均台式机,笔记本电脑或上网本也拥有比RAM提供更长久存储的硬盘驱动器。 在Android中没有绝对的术语 – 我倾向于使用“板载闪存”,其他人则称之为“内部存储”,但正如您将看到的那样,后一个词语充满了混乱。 就像硬盘一样,机载闪存也被用于OS(即Android中的固件),最终用户程序(也就是Android中的APK文件)以及最终用户数据(又名数据库,共享首选项,和其他存储在getFilesDir()所在位置的文件。

板载闪存存储分为几个分区。 如果你是Windows用户,分区基本上是说“你的硬盘分为C:,E :,和F:驱动器”。 在Android中,一个分区专用于固件,另一个分区(“数据分区”)专用于最终用户程序和数据。 (注意:前面的描述并不完全准确,但是这些差异远远超出了这个答案的范围)。

所以,记住这一切:

  • 您的512MB ROM是板载闪存,回到旧的“闪存ROM”术语
  • 你的“内部电话存储器”设置数据分区中的最终用户应用程序和数据的可用空间(我不使用这个术语来指代板载闪存存储器的一个原因)
  • 您的“SD卡”在Android中更多地被称为外部存储器,在许多设备上都是某种forms的SD卡,尽pipe实际上它可能只是指定为外部angular色的板载闪存的另一个分区存储