What is Virtual RAM?
If you are a PC user, you are probably familiar with the term ‘Virtual Memory’. The term refers to a process of taking some space from your physical hard drive and rerouting it to be used as RAM. What you are doing is giving up some space on your hard drive in exchange for the ability to run more applications than you normally would be able to.
Before we dive headlong into the world of Virtual RAM, we must first understand what the role of RAM is, in a system.
When someone tells you to get up off the couch and walk to a particular location, you do not necessarily think about the act of walking itself. Your concentration is on your end goal, which in this case is the location you must walk to. Here is the interesting bit, just because you do not think actively about the act of getting up and walking does not mean your brain is not.
What is happening is that simple actions like the ability to walk are stored in the part of your brain that is related to your motor skills. When someone tells you to walk, your brain interprets that signal and draws information about the act of walking from a separate part of the brain freeing up the rest of the space so that you can concentrate on reaching your goal. This ‘working memory’ is a space in the brain reserved for basic tasks that are necessary for your survival like walking, eating, drinking etc.
Rather than having to individually think about each limb as you get up and walk, the brain assigns a list of motor functions to a term and then calls into memory the information needed when its required rather than taxing your thinking process with additional burden.
Similarly, on a computer, your processor is the brain, and the RAM is ‘working memory’. When you double click on an application, your computer checks for the relevant data on your hard drive before loading the application. It then takes some core files and dumps them into RAM, so that they can be accessed quickly and without needing to tax the other computations going on when you open something.
Think of RAM as a place to store core data files that are in constant use by the application. Why not store and access these from the hard drive? Because RAM is faster and can handle the core data required to keep the application running while the processor does the heavy lifting for the rest of the calculations.
How is this related to Virtual RAM?
Well like your hard drive, a RAM also has a limit to the amount of core application files it can handle at a given time. This is one of the reasons why you see performance degrade when you open several things on your computer at once. What is happening is that all the core files for those applications are being dumped onto the RAM and are constantly being used as you switch between them.
Unlike your hard drive, your RAM does not store any data permanently. Instead, data is constantly pushed out and drawn in again when required, think of it like a pipeline with water flowing through it. When you open too many applications this pipeline gets clogged, reducing performance.
This is where Virtual RAM comes in, it takes a portion of the space on the hard drive and adds to it to RAM, essentially turning it into extra space to dump application files on, allowing more applications to run.
The problem with this is that the physical hard drive is not designed for this purpose and is generally slower than RAM at performing these tasks which may lead to a decrease in performance in some cases.
Virtual RAM in smartphones
There is a limit to the amount of hard drive space you can reserve for RAM, for example – Windows recommends that the minimum be set to 1.5 times your current RAM capacity and the maximum to 3 times your current capacity. So, if you have 8GB of RAM, you should set 12 GB as the minimum amount of Virtual RAM and 24 GB is the maximum limit you should go to.
In smartphones like the Vivo X-Series, the smartphone adds up to an additional 3GB to the amount of RAM present on the phone using this technique. Vivo also uses technology to identify files with low importance present on the RAM and ships them out to Virtual RAM to free up space to open more applications.