On one hand, I think VMs are overused, introduce undue complexity, and reduce visibility.
On the other hand, the problem you're citing doesn't actually exist (at least not on Linux, dunno about Windows). A VM can use all of the host's memory and processing power if the other VMs on the system aren't using them. An operating system will balance resource utilization across multiple VMs the same as it does across processes to maximize the performance of each.
On one hand, I think VMs are overused, introduce undue complexity, and reduce visibility.
On the other hand, the problem you're citing doesn't actually exist (at least not on Linux, dunno about Windows). A VM can use all of the host's memory and processing power if the other VMs on the system aren't using them. An operating system will balance resource utilization across multiple VMs the same as it does across processes to maximize the performance of each.