VMWare Player - swapping to disk more if more memory allocated - development-environment

Windows XP as base OS. Laptop has 4GB RAM and 2*2.2GHz cores. About 3 year old laptop
Am using Windows7 in VMWare Player. If I allocate more than 1GB of RAM to the Win7 machine in the VMWare player settings it goes so slow, and is continually swapping to disk.
I've turned off all Win7 processor intensive stuff.
http://www.computingunleashed.com/speed-up-windows-7-ultimate-guide-to.html
http://www.computingunleashed.com/list-of-services-in-windows-7-that-can.html
The base OS only reports using aboiut 144MB of RAM to the player. Very weird.
I'm using 2 virtual disks: 20GB SCSI for c:\ and 25GB SCSI for data f:\
Problem: How to tweak Win7 VMware (ie VS2010, Sql2008R2) well on an older laptop. Or use something else?

The problem is that by default vmware player uses file as memory.
Read this for more info & fix
http://communities.vmware.com/thread/46122

If you want to achieve this for all your VMs, you may just add/append following two lines:
prefvmx.minVmMemPct = 100
mainMem.useNamedFile = "false"
... inside the following VMware-wide configuration file:
C:/ProgramData/VMware/VMware Workstation/config.ini (or sometimes settings.ini)
The first line sets the percentage of configured VM memory that should fit into the host memory and the second (as already shown in the prior answer) disables default file-based memory usage.
If you want to apply this to a specific VM only, in order to not alter general VMware configuration, adding the following line to the VM's *.vmx file may be an alternative:
hard-disk.hostBuffer = "disabled"

Related

I want to learn about virtualization

As a very beginner, I only know how to create VMs and install OS on these using Oracle VirtualBox. All the VMs created are dependent on the hardware resources (CPU, RAM etc.) of a single machine. If the machine goes down the VMs will go down. Need to know how VMs can be created using taking resources from different physical machines (manually or dynamically) to avoid failure of any VMs.
For example: There are 4 physical machines having 8 core and 16GB RAM each. Now, I want to create three VM having having 8 core and 16GB RAM taking from different physical machines. If one physical machine goes down, no VM will be down.
You can look up clustering solutions (e.g. VMware clusters, or Hyper-V failover clusters). In this model, if a physical host goes down, then the virtualization platform will power up the VMs on other hosts.
If you're looking for zero downtime, then VMware has something called Fault Tolerance in which a shadow copy of a VM is running on a different host and is continuously synchronized with the primary copy. If the primary host goes down, the shadow copy can take over with zero downtime (e.g. you don't have to boot from the shadow copy because it's already running). This feature, while cool, has a lot of real-world limitations in how it inter-operates with other features of VMware. For example, as of vSphere 6.0, you cannot do various kinds of migrations for such VMs, etc. I believe it also requires a more expensive license.
These solutions generally require some shared resources between the physical hosts (most notably storage). Otherwise they will not work (or at the very least, performance will greatly suffer).

virtual memory on windows

I am developing a program which use huge ram size. Unfortunately there is no way to decrease it. In linux when ram is low I can generate a swap file and mount it to system that solve my problem but in windows how can I do that or is there any api(c/c++) that can use a temp file like a ram?

Difference between virtual machine process and host os process?

Suppose in my pc I have Ubuntu as Host OS. Now I installed a Virtual Machine say VirtualBox (hypervisor) and then deployed a centos and a redhat os inside that as guest OS.
Suppose CentOS and redhat has 2 processes running and Ubuntu is running 3 processes. So following are my questions:
There are how many processes that Ubuntu is having?
Is there any difference between GuestOS and HostOS processes?
If all guestos runs as a process then they will get less time as compared to other process running on host os.
Please clear my doubts here.
Thank you.
Well let me clear your doubts,
First of all there aren't any specific number of process for an OS, its called as cores or threads, technically you can define how many cores or threads you want to use on your virtual machine and it depends on the system configuration you use.
Secondly Guest OS is what you have created in the virtual machine and host is what your laptop or pc actually run. Host OS uses the actual hardware for the working whereas the Guest OS uses the virtual hardware like number of cores and type and size of hard drive defined by the user while adding a virtual machine.
Third, as I mentioned earlier Guest and Host OS works on the configurations used by you, if you user higher amount of cores/ threads in setting your virtual machine the Guest OS will get higher speed.
Ideally the virtual machines are used to test and create some functionality of the Operating Systems without affecting the internal OS, so you can think of it as a your parents house where you can live and grow but at the end you cannot go away from the fact that their contribution is more and so you cannot go beyond their features without leaving it and making your own home.
Linux operating systems are multi-threaded operating system. The host OS would consider virtual box as a thread. You can define number of cores and virtual hard disk size for guest OS by using virtual box.
Since virtual box runs in separate thread and other operations of host OS runs in separate threads, there would be less effect on speed of processing. But I've observed big variances in processing speed in systems which have low memory. Each and every thread needs specific allocation of memory for its smooth operation. So systems having more than 2 GB RAM managed virtual box very well.

Virtualization Options with a non SLAT CPU

I am working on a machine with an older intel CPU (core 2 duo 2.4 Ghz e6600) that doesn't have SLAT and doesn't support Hyper-V.
It is running Windows 8.1 (64 bit) with 4GBs of ram. What software options do I have if I wanted to run a virtual machine, in this case, another instance of Windows (ex. Win 7)?
Am I SOL? Will speed of VM be limited more by ram, cpu, or hard drive in this case?
Thanks,
i think your best option is VirtualBox form oracle, i use it becouse i have the same tipe of procesor, an work really fine for me, the only think you can only instala x86 OS, but anything else works fine.
some spec's for your virtual machines
Windows
Ram 1gb to 2gb, it is fine
procesor one core only
HDD 40gb it almos enough for you want todo (as developer i only use it for testing)
video dont use it unless you need it
linux/unix
Console only
ram 256MB to 512MB
procesor one core only
HDD 40gb it almos enough for you want todo
video is not need here
GUI mode
ram 512MB to 1gb(i recomend use 2gb if your plan to use Ubuntu)
procesor one core only
HDD 40gb it almos enough for you want todo
video dont use it unless you need it
hope help you

How to effectively use a VirtualBox VM on multiple computers?

My IDE is Eclipse, running in Ubuntu 12.10 inside a VirtualBox VM. I currently work in two locations - one office has a Windows 7 PC, the other has a Mac. It seemed most efficient to move my VM onto a high-speed USB flash drive, then carry it between offices. It hasn't worked out.
I used the PC to copy the VM to the flash drive, and tested it there. It worked. I took it to the other office, plugged it into the Mac, started VirtualBox and tried to boot the VM. It said 'can't find drive at E:...' It expected a Windows drive location. So, I tried removing the disk from the VM and re-mounting it on the Mac. That resulted in a 'UUID already in use' error.
Is this transport method possible? I don't want to have to run sethduuid every time I change offices.
The VirtualBox configuration files contain paths for the virtual hard disks, so copying them to another host is problematic. The simplest solution would be to create two similar configurations, one on each host and just copying the disk file to the external flash drive. Configure the paths to the disk file on each host independently so they fit your platform.
The drawback is, that you have to maintain two configurations. But they shouldn't change that often anyway.
The UUID error happens, if try to add another disk image to the virtual media manager with a UUID that match an already existing disk image. This might be because you copied a disk image in the past without replacing the UUID. Check your disk files for duplicate UUIDs.