$EX5 ön satışı — Seed kademesi · 500M sabit arz · %50 yakım · kayıt portal.ex5.com'daKATIL →
Güncellendi

Ethereum Sanal Makinesi (Ethereum Virtual Machine (EVM))

Kısaca: Ethereum Sanal Makinesi (EVM) , Ethereum'daki her akıllı sözleşme için çalışma ortamını sağlayan "Turing-tam" (Turing complete) bir sanal makinedir.

Ethereum Sanal Makinesi (EVM), Ethereum'daki her akıllı sözleşme için çalışma ortamını sağlayan "Turing-tam" (Turing complete) bir sanal makinedir. Geliştiricilerin dağıttığı kodun amaçlandığı gibi, ağın her düğümünde tam olarak aynı şekilde çalıştırılmasını sağlar.

Neden önemli?

Geliştiriciler akıllı sözleşmeleri Solidity veya Vyper gibi dillerde yazar ve bunları EVM'nin çalıştırdığı bayt koduna (bytecode) derler. Her tam düğüm aynı bayt kodunu aynı girdilerle çalıştırır ve aynı sonuca ulaşmak zorundadır. Ağ, tek bir sunucuya güvenmeden bakiyeler ve sözleşme durumu üzerinde bu sayede uzlaşır. "Turing-tam" olması, EVM'nin prensipte herhangi bir programı çalıştırabileceği anlamına gelir. Uygulamada ise her komut gaz harcar ve her işlemin bir gaz limiti vardır; bu nedenle bir program sonsuz döngüye girip ağı tıkayamaz. Diğer birçok blok zinciri EVM uyumludur: aynı tür bayt kodunu çalıştırır ve aynı 0x adres biçimini kullanırlar. Bu durum geliştiricilerin kodu yeniden kullanmasına yardımcı olur; ancak kripto borsalarının yatırma veya çekim yaparken doğru ağı seçmenizi istemesinin nedeni de budur.

Örnek

Bir geliştirici Solidity ile bir token sözleşmesi yazar, derler ve bayt kodunu Ethereum'a dağıtır. Daha sonra bir kullanıcı sözleşmenin transfer fonksiyonunu çağırdığında her düğümdeki EVM aynı kodu çalıştırır, gönderenin bakiyesini kontrol eder ve iki bakiyeyi de günceller. Kod bir hatayla karşılaşırsa ya da gazı tükenirse EVM değişiklikleri geri alır.

İlgili terimler