In this post we will look at some of the latest top devices running Android and place them next to the recently released iPhones.
All the following Android devices were released in 2017 and represent the best available smartphones today.
As you can see, RAM is quite "inflated" which also costs a lot. The following devices cost from $ 650 to $ 1.000.
The images are from the GSM Arena
As you can see the OnePlus 5T comes with 8GB.
To give you an idea of how much 8GB RAM is too much, I will mention that most modern laptops do not have that much cache. Most 2017 Chromebooks, for example, have 4GB and only a few models come with 8GB.
The plate continues: even these 8GB Chromebooks are cheaper than Android devices with the same memory!
So if the latest Android devices come equipped with RAM from 4 to 8GB, then how much RAM do the iPhones have?
The 8 iPhone 2017 only comes with 2GB, while the larger iPhone 8 Plus has 3GB along with the iPhone X. Apple's more expensive model has less RAM than the cheaper Android devices.
How can a 6 iPhone 2014 run with the latest version of iOS when it has only 1 GB of RAM, while Androids need x8 times as much RAM?
Android was designed to support many different types of processors, and many different manufacturers. Normally, software written for one type of system cannot run on another. Before operating on another system, it must be "ported", which often involves re-registering the incompatible bits.
To overcome this, applications for Android are always released on a Java platform. Java is smart because of its virtual machine: you can write an application in Java and then the virtual machine "translates" this code at runtime to work on any system running. So instead of rewriting and recomposing the code yourself, the Java Virtual Machine does it on its own.
This of course comes at a cost.
The Java virtual machine is complex and requires a lot of RAM, not only to manage the processes of the virtual machine itself but also to translate the original Java code of an application running on a system.
On the one hand the virtual machine running on Android devices has improved over the years and does not require as much RAM as ever, but on the other hand, Android applications are becoming more advanced, larger and more demanding. So they need more RAM to work.
This is why iOS devices use less RAM.
Finally, the operating system Android is by nature built in such a way as to encourage applications to use as much RAM as possible. Then, each time, Android clears the RAM data that is no longer used ("garbage") and frees up cache, allowing other applications to use it. This method is effective, but when there is a lot of RAM. Otherwise the system spends too much time collecting garbage.
For these reasons, at least 4GB of RAM on Android is probably enough for a smooth performance. If you do not have the money then 2GB should be the minimum.
Why does iOS not use as much RAM as Android?
Apple has much more control over the entire iOS ecosystem. If you want to use iOS, then you have only one option: the iPhone. If you want to create iOS apps, then you need to use Apple tools and do it the Apple way.
Absolute practice, but there are many benefits.
Because Apple knows the exact specifications of each device that will run its operating system, it can make better decisions. For example, while Android has to support many types of processors, iOS always runs on ARM-based hardware.
So iOS does not need a virtual machine to convert bits, on-the-fly like Android. All applications are developed in Apple native code and this code runs on approved hardware. This means significantly less RAM.
In addition, iOS has a completely different approach to memory management. While Android memory is managed by the operating system, iOS memory is managed by the applications themselves. So instead of iOS allowing apps to consume as much RAM as possible, iOS apps automatically provide or request memory depending on their needs.
So although iPhones have less RAM we can not say that they have worse performance. IOS just has a different approach to memory management because it does not need the Android virtual machine.