Віртуальна машина Ethereum (EVM)
Віртуальна машина Ethereum (EVM) - це повна віртуальна машина, заснована на тюрингу, яка виконує розумні контракти на блокчейні Ethereum.
EVM забезпечує повну ізоляцію коду від основної файлової системи вузла, що гарантує високий рівень безпеки при виконанні невідомого коду.
graph LR
Center["Віртуальна машина Ethereum (EVM)"]:::main
Pre_cryptography["cryptography"]:::pre --> Center
click Pre_cryptography "/terms/cryptography"
Rel_smart_contracts["smart-contracts"]:::related -.-> Center
click Rel_smart_contracts "/terms/smart-contracts"
Rel_solidity["solidity"]:::related -.-> Center
click Rel_solidity "/terms/solidity"
Rel_zkevm_zero_knowledge_ethereum_virtual_machine["zkevm-zero-knowledge-ethereum-virtual-machine"]:::related -.-> Center
click Rel_zkevm_zero_knowledge_ethereum_virtual_machine "/terms/zkevm-zero-knowledge-ethereum-virtual-machine"
classDef main fill:#7c3aed,stroke:#8b5cf6,stroke-width:2px,color:white,font-weight:bold,rx:5,ry:5;
classDef pre fill:#0f172a,stroke:#3b82f6,color:#94a3b8,rx:5,ry:5;
classDef child fill:#0f172a,stroke:#10b981,color:#94a3b8,rx:5,ry:5;
classDef related fill:#0f172a,stroke:#8b5cf6,stroke-dasharray: 5 5,color:#94a3b8,rx:5,ry:5;
linkStyle default stroke:#4b5563,stroke-width:2px;
🧒 Простими словами
EVM — це ніби двигун комп'ютера [Ethereum](/uk/terms/ethereum). Він читає спеціальні інструкції (байт-код) зі смарт-контрактів і виконує дії, як шеф-кухар, що крок за кроком дотримується рецепту. Кожен крок коштує трохи грошей ("газу"), щоб приготування не тривало вічно.
🤓 Expert Deep Dive
Віртуальна машина Ethereum (EVM) — це детерміноване, стекове середовище виконання, розроблене для смарт-контрактів. Її основна функція полягає в обробці викликів транзакцій та переходів стану в мережі Ethereum. Специфікація EVM визначає набір опкодів, розмір слова 256 біт та механізм розподілу газу для вимірювання обчислювальних зусиль. Детермінізм є першочерговим; кожен вузол, що виконує однаковий байт-код з однаковим початковим станом, повинен досягти ідентичного кінцевого стану. Це досягається шляхом суворого дотримання функції переходу стану EVM. Механізм газу, запобігаючи зловживанню ресурсами, вводить економічні обмеження, які суттєво впливають на дизайн dApp та користувацький досвід, особливо щодо витрат на транзакції та обмежень пропускної здатності. Архітектурні компроміси включають властиві обмеження стекової архітектури для складних обчислень та виклики в оптимізації ефективності газу для виконання смарт-контрактів. Рішення щодо дизайну EVM вплинули на подальші розробки віртуальних машин блокчейну, але також підкреслюють постійний пошук вищої продуктивності та нижчих комісій за транзакції, що призводить до таких інновацій, як рішення рівня 2 та альтернативні середовища виконання.