I was reading through the hardware requirements of visual studio 2012 professional hardware requirements and it says:

1 GB of RAM (1.5 GB if running on a virtual machine)

Why does running on a VM require more resources?

  • 1
    Im just taking a guess, but VS is very disk IO heavy. Perhaps so it can cache more files for performance? – Keltari Mar 3 '14 at 5:31
  • 1
    Why is this closed as opinion-based? There's no opinions here, the answer is a factual statement. – Jon Mar 10 '14 at 18:30
  • badly written question, you didn't explain the problem properly, see my comment to user's answer – barlop Jul 22 '15 at 9:13
  • With no VM, the Win7 32bit 1GB requirement comes from 0.5GB for Win7 core. 0.5GB for VS. With VM, they add the host OS's 0.5GB To get 1.5GB VS. . When they say Win7 no VM 1GB they mean Win7 core(0.5GB) + some software(0.5GB). When they say VS 1GB when no VM, they mean win7 core (0.5GB) + VS(0.5GB) I guess they don't include general software of 0.5GB. qasdfdsaq mentions that superuser.com/questions/943759/… Not sure how he worked it out but the math works ok I think – barlop Aug 4 '15 at 22:08

That is simply because they are taking into account the fact that you need to run another operating system, which will need a certain amount of RAM for itself, not to mention to run VS inside it, so I think it relates to the RAM needed by the machine, not by VS.

In other words, if you run VS locally, you have one OS and VS; if you run it in a virtual machine you have your host OS, your guest OS and VS.

And yes, it is confusing, that could have been phrased better :D

  • If it's the RAM needed by the host machine then are they assuming the host will only use 0.5GB Windows 7 itself is meant to require 1GB , then there's Windows 7 in the guest – barlop Jul 22 '15 at 9:14
  • @barlop Re-reading the answer, perhaps it would have made more sense to say that 1.5 would take into account VS and the virtualization software used to run it. – user1301428 Jul 22 '15 at 17:18

It shouldn't. Perhaps they are taking into account the amount of RAM to power the underlying VM software.

  • 1
    Well by that logic they would include the 1GB Ram needed for W7 in the original. – Jon Mar 3 '14 at 4:49
  • Well it wouldn't be running on a virtual machine in that scenario, right? – Peter Mar 3 '14 at 4:50
  • In my opinion that is most likely it: They are specifying what is the minimal RAM for the computer that is going to run the software. So computer needs 1 GB of RAM to run the software, or 1.5 GB of RAM if it is going to run it in a Virtual Machine. – dkasipovic Mar 3 '14 at 8:48

VM is running a second, modified version of an Operating System (OS) which is the Virtual Machine (VM). The requirements may take into account that if the software is using the second OS so it would naturally take up more RAM than a version that is running on a single operating system. Since the purpose of running a virtual machine is to isolate it from the regular operating system, software development in that type of environment could require additional RAM just to implement isolation when running on a system with more than one OS. This additional RAM could be used to keep the newly compiled program from "seeing" the rest of the RAM in the machine.

  • 1
    This would be done by the VM client software rather than specific software implemented on the machine. In this way any additional RAM requirements would be assigned against the VM, not the software booted on it. – Matthew Williams Mar 3 '14 at 9:26
  • 1
    -1 You wrote "VM is running a second, modified version of an Operating System (OS) which is the Virtual Machine (VM)" <-- oh so now you think you have 3 virtual machines do you. A VM doesn't run a "modified" version of an OS. And the OS in a VM, is not a VM. – barlop Jul 22 '15 at 10:03

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.