Máquina virtual
Una máquina virtual, a menudo llamada VM, es un software que funciona como un ordenador o como un entorno para ejecutar código. En el mundo cripto, este tipo de entorno ejecuta contratos inteligentes siguiendo reglas establecidas.
¿Qué es una máquina virtual?
Hay dos tipos principales. Una VM de sistema es un ordenador virtual con su propio sistema operativo. Varios ordenadores virtuales de este tipo pueden compartir el mismo ordenador físico.
Una VM de proceso no es un ordenador completo. Es, sobre todo, un entorno definido en el que se ejecuta código. Las reglas de ese entorno determinan lo que el código puede y no puede hacer.
En el mundo cripto, una VM suele ser del segundo tipo. Por ejemplo, la Ethereum Virtual Machine, o EVM, ejecuta contratos inteligentes. Un contrato inteligente es código que realiza automáticamente una tarea definida de antemano.
Un ejemplo de máquina virtual
Alguien envía una transacción a un contrato inteligente para enviar tokens. Entonces, la EVM ejecuta el código de ese contrato.
La VM comprueba las condiciones incluidas en el código. Si todo está en orden, el contrato puede modificar los saldos almacenados. La transacción utiliza gas para realizar estos cálculos.
¿Por qué son importantes las máquinas virtuales en el mundo cripto?
Una VM de blockchain hace que diferentes nodos, es decir, los ordenadores de la red, ejecuten el mismo código de la misma manera. Por eso, la misma entrada debería producir siempre el mismo resultado.
Por este motivo, en las noticias sobre Ethereum, contratos inteligentes u otras blockchains programables, es posible encontrar términos como VM o EVM. Esto significa que la red puede ejecutar código y, por tanto, hacer más que enviar criptoactivos.
Una VM y el consenso cumplen funciones distintas. La VM determina qué hace técnicamente una transacción. El consenso permite que la red se ponga de acuerdo sobre qué transacciones y resultados se aceptan. Además, los cálculos y el almacenamiento en las VM de blockchain son limitados y pueden generar costes.