¿Por qué Android crea una VM única para cada proceso?

Seguridad y fiabilidad . Al ejecutar cada aplicación en su propio proceso, cada aplicación está aislada, separada de otras aplicaciones tanto lógica como físicamente. Cada proceso necesita su propia máquina virtual y, por lo tanto, Android ejecuta una instancia única de Dalvik para cada aplicación que ejecute.

Android en realidad va más allá: cada aplicación no solo se ejecuta en un proceso único, sino que cada proceso es propiedad de un usuario único. Esto asegura no solo la separación del proceso sino también la separación de las credenciales del usuario.

Dado que los procesos son baratos en Linux y que el código de Dalvik y algunos de sus datos se pueden compartir en todos los procesos, este modelo ofrece garantías de seguridad y confiabilidad muy sólidas con un bajo costo. No funcionaría con el modelo de Unix existente, pero Android repensó todo eso.