Introducción
Aunque un sistema operativo (SO) es mutuamente excluyente en el sentido de que es Windows, MacOS o Linux, etc., a veces es posible ejecutar un SO sobre otro. Por ejemplo, existe la posibilidad de ejecutar Windows OS en MacOS, y Android OS en Windows OS. El propósito detrás de apilar los sistemas operativos es probar un SO, aislar algún software riesgoso del SO anfitrión, ejecutar una versión antigua de un SO o desarrollar y probar código en diferentes plataformas. Un EVM se utiliza en blockchains porque proporciona una forma universal y confiable de ejecutar contratos inteligentes y garantiza que cada nodo de la red ejecute transacciones exactamente de la misma manera.
¿Qué es una Máquina Virtual?
Una máquina virtual (VM) es esencialmente una computadora diferente que vive dentro de la tuya existente. Con solo unos pocos clics, puedes configurarla sin necesitar hardware físico adicional. Una vez en funcionamiento, actúa como una computadora completa. Puedes instalar un sistema operativo, almacenar archivos, ejecutar aplicaciones e incluso navegar por internet, y todo esto es posible dentro de ese espacio virtual. En el mundo de las criptomonedas, los contratos inteligentes en blockchains se desarrollan y ejecutan en máquinas virtuales. La más común de ellas es la Máquina Virtual de Ethereum (EVM).
Detrás de escena, es tu computadora principal, conocida como el anfitrión, la que hace esto posible. Para mantener la VM funcionando sin problemas, el anfitrión comparte sus propios recursos como memoria, potencia de procesamiento y almacenamiento. Esta configuración resulta útil cuando necesitas trabajar con un software que solo se ejecuta en un sistema operativo diferente al instalado en tu anfitrión.
Cómo funciona una VM
Entonces, ¿cómo funciona realmente una máquina virtual? En el centro de todo el proceso hay un software especial llamado hipervisor. El hipervisor actúa como un administrador, tomando los recursos físicos de tu computadora. Estos recursos incluyen componentes como el procesador (CPU), memoria (RAM) y almacenamiento. Están hechos para trabajar en división eficiente para que una o incluso varias máquinas virtuales puedan ejecutarse al mismo tiempo.
Hay dos formas en que los hipervisores se configuran típicamente. Algunos se instalan directamente en el hardware mismo, por eso se encuentran a menudo en centros de datos y entornos de computación en la nube donde la velocidad y la eficiencia son lo más importante. Otros se ejecutan sobre tu sistema operativo normal, casi como cualquier otra aplicación. Estos son más comunes para uso diario, pruebas o trabajo de desarrollo. Por ejemplo, puedes disfrutar del ecosistema de Android en Windows OS instalando una aplicación como BlueStacks.
Una vez que el hipervisor ha hecho su trabajo y tu máquina virtual está lista, puedes tratarla como una computadora física. Puedes iniciarla, luego instalar programas, usar internet o incluso construir y ejecutar aplicaciones, todo dentro de ese espacio virtual.
Máquinas Virtuales en Redes Blockchain
La mayoría de las personas que usan aplicaciones blockchain nunca contemplan la infraestructura invisible que hace que todo funcione sin problemas. Ya sea que estés intercambiando tokens en un exchange descentralizado, acuñando un NFT o enviando fondos a través de una blockchain de Capa 2, un componente vital está realizando todas las tareas pesadas en segundo plano. Ese componente es la máquina virtual blockchain.
En el mundo tecnológico tradicional, una máquina virtual (VM) es básicamente un sandbox aislado. Permite a los desarrolladores ejecutar software en un entorno limitado y controlado. Este software está separado del hardware subyacente. Sin embargo, en las redes blockchain, las VMs sirven para un propósito muy diferente. Funcionan como motores de ejecución para contratos inteligentes, los agentes de código auto-ejecutables que permiten que las aplicaciones descentralizadas funcionen sin problemas 24/7. Sin las VMs, no habría una forma confiable para que miles de computadoras independientes en todo el mundo se pongan de acuerdo sobre cómo debe ejecutarse un contrato.
Máquina Virtual de Ethereum
La Máquina Virtual de Ethereum (EVM) es el ejemplo más conocido de VMs de Blockchain. Lenguajes como Solidity, Vyper o Yul pueden ser utilizados por los desarrolladores para escribir contratos y desplegarlos en Ethereum, así como en otras blockchains compatibles con EVM. El EVM asegura que cada nodo procese los contratos inteligentes exactamente de la misma manera, porque ayuda a mantener la consistencia y seguridad en toda la red.
Otras VMs en el Mundo Blockchain
Pero Ethereum no es la única blockchain que tiene una máquina virtual. Diferentes redes blockchain diseñan sus propios modelos para cumplir objetivos específicos según sus requisitos. NEAR y Cosmos dependen de VMs basadas en WebAssembly, conocidas por su flexibilidad. Estas permiten que los contratos inteligentes se escriban en varios lenguajes de programación, lo que reduce los obstáculos para los desarrolladores que no quieren aprender algo completamente nuevo. Mientras tanto, el MoveVM, utilizado por blockchains como Sui, da más importancia al lenguaje Move para priorizar la seguridad en la ejecución de transacciones. Solana toma una ruta diferente con su Máquina Virtual Solana, optimizada para procesar muchas transacciones simultáneamente.
Aunque la mayoría de los usuarios nunca interactúan con ellas directamente, las VMs están trabajando constantemente en segundo plano. Cuando haces un intercambio de tokens en una plataforma DeFi como Uniswap, el EVM está ejecutando el contrato. Si acuñas un nuevo NFT, la VM actualiza el ledger para mostrar quién es su propietario. Incluso soluciones de escalado avanzadas como los zk-rollups dependen de VMs especializadas como zkEVMs, que combinan la ejecución de contratos inteligentes con pruebas criptográficas para mejorar tanto la eficiencia como la seguridad.
Defectos de las VMs
Sin embargo, las máquinas virtuales también tienen ciertas desventajas. Las VMs ejecutan código y gestionan contratos inteligentes en componentes prestados, lo que hace que los procesos sean más lentos en comparación con la ejecución directa en hardware. La complejidad operativa resulta del mantenimiento de VMs en redes grandes, requiriendo actualizaciones constantes y conocimiento especializado. La compatibilidad es otra desventaja. Un contrato escrito para Ethereum no se ejecutará en Solana sin cambios sustanciales. Esto crea trabajo adicional para los desarrolladores que quieren llegar a múltiples ecosistemas.
A pesar de estos desafíos, las VMs blockchain siguen siendo el núcleo de la innovación en tecnología descentralizada. Son los héroes no reconocidos que hacen que los usuarios confíen fácilmente en el código en lugar de intermediarios. Las VMs crean un mundo de productos financieros, propiedad digital y comunidades virtuales. Aunque nunca las veas directamente, las máquinas virtuales son los motores silenciosos que mantienen en movimiento la economía blockchain.
Conclusión
En resumen, las máquinas virtuales pueden pasar desapercibidas, pero juegan un papel crucial en la tecnología moderna. Al hacer las cosas más simples y seguras detrás de escena, nos ayudan a construir y usar nuevos tipos de programas informáticos y cambian la forma en que confiamos y compartimos información. Ya sea que estén impulsando las últimas herramientas blockchain o permitiendo que las personas ejecuten software en un espacio protegido, las VMs siguen mejorando silenciosamente. Su verdadero poder radica en cómo apoyan todo desde el fondo, mostrando que gran parte de lo que hace que la tecnología funcione mejor a menudo es invisible.
Preguntas Frecuentes
Una máquina virtual en blockchain es un motor de ejecución que ejecuta contratos inteligentes de manera segura y consistente en todos los nodos de la red.
¿Qué es la Máquina Virtual de Ethereum (EVM)?La Máquina Virtual de Ethereum (EVM) es la VM blockchain más ampliamente utilizada que asegura que cada Smart Contract se ejecute de la misma manera en todas las blockchains compatibles con Ethereum.
¿Por qué son importantes las máquinas virtuales en blockchain?Las máquinas virtuales son importantes porque hacen que las aplicaciones descentralizadas (dApps) funcionen de manera confiable, segura y consistente sin necesidad de intermediarios.
Source: https://blockchainreporter.net/virtual-machines-hidden-engines-powering-blockchain/



