He estado ejecutando varias máquinas virtuales con VirtualBox, y el uso de memoria reportado desde varias perspectivas, y tengo problemas para calcular cuánta memoria usan realmente mis máquinas virtuales. Aquí hay un ejemplo:
- Tengo una VM que ejecuta Windows 7 (como SO invitado) en mi máquina Windows XP Host.
- La máquina host tiene 3 GB de RAM
- El Guest VM está configurado para tener una memoria base de 1 GB
- Si ejecuto el Administrador de tareas en el sistema operativo invitado, veo un uso de memoria de 430 MB
- Si ejecuto el Administrador de tareas en el sistema operativo host, veo 3 procesos que parecen pertenecer a VirtualBox:
- VirtualBox.exe (1), con 60 MB de memoria (parece que este tiene el mayor uso de CPU)
- VirtualBox.exe (2), usando 20 MB de memoria
- VBoxSvc.exe, usando 11.5 MB de memoria
- Mientras se ejecuta la VM, el uso de memoria del sistema operativo host es de aproximadamente 2 GB
- Cuando apago la máquina virtual, el sistema operativo host vuelve al uso de memoria y se reduce a unos 900 MB
Claramente, hay algunas grandes diferencias aquí. Realmente no entiendo cómo GuestOS puede usar más de 400 MB, mientras que el sistema operativo host solo muestra unos 75 MB asignados a la VM. ¿Hay otros procesos utilizados por VirtualBox que no son tan obviamente nombrados?
Además, me gustaría saber si ejecuto una máquina con 1 GB, ¿eso va a quitar 1 GB de mi sistema operativo host, o solo la cantidad de memoria que la máquina Invitada está usando actualmente?
Actualizar:
Alguien expresó desconfianza sobre mis números de uso de memoria, y no estoy seguro de si esa desconfianza se dirigió a mí o a los informes del Administrador de tareas de mi sistema operativo host (que quizás sea el culpable), pero para cualquier escéptico, aquí hay una captura de pantalla de esos procesos en la máquina host: