EVM: Ядро Эфира
EVM (Ethereum Virtual Machine) является ядром Ethereum, отвечающим за выполнение смарт-контрактов и обработку транзакций.
Виртуальные машины обычно используются для виртуализации реальных компьютеров и управляются гипервизором или целым экземпляром операционной системы. Они должны предоставлять программную абстракцию реального оборудования, системных вызовов и других функций ядра.
EVM работает в более ограниченной области: это всего лишь вычислительный движок, который предоставляет абстракцию вычислений и хранения, аналогичную спецификации Java Virtual Machine (JVM). С высокого уровня, JVM предназначена для предоставления среды выполнения, независимой от базовой хост-операционной системы или аппаратного обеспечения, обеспечивая совместимость между системами. Аналогично, EVM выполняет свой собственный набор байт-кода, который обычно компилируется из Solidity.
EVM является почти тьюринговой полноразмерной машиной, "почти" потому, что все выполняемые шаги будут потреблять ограниченные ресурсы Gas.