关闭广告

手机流畅的多任务处理所需的理想 RAM 量是一个颇有争议的话题。 Apple 的 iPhone 尺寸较小,通常比 Android 解决方案更实用。您在 iPhone 上也找不到任何类型的 RAM 内存管理,而 Android 有其专用的功能。 

例如,如果您使用三星 Galaxy 手机 调整 -> 设备保养,您将在此处找到 RAM 指示器,其中包含有关可用空间和已占用空间的信息。点击菜单后,您可以看到每个应用程序占用了多少内存,并且您还可以在此处选择清除内存。 RAM Plus 功能也位于此处。其含义是,它将从内部存储中咬掉一定数量的 GB,用于虚拟内存。你能想象 iOS 上有这样的事情吗?

智能手机依赖 RAM。它用于存储操作系统、启动应用程序以及将一些数据存储在高速缓存和缓冲存储器中。因此,RAM 的组织和管理方式必须使应用程序能够顺利运行,即使您将它们放到后台并在一段时间后再次打开它们也是如此。

斯威夫特 vs.爪哇 

但是,当启动新应用程序时,您需要内存中有可用空间来加载和运行它。如果不是这种情况,则必须腾出该位置。因此系统会强制终止一些正在运行的进程,例如已经启动的应用程序。然而,这两个系统(即 Android 和 iOS)对 RAM 的使用方式有所不同。

iOS 操作系统是用 Swift 编写的,iPhone 实际上不需要将已关闭的应用程序中使用过的内存回收回系统中。这是由于 iOS 的构建方式造成的,因为 Apple 对其拥有完全控制权,因为它只在 iPhone 上运行。相比之下,Android是用Java编写的,并且在很多设备上使用,所以它一定更通用。当应用程序终止时,它占用的空间将返回给操作系统。

原生代码对比虚拟机 

当开发人员编写 iOS 应用程序时,他们将其直接编译成可以在 iPhone 处理器上运行的代码。该代码称为本机代码,因为它不需要解释或虚拟环境即可运行。另一方面,Android 则不同。当Java代码被编译时,它被转换为与处理器无关的Java字节码中间代码。因此它可以在不同制造商的不同处理器上运行。这对于跨平台兼容性具有巨大的优势。 

当然,也有一个缺点。每个操作系统和处理器组合都需要一个称为 Java 虚拟机 (JVM) 的环境。但本机代码的性能比通过 JVM 执行的代码要好,因此使用 JVM 只会增加应用程序使用的 RAM 量。因此 iOS 应用程序使用的内存较少,平均为 40%。这也是为什么苹果不必为其 iPhone 配备与 Android 设备一样多的 RAM。 

.