android ejecutar linux android ejecutar linux
¿Por qué Android utiliza una máquina virtual en lugar de ejecutar programas directamente en el sistema Linux?
Porque originalmente Java tenía ventajas unificadas en el desarrollo de diferentes arquitecturas de CPU y diferentes sistemas operativos.
Java es un lenguaje, Linux es una plataforma y el lenguaje debe depender de una determinada plataforma para funcionar.
Compatibilidad significa que cualquier máquina con JVM instalada puede ejecutar programas Java.
La máquina virtual Java se proporciona para cada plataforma. En otras palabras, se escribirá una máquina virtual Java específica para cada plataforma.
En cuanto a por qué otro software no se puede ejecutar en otros sistemas operativos, esto depende de la arquitectura y la interfaz subyacentes. Las estructuras de archivos de Linux y Windows son diferentes, y la arquitectura de los sistemas operativos es muy diferente. el subyacente Las interfaces también son muy diferentes, especialmente en términos de archivos de biblioteca.
La diferencia fundamental entre el sistema Android y el sistema de distribución Linux es que Android solo ejecuta un Dalvik/ART, mientras que la distribución de Linux ejecuta muchos Dalvik/ART.
La máquina virtual Java es una máquina imaginaria que se implementa mediante simulación de software en una computadora real. La máquina virtual Java tiene su propio hardware imaginario, como procesadores, pilas, registros, etc., y también tiene los sistemas de instrucciones correspondientes.