How would my macbook work when i use 4 computers on only two cores? My school is trying to save money so we are supposed to run a server with at least two clients in virtualbox. Afaik each machine needs one dedicated cpu core and some ram to run. Is there any chance that this will work?
"Afaik each machine needs one dedicated cpu core".
Not so. Your computer multitasks, allowing it to run more than one program per core. As an example, Virtualbox runs just fine a single-core CPU, right alongside your other programs.
The requirements for running VirtualBox include:
In order to run VirtualBox on your machine, you need:
Reasonably powerful x86 hardware. Any recent Intel or AMD processor should do.
Memory. Depending on what guest operating systems you want to run, you will need at least 512 MB of RAM (but probably more, and the more the better). Basically, you will need whatever your host operating system needs to run comfortably, plus the amount that the guest operating system needs. So, if you want to run Windows XP on Windows XP, you probably won't enjoy the experience much with less than 1 GB of RAM. If you want to try out Windows Vista in a guest, it will refuse to install if it is given less than 512 MB RAM, so you'll need that for the guest alone, plus the memory your operating system normally needs.
Hard disk space. While VirtualBox itself is very lean (a typical installation will only need about 30 MB of hard disk space), the virtual machines will require fairly huge files on disk to represent their own hard disk storage. So, to install Windows XP, for example, you will need a file that will easily grow to several GB in size.
A supported host operating system. Presently, we support Windows (XP and later), many Linux distributions, Mac OS X, Solaris and OpenSolaris.
A supported guest operating system. Besides the user manual (see below), up-to-date information is available at "Status: Guest OSes".
AFAIK no, you don't need a dedicated core. It helps, but isn't strictly necessary: Your VMs will just get less processor time, minus the overhead; but in general, you can run as many VMs as you want, if you don't mind the decrease in performance.
Anecdota: I'm successfully running three VMs on a single-core machine; the performance varies a lot (depending on the loads), but it is feasible (the actual shortage is with RAM in my case).
Virtual machines do not need a dedicated CPU, only Dedicated RAM. The task scheduler for the host machine should theoretically be able to run an indefinite number of Virtual Machines, albeit at slower and slower operational speeds.
why don't you try it?
I have a dual core (4 logical core) MBP and constantly run 2-3 VMS on it, some linux, one windows. The bottleneck is not typically the processor, its the RAM. I have 8GB of ram, I give each linux VM 1GB and the windows 2GB. Granted, if you do computationally heavy things in the VMs you might get less mileage. I typically do browser testing and vpn/ssh stuff (so not computationally heavy things)