Limit of VMs in FBSD




Well, don't punish me this time -it's a joke- . This thread it's not about an specific error, but so a "strange" thing that i have seen in my PC. Running FBSD 11.1-RELEASE-p6, with an arch of i386.
So, i can say that this, more than an error, it's a warning. You'll see: i have created recently two VMs. One have windows 8, the other have Pixel (debian 8.6, jessie).
The thing it's that if i start the two virtual machines, running each one meanwhile the other is also running, all the systems (mean: my host system, the VM with Win8, and the VM with Pixel) , they slow down its speed, making almost impossible to continue using my PC in this situation. Then i have to choose: if i shutdown the VM of Windows, the VM of Pixel, or shutdown both.
I have a couple of questions, that are the following:
1) Why if the output of
in my host system, which runs FreeBSD as i said previously, gives me that i have
 Architecture:            i386
, while the same command in Pixel (debian 8,6) shows that the system it's i686? It weren't two different types of architectures? Or it could be because i installed an i386 system as a host, but my processor it's i686, so i can run both?
2) If so, then why i could ran a VM with HardenedBSD, which its only architecture it's x64?
3) Another question, it's how can i make to prevent this slow down of the speed of processing. For now, i don't need more than one VM running, but how i could make for manage best the resources of my PC?


Staff member

Thanks: 1,177
Messages: 4,017

1. i386 means it's a 32-bit x86 architecture. It's how FreeBSD differentiates between 32-bit (i386) and 64-bit (amd64) x86 architectures.

i686 is used by Linux to show that it's both a 32-bit x86 architectures and what the oldest CPU it will run on (meaning you can't run that OS on a Pentium 1 or older CPU). This is due to optimisations done in the compilation step that uses instructions that aren't available on older CPUs.

2. You can run a VM using a different CPU architecture because it uses emulation (probably via QEmu) to mimic that CPU in software.

3. If the total number of virtual CPUs across all active VMs exceeds the total number of physical CPUs in the host, then everything will slow down. The VMs will be fighting over who gets to use the physical CPUs. It will get especially bad if the virtual CPUs are active in the VMs at the same time.