A Computer in the Sky

Tasfia Ara
2 min readOct 9, 2020

--

Say you are developing an app, you know it will take seven days to finish and it is due exactly eight days later and… your computer is lagging. Its not only frustrating, but you really aren’t getting much work done if you sit in front of your computer, hoping it will work again. But guess what? Virtual Machines come to your rescue!

Virtual Machines, or VMs for short, are an emulation of a computer system, and work just like a normal computer: you can access it and control it using your own computer and use its memory, CPU, hard-drive etc. These computers are located in large data centres all over the world, places such as Iowa, Singapore, North Carolina. When you choose your machine and your operating system, it’s not just a single PC in those data centres: you are using part of a HUGE machine, with HUGE amounts of power. And that is what makes it scalable: need an extra 4GB for your project? Just save your project, update your machine, restart it and boom! You have an even faster machine without having to set up a new machine or uploading anything to the cloud.

The Pros

This idea of virtualization is really quite old: IBM came up with the idea in the early 1960s, and Microsoft Azure, Google Cloud Services and Amazon Web Services quickly followed suite. To create your own instance on any of these service, log in with your email, enter your billing address, create an instance, choose your operating system and storage capacity, and connect! You can choose any operating system you want, regardless of the OS of you device (apart from MacOS). Have a Mac and need a Windows? A virtual machine is all you need!

The Cons

Sometimes the VMs can be a little difficult to navigate, especially if you are planning on running an emulator on it. Because the VM itself is an emulator, running another one on top of it can create some problems, but usually it can be surpassed. When you try to host an emulation inside a VM, it is called Nested Virtualization.

And that is it for Virtual Machines, how they work and their pros and cons! Although a fairly old invention, it is still used widely by developers all over the world. Until the next post!

--

--

Tasfia Ara

Hi! I am Tasfia Ara, a programmer who loves creating projects using Java, Python and Javascript!