Las máquinas virtuales (VM) permiten ejecutar diferentes sistemas operativos o aplicaciones en un mismo dispositivo sin hardware adicional.
Las VM son ideales para probar de manera segura nuevos software, probar otros sistemas o aislar programas potencialmente riesgosos.
Las VM, como la máquina virtual Ethereum (EVM), permiten que los contratos inteligentes y las aplicaciones descentralizadas (DApps) funcionen de manera confiable en una red informática global.
Aunque las VM ofrecen flexibilidad y control, pueden implicar compromisos en términos de rendimiento, uso de recursos y complejidad.
Introducción
¿Alguna vez has deseado ejecutar Windows en tu MacBook o probar una aplicación de Linux sin cambiar de sistema operativo o comprar un segundo ordenador? Las máquinas virtuales hacen esto posible al crear un entorno aislado donde diferentes sistemas operativos y aplicaciones pueden funcionar de manera segura. También se utilizan ampliamente en redes blockchain para gestionar contratos inteligentes y aplicaciones descentralizadas (DApps).
¿Qué es una máquina virtual?
Una máquina virtual es similar a una computadora que puedes configurar con unos pocos clics, sin necesidad de hardware adicional. Puedes instalar un sistema operativo, almacenar archivos, ejecutar aplicaciones y conectarte a Internet, pero lo ejecutas dentro de tu computadora existente, llamada anfitrión.
Su sistema anfitrión realiza la mayor parte del trabajo en segundo plano, compartiendo su memoria, su potencia de cálculo y su almacenamiento para permitir que la máquina virtual funcione sin problemas. Este sistema es especialmente útil si necesita utilizar un software que solo está disponible en otro sistema operativo.
Funcionamiento de las máquinas virtuales
Un software llamado hipervisor gestiona todo el proceso en segundo plano. El hipervisor toma los recursos físicos de su computadora, como la unidad central de procesamiento (CPU), la memoria RAM (RAM) y el almacenamiento, y los comparte para que varias máquinas virtuales puedan utilizarlos simultáneamente.
Existen dos tipos principales de hipervisores:
Tipo 1 (nativo) : están instalados directamente en el hardware y a menudo se utilizan en centros de datos o plataformas en la nube. Están diseñados para el rendimiento y la eficiencia.
Tipo 2 (alojado): estas máquinas virtuales funcionan en su sistema operativo habitual (como aplicaciones) y son adecuadas para pruebas y desarrollo.
Una vez que la máquina virtual está configurada, puedes iniciarla como un verdadero ordenador e instalar software, navegar por Internet o desarrollar aplicaciones.
¿Por qué utilizar una máquina virtual?
1. Para probar nuevos sistemas operativos
Gracias a una máquina virtual, puedes probar diferentes sistemas operativos sin realizar cambios en tu computadora principal. Es como probar un nuevo sistema en un entorno seguro y separado.
2. Para aislar software arriesgado
¿Necesita abrir un archivo del que no está seguro o probar una aplicación desconocida? Ejecutarlo en una máquina virtual protege su computadora, así que si encuentra malware o una falla del sistema, su computadora principal no se verá afectada.
3. Para ejecutar software obsoleto o no disponible
Algunos programas solo funcionan en sistemas más antiguos, como Windows XP. Una máquina virtual puede recrear este entorno, lo que le permite seguir utilizando software que podría no funcionar en dispositivos modernos.
4. Para desarrollar y probar código en diferentes plataformas
Las máquinas virtuales permiten a los desarrolladores probar su código más fácilmente en diferentes sistemas operativos y simular el funcionamiento de nuevas aplicaciones en diversos entornos.
5. Para alimentar la nube
Muchos servicios en la nube ( como AWS, Azure y Google Cloud) están construidos sobre máquinas virtuales. Cuando inicias una instancia en la nube, estás iniciando una máquina virtual en un centro de datos remoto, lista para alojar sitios web, aplicaciones o bases de datos.
¿Cómo utilizan las redes blockchain las máquinas virtuales?
Mientras que las máquinas virtuales tradicionales son entornos aislados, las máquinas virtuales blockchain funcionan como un motor que ejecuta contratos inteligentes en la blockchain. La máquina virtual de Ethereum (EVM) permite a los desarrolladores escribir contratos inteligentes en lenguajes como Solidity, Vyper y Yul y desplegarlos en Ethereum y otras redes compatibles con EVM. La EVM garantiza que cada nodo de la red aplique las mismas reglas al crear o interactuar con contratos inteligentes.
Las redes blockchain implementan sus propios tipos de máquinas virtuales según sus objetivos de diseño. Algunas se centran en la velocidad y la escalabilidad, mientras que otras buscan ser más seguras o flexibles para los desarrolladores. Redes como Near y Cosmos utilizan máquinas virtuales basadas en WebAssembly (WASM), que admiten contratos inteligentes escritos en varios lenguajes de programación.
Otras redes blockchain, como Sui, utilizan MoveVM, que ejecuta contratos inteligentes escritos en el lenguaje Move. La blockchain Solana utiliza un entorno de ejecución personalizado, a menudo llamado máquina virtual Solana (SVS), que está diseñado para procesar transacciones en paralelo y manejar una gran actividad de red.
Las máquinas virtuales en acción
Puede que no los notes, pero las máquinas virtuales trabajan en segundo plano cada vez que interactúas con aplicaciones descentralizadas (DApps).
Si utilizas una aplicación de finanzas descentralizadas (DeFi) como Uniswap, tus transacciones son gestionadas por contratos inteligentes ejecutados en la EVM.
Si golpeas un NFT, la máquina virtual ejecuta el código que determina a quién pertenece cada NFT. Cuando realizas una compra o una transferencia, la máquina virtual actualiza los registros para que la propiedad del NFT permanezca precisa.
Si utiliza un rollup de capa 2 (layer 2), sus transacciones pueden ser procesadas por una máquina virtual especializada, como zkEVM. Los zkEVM permiten a los zk-rollups ejecutar contratos inteligentes utilizando la tecnología de pruebas de conocimiento cero (ZKP).
Límites de las máquinas virtuales
1. Sobrecarga de rendimiento: las máquinas virtuales añaden un paso adicional entre el hardware y el código ejecutado, lo que puede ralentizar los procesos o requerir más recursos de cálculo en comparación con la ejecución de aplicaciones directamente en una máquina física.
2. Complejidad operativa: el mantenimiento de máquinas virtuales (, en particular en la infraestructura en la nube o las redes blockchain ), requiere un esfuerzo considerable en términos de configuración y actualizaciones. Esto lleva tiempo y a menudo requiere herramientas y conocimientos especializados.
3. Compatibilidad: los contratos inteligentes a menudo están diseñados para un entorno de máquina virtual específico. El código escrito para los contratos inteligentes de Ethereum deberá reescribirse o adaptarse para funcionar en otras blockchains incompatibles, como Solana. Esto significa que los desarrolladores deben dedicar más tiempo y esfuerzo si quieren ejecutar la misma aplicación en varios entornos.
Conclusión
Las máquinas virtuales juegan un papel crucial en el funcionamiento de las computadoras clásicas y los sistemas de blockchain. Permiten ejecutar diferentes sistemas operativos, probar software de manera segura y utilizar el mismo hardware para diversas tareas.
Las máquinas virtuales también se utilizan en las redes blockchain para ejecutar contratos inteligentes y aplicaciones descentralizadas. Aunque no seas un experto, entender cómo funcionan las máquinas virtuales puede aclarar los mecanismos de muchas herramientas y plataformas DeFi que utilizamos.
Ver originales
Esta página puede contener contenido de terceros, que se proporciona únicamente con fines informativos (sin garantías ni declaraciones) y no debe considerarse como un respaldo por parte de Gate a las opiniones expresadas ni como asesoramiento financiero o profesional. Consulte el Descargo de responsabilidad para obtener más detalles.
¿Qué es una máquina virtual (VM)?
Puntos clave a recordar
Las máquinas virtuales (VM) permiten ejecutar diferentes sistemas operativos o aplicaciones en un mismo dispositivo sin hardware adicional.
Las VM son ideales para probar de manera segura nuevos software, probar otros sistemas o aislar programas potencialmente riesgosos.
Las VM, como la máquina virtual Ethereum (EVM), permiten que los contratos inteligentes y las aplicaciones descentralizadas (DApps) funcionen de manera confiable en una red informática global.
Aunque las VM ofrecen flexibilidad y control, pueden implicar compromisos en términos de rendimiento, uso de recursos y complejidad.
Introducción
¿Alguna vez has deseado ejecutar Windows en tu MacBook o probar una aplicación de Linux sin cambiar de sistema operativo o comprar un segundo ordenador? Las máquinas virtuales hacen esto posible al crear un entorno aislado donde diferentes sistemas operativos y aplicaciones pueden funcionar de manera segura. También se utilizan ampliamente en redes blockchain para gestionar contratos inteligentes y aplicaciones descentralizadas (DApps).
¿Qué es una máquina virtual?
Una máquina virtual es similar a una computadora que puedes configurar con unos pocos clics, sin necesidad de hardware adicional. Puedes instalar un sistema operativo, almacenar archivos, ejecutar aplicaciones y conectarte a Internet, pero lo ejecutas dentro de tu computadora existente, llamada anfitrión.
Su sistema anfitrión realiza la mayor parte del trabajo en segundo plano, compartiendo su memoria, su potencia de cálculo y su almacenamiento para permitir que la máquina virtual funcione sin problemas. Este sistema es especialmente útil si necesita utilizar un software que solo está disponible en otro sistema operativo.
Funcionamiento de las máquinas virtuales
Un software llamado hipervisor gestiona todo el proceso en segundo plano. El hipervisor toma los recursos físicos de su computadora, como la unidad central de procesamiento (CPU), la memoria RAM (RAM) y el almacenamiento, y los comparte para que varias máquinas virtuales puedan utilizarlos simultáneamente.
Existen dos tipos principales de hipervisores:
Tipo 1 (nativo) : están instalados directamente en el hardware y a menudo se utilizan en centros de datos o plataformas en la nube. Están diseñados para el rendimiento y la eficiencia.
Tipo 2 (alojado): estas máquinas virtuales funcionan en su sistema operativo habitual (como aplicaciones) y son adecuadas para pruebas y desarrollo.
Una vez que la máquina virtual está configurada, puedes iniciarla como un verdadero ordenador e instalar software, navegar por Internet o desarrollar aplicaciones.
¿Por qué utilizar una máquina virtual?
1. Para probar nuevos sistemas operativos
Gracias a una máquina virtual, puedes probar diferentes sistemas operativos sin realizar cambios en tu computadora principal. Es como probar un nuevo sistema en un entorno seguro y separado.
2. Para aislar software arriesgado
¿Necesita abrir un archivo del que no está seguro o probar una aplicación desconocida? Ejecutarlo en una máquina virtual protege su computadora, así que si encuentra malware o una falla del sistema, su computadora principal no se verá afectada.
3. Para ejecutar software obsoleto o no disponible
Algunos programas solo funcionan en sistemas más antiguos, como Windows XP. Una máquina virtual puede recrear este entorno, lo que le permite seguir utilizando software que podría no funcionar en dispositivos modernos.
4. Para desarrollar y probar código en diferentes plataformas
Las máquinas virtuales permiten a los desarrolladores probar su código más fácilmente en diferentes sistemas operativos y simular el funcionamiento de nuevas aplicaciones en diversos entornos.
5. Para alimentar la nube
Muchos servicios en la nube ( como AWS, Azure y Google Cloud) están construidos sobre máquinas virtuales. Cuando inicias una instancia en la nube, estás iniciando una máquina virtual en un centro de datos remoto, lista para alojar sitios web, aplicaciones o bases de datos.
¿Cómo utilizan las redes blockchain las máquinas virtuales?
Mientras que las máquinas virtuales tradicionales son entornos aislados, las máquinas virtuales blockchain funcionan como un motor que ejecuta contratos inteligentes en la blockchain. La máquina virtual de Ethereum (EVM) permite a los desarrolladores escribir contratos inteligentes en lenguajes como Solidity, Vyper y Yul y desplegarlos en Ethereum y otras redes compatibles con EVM. La EVM garantiza que cada nodo de la red aplique las mismas reglas al crear o interactuar con contratos inteligentes.
Las redes blockchain implementan sus propios tipos de máquinas virtuales según sus objetivos de diseño. Algunas se centran en la velocidad y la escalabilidad, mientras que otras buscan ser más seguras o flexibles para los desarrolladores. Redes como Near y Cosmos utilizan máquinas virtuales basadas en WebAssembly (WASM), que admiten contratos inteligentes escritos en varios lenguajes de programación.
Otras redes blockchain, como Sui, utilizan MoveVM, que ejecuta contratos inteligentes escritos en el lenguaje Move. La blockchain Solana utiliza un entorno de ejecución personalizado, a menudo llamado máquina virtual Solana (SVS), que está diseñado para procesar transacciones en paralelo y manejar una gran actividad de red.
Las máquinas virtuales en acción
Puede que no los notes, pero las máquinas virtuales trabajan en segundo plano cada vez que interactúas con aplicaciones descentralizadas (DApps).
Si utilizas una aplicación de finanzas descentralizadas (DeFi) como Uniswap, tus transacciones son gestionadas por contratos inteligentes ejecutados en la EVM.
Si golpeas un NFT, la máquina virtual ejecuta el código que determina a quién pertenece cada NFT. Cuando realizas una compra o una transferencia, la máquina virtual actualiza los registros para que la propiedad del NFT permanezca precisa.
Si utiliza un rollup de capa 2 (layer 2), sus transacciones pueden ser procesadas por una máquina virtual especializada, como zkEVM. Los zkEVM permiten a los zk-rollups ejecutar contratos inteligentes utilizando la tecnología de pruebas de conocimiento cero (ZKP).
Límites de las máquinas virtuales
1. Sobrecarga de rendimiento: las máquinas virtuales añaden un paso adicional entre el hardware y el código ejecutado, lo que puede ralentizar los procesos o requerir más recursos de cálculo en comparación con la ejecución de aplicaciones directamente en una máquina física.
2. Complejidad operativa: el mantenimiento de máquinas virtuales (, en particular en la infraestructura en la nube o las redes blockchain ), requiere un esfuerzo considerable en términos de configuración y actualizaciones. Esto lleva tiempo y a menudo requiere herramientas y conocimientos especializados.
3. Compatibilidad: los contratos inteligentes a menudo están diseñados para un entorno de máquina virtual específico. El código escrito para los contratos inteligentes de Ethereum deberá reescribirse o adaptarse para funcionar en otras blockchains incompatibles, como Solana. Esto significa que los desarrolladores deben dedicar más tiempo y esfuerzo si quieren ejecutar la misma aplicación en varios entornos.
Conclusión
Las máquinas virtuales juegan un papel crucial en el funcionamiento de las computadoras clásicas y los sistemas de blockchain. Permiten ejecutar diferentes sistemas operativos, probar software de manera segura y utilizar el mismo hardware para diversas tareas.
Las máquinas virtuales también se utilizan en las redes blockchain para ejecutar contratos inteligentes y aplicaciones descentralizadas. Aunque no seas un experto, entender cómo funcionan las máquinas virtuales puede aclarar los mecanismos de muchas herramientas y plataformas DeFi que utilizamos.