EVM (Ethereum Sanal Makinesi) Nedir?

Yeni BaşlayanNov 21, 2022
EVM, Ethereum'un sorunsuz çalışmasını sağlamak için bir garanti görevi gören, kod ile ana bilgisayar arasında bir soyutlama katmanıdır. Sonuçta EVM nedir? EVM'nin ilkeleri ve tipik kullanım durumları nelerdir? Daha derine inelim.
 EVM (Ethereum Sanal Makinesi) Nedir?

Giriş

EVM, Ethereum'un sorunsuz çalışmasını sağlamak için bir garanti görevi gören, kod ile ana bilgisayar arasında bir soyutlama katmanıdır. Sonuçta EVM nedir? EVM'nin ilkeleri ve tipik kullanım durumları nelerdir? Daha derine inelim.

Şu anda en popüler blok zinciri olan Ethereum, kullanıcılara çeşitli merkezi olmayan uygulamalar sunar. İnsanlar DeFi, NFT'ler vb.'den bahsettiğinde en sık bahsedilen terimdir. Ve Ethereum'un temel bir parçası olan EVM de insanların büyük ilgisini çekiyor. O halde EVM ve Ethereum arasındaki ilişki nedir?

EVM nedir?

EVM, Ethereum sanal makinesi anlamına gelir. Ethereum tarafından tanımlandığı şekliyle EVM, tüm Ethereum hesaplarının ve akıllı sözleşmelerin Ethereum zincirinde yaşadığı çalışma ortamıdır.

EVM, bir Ethereum istemcisi çalıştıran tüm bağlı bilgisayarlar tarafından sağlanan tek bir varlık olarak mevcuttur. Bloktan bloğa yeni bir geçerli durumu hesaplamak için kuralları tanımlayan şeydir.

EVM nasıl çalışır?

EVM'nin arkasındaki ilkeler

Bitcoin gibi dağıtılmış bir defter yerine, Ethereum dağıtılmış bir durum makinesidir. Bloktan bloğa geçiş, Ethereum'daki tüm hesapların ve bakiyelerin durumunun bir güncellemesini temsil eder. Güncelleme, EVM tarafından sözleşmenin koduna göre hesaplanır.


Şekil: https://takenobu-hs.github.io/downloads/ethereum_evm_illustrated.pdf

EVM, yığın tabanlı bir sanal makinedir ve tüm işlemlerini doğrudan yığında gerçekleştirir. Akıllı sözleşme bayt koduna derlendiğinde, EVM bayt koduna dayalı olarak değişkenleri bellekten alma ve yığına ekleme, yığındaki değişkenleri hesaplama ve değişkenleri belleğe depolama vb. dahil olmak üzere işlemleri gerçekleştirecektir.

EVM'de iki ana veri depolama türü vardır: bellek ve depolama. Depolamadaki değişkenler, sözleşme yürütüldükten sonra kalıcı olarak Ethereum'da depolanırken, EVM'de kod yürütülürken bellekteki değişkenler geçici olarak var olur.

Örnek olarak bir sözleşmeyi çağırın. Solidity ile bir sözleşme yazdık, meta verileri bir derleyici aracılığıyla derledik ve Ethereum'da yayınladık. Sözleşme durumunu güncellememiz gerektiğinde sözleşmeyi çağırmamız gerekir. Ancak ne işletim sistemi ne de Windows akıllı sözleşmeleri doğrudan çalıştıramaz. Akıllı sözleşmeler için çalışan bir ortam sağlamak için EVM'ye ihtiyaç vardır. Belirli adımlar aşağıdaki gibidir: İlk olarak, EVM, sözleşme adresi aracılığıyla Ethereum'da depolanan sözleşme kodunu bulur; ardından bir yürütme ortamı oluşturulur; son olarak, sözleşme içeriği bayt koduna dönüştürülür ve çalışması için EVM'ye konur. İşlemden elde edilen sonuç bir sonraki blokta en son durum olarak saklanacak ve böylece durum güncelleme işlemi tamamlanmış olacaktır.

Şekil: https://cnodejs.org/topic/5aeecba802591040485bab2a

EVM Uygulamaları
Şu anda, tüm Ethereum istemcileri bir EVM uygulaması içerir. Ethereum, EVM işlevlerini uygulamak için Python, C++, js, Go vb. dahil olmak üzere çeşitli programlama dillerinin kaynak kodunu başlattı. Kullanıcıların EVM ilkesini daha uygun bir şekilde anlamalarına yardımcı olur.

Py-EVM - Python: https://github.com/ethereum/py-evm
evmone - C++: https://github.com/ethereum/evmone
Ethereumjs - vm - JavaScript: https://github.com/ethereumjs/ ethereumjs-monorepo
eEVM - C++: https://github.com/microsoft/eevm
Hyperledger Burrow - Git: https://github.com/hyperledger/burrow

EVM'nin Temel Unsurları

akıllı sözleşme

Akıllı sözleşmeler, yalnızca EVM'de çalışan kodlardır. Dağıtıldıktan sonra değiştirilemezler. Ethereum, çeşitli merkezi olmayan uygulamalar elde etmek için durumu akıllı sözleşmeler aracılığıyla tanımlar, değiştirir ve depolar. EVM, otoyol ve araba arasındaki ilişkiye benzer şekilde, akıllı sözleşmelerin çalışabileceği bir ortam görevi görür.

Gaz ücreti

Belirli bir miktarda gaz tüketen EVM'de akıllı sözleşmeleri yürütmek için önemli bilgi işlem gücü gerekir. Daha iyi anlamak için, ücretli yollarda geçiş ücreti ödemesi gereken araçları düşünün.
Gaz ücretleri, Ethereum'u daha merkezi olmayan hale getirmenin bir yolu olarak dünyanın her yerinden madencileri katılmaya ve bilgi işlem gücü sağlamaya teşvik etmeye yardımcı olur. Ayrıca, kullanıcıların Ethereum Mainnet tıkanıklığına yol açabilecek veya kötü niyetli saldırıları önleyerek Ethereum'un çökmesini önleyebilecek rastgele işlem istekleri göndermesini engeller.

Sağlamlık ve İşlem Kodu

Ethereum akıllı sözleşmeleri Solidity'de yazılır ve EVM'de yürütülmeden önce bayt kodunda derlenir. Bayt kodu işlem kodlarını veya işlem kodlarını içerir. EVM, her biri belirli işlevlere sahip 144 işlem koduna sahiptir ve bu da EVM Turing'i eksiksiz kılar. Her türlü hesaplama problemini çözebilir. Sağlamlık ve İşlem Kodları, karmaşık akıllı sözleşmeler yazmamızı ve EVM üzerinde çok çeşitli işlevler uygulamamızı mümkün kılarak kullanıcılara çeşitli dApp'ler sağlar.

EVM'nin Özellikleri

deterministik

Aynı kod parçası için, yürütme ortamı ve yürütme sayısıyla hiçbir ilgisi olmadığından, farklı EVM'lerde yürütüldükten sonra çıktı aynıdır. EVM'nin kesinliği, kodun güvenilirliğini sağlar ve beklenmedik sonuçlardan kaçınır. Bu özellik, özellikle Ethereum'da büyük işlemler yaparken kullanıcıların çıkarlarını korumaya yardımcı olur.

İzole edilmiş

EVM, kodun çalıştığı yalıtılmış bir sanal alan gibidir. Çalıştırma işlemi, bilgisayarın yazılımına/donanımına zarar vermez ve Ethereum'un temel protokolünü etkilemez. EVM'nin izolasyonu, bilgisayar korsanlarının bir EVM çalıştıran makineye saldırmasını engeller ve ayrıca Ethereum'un temel protokolünü kurcalanmaya karşı korur. Ethereum'u koruyan bir garanti görevi görür.

feshedilebilir

EVM yürütme kodu süreci kesintiye uğrayabilir. Kullanıcı, sonsuz bir döngü gibi yanlış bir kod çalıştırırsa, bu tür bir kodun hesaplama gücünü süresiz olarak işgal etmesini önlemek amacıyla yürütme sürecini sonlandırmak için gaz mekanizması konuşlandırılabilir. EVM'de kodu çalıştırmadan önce, gazın üst sınırı önceden ayarlanmalıdır. Gaz bittiğinde, kod çalışmayı durduracak ve zincirde herhangi bir güncelleme yapılmadan durum geri alınacaktır.

EVM Uyumluluğu

Kullanıcılar arttıkça Ethereum Mainnet, sıkışık ağlar ve yüksek gas ücretleri gibi birçok sorunla karşılaşır. Ethereum'un tasarımıyla sınırlı olan bu sorunlar kökten çözülemez.

Son yıllarda, daha düşük gaz ücretleri ve daha hızlı ağlara sahip birçok yeni halka açık zincir ve Ethereum'u ölçeklendirmek için tasarlanmış Katman 2 zincirleri var. Bu zincirlerin tümü, daha iyi temel tasarımlara sahip olduğu söylenen ve çeşitli dApp'ler oluşturmak için kullanılabilen akıllı sözleşme zincirleridir.

Bu zincirler, Ethereum ekosisteminin fazla taleplerini üstlenir ve Ethereum'un baskın statüsüne meydan okur. Ethereum muadillerinin EVM ile uyumlu olması gerekli midir? Bu ayrışma ile ilgili olarak, bu zincirler iki kategoriye ayrılır: EVM uyumlu zincirler ve EVM olmayan zincirler.

EVM ile uyumlu genel zincirler

Son zamanlarda, Katman 1 halka açık zincirleri birbiri ardına ortaya çıkıyor. Ethereum ile paralel çalışan zincir üstü bir ekosistemi yeniden inşa etmek, Ethereum'un mevcut eksikliklerinin üstesinden gelebilse de, eksiksiz bir ekosistem oluşturmak ve sıfırdan bir dApp geliştirmek için önemli insan kaynakları gerektirir. Nitelikli programcıların eksikliği, yeni halka açık zincir ekosistemlerinin büyümesini engellemektedir. Gelişmemiş bir ekosisteme sahip bir halka açık zincir için, Ethereum'dan bir kullanıcıyı kısa sürede çekmek zor olacaktır.

Bu göz önüne alındığında, bazı genel zincirler EVM ile uyumlu olacak şekilde tasarlanmıştır. Başlangıçta Ethereum üzerinde çalışan DApp'ler, kaynak kodunda yalnızca küçük değişikliklerle tamamen EVM uyumlu genel zincirlere geçirilebilir. Yalnızca geliştirme kaynaklarının kullanımını en üst düzeye çıkarmakla kalmaz, aynı zamanda kullanıcılara Ethereum'dan yeni bir zincire geçiş sürecinde daha iyi bir deneyim sağlar.

Bununla birlikte, EVM uyumluluğu kaçınılmaz olarak bazı sorunları da beraberinde getirmiştir. EVM kurallarıyla sınırlı olan birçok EVM uyumlu zincir, homojenleştirme olmadan inovasyonun nasıl sağlanacağı konusunda bir sorunla karşılaşır. Bununla birlikte, EVM olmayan zincirler bu kuralları çiğneyebilir ve sıfırdan yeni bir kurallar dizisi geliştirebilir, böylece temelde inovasyonu başarabilir.

Şu anda, BSC, Avalanche, Fantom, Tron, Celo vb. gibi ana akım halka açık zincirlerin %70'inden fazlası EVM ile uyumludur. Geliştiricilerin daha yüksek performans ve daha düşük gaz ücretleri için dApp'ler geliştirmesi veya bu zincirlerde Ethereum uygulamaları dağıtması, dolayısıyla kullanıcı deneyimini iyileştirmesi zor olmayacaktır.

Diğer bazı halka açık zincirler EVM değildir ancak Sol, Terra vb. gibi kendi sanal makinelerini geliştirmiştir. EVM ile uyumlu olmasa da bu zincirler, yenilikçi tasarımları ve mükemmel zincir üstü performansları ile bir grup sadık kullanıcı ve kurumu kendine çekmiştir. Örneğin, son zamanlarda tüm dünyada popüler olan iki blockchain oyunu, Step N ve Let me Speak, Sol zincirine dayanıyor ve dünyanın dört bir yanından hevesli hayranların katılımını sağladı.

Özellikle EVM uyumlu zincirler, EVM olmayan zincirlerle bir arada bulunabilir. Bazı EVM olmayan zincirler de EVM ile uyumlu olmaya başlar. Bunu başarma süreci, kodu değiştirmek için kapsamlı çabalar gerektirdiğinden zorlu olacaktır. Bunun bir örneği, geliştiricilerin EVM üzerinde dApp'ler oluşturmasına olanak tanıyan Neon'u başlatan Sol'dur.

Şekil: Genel zincirlerin EVM uyumluluğu

EVM ile uyumlu Katman 2 zincirleri

Ethereum'un ölçekleme çözümü olarak Layer 2, rakibi yerine Ethereum'u tamamlayıcı niteliktedir. Katman 2 zincirlerinin tümü EVM uyumludur ve Katman 1'den daha yüksek bir uyumluluk düzeyine sahiptir. Layer 2'nin EVM ile uyumlu olması için iki çözümümüz var: EVM uyumluluğu ve EVM denkliği.

İlk Katman 2 zincirleri, Katman 1 zincirlerinin EVM uyumluluğuna benzer şekilde EVM uyumludur. Ethereum Layer 1 üzerindeki akıllı sözleşmeler, bazı değişiklikler yapılarak Layer 2 üzerinde devreye alınabilir. Örneğin, Optimism tarafından başlatılan Unipig, tamamen Uniswap kodunun yeniden inşasıdır. Katman 2'de Uniswap olarak kabul edilir.

EVM uyumluluğuna ilişkin bazı sınırlamalar vardır. EVM uyumlu bir zincir üzerinde akıllı sözleşmeler geliştirirken, bazı EVM tabanlı geliştirme araçları ve çerçeveleri kullanılamayabilir. Ek olarak, başlangıçta Katman 1'de düzenlenen akıllı sözleşmeler için, akıllı sözleşmelerin EVM uyumlu blok zincirinde sorunsuz çalışabilmesi için geliştiricilerin hala bazı ayarlamalar yapması gerekiyor.

EVM denkliği, geliştiricilere Katman 2'de akıllı sözleşmeler geliştirirken Ethereum Katman 1'de olduğu gibi tamamen aynı deneyimi vermeyi amaçlar. Bu, Layer2 geliştiricilerine büyük ölçüde fayda sağladı, geliştirme verimliliğini daha da artırdı ve EVM uyumluluğu temelinde geliştirme ve kod bakımı maliyetlerinden tasarruf sağladı.

Şu anda Artbitrum, Optimism ve Metis gibi ana akım Katman 2 çözümleri EVM denkliğini elde etti. EVM eşdeğerliği, ölçeklendirmenin neden olduğu geliştirme ve geçiş maliyetlerini en aza indirmek amacıyla Ethereum'un özelliklerini Katman 2'ye daha iyi aktarabilir. EVM denkliğinin gelecekte Katman 2'nin ana standardı haline gelmesi bekleniyor ve birçok Katman 2 çözümünün EVM denkliği etrafında kıyasıya bir yarışa girmesi bekleniyor.

Çözüm

EVM, Ethereum'un çalışmasını sağlayan çekirdektir. Ethereum'un hakimiyetinin kurulmasıyla birlikte, büyük halka açık zincirler ve Katman 2 zincirleri, EVM'nin altında yatan tasarım konseptini takip etti veya onunla uyumlu hale geldi. Bu nedenle, EVM kesinlikle tüm blok zinciri üzerinde derin bir etkiye sahip olmuştur. EVM'nin kendisi, yeni zincirlerin EVM ile uyumlu olmasını zorlaştıran pek çok sorunla birlikte gelir. Buna rağmen, geliştiriciler iyileştirmeler yapmak için çok çalışıyorlar, bu da diğer birçok halka açık zincirin ortaya çıkmasını büyük ölçüde kolaylaştırdı.

作者: Pigfly
译者: Binyu
文章审校: Edward, Ashley, Cecilia
* 投资有风险,入市须谨慎。本文不作为Gate.io提供的投资理财建议或其他任何类型的建议。
* 在未提及Gate.io的情况下,复制、传播或抄袭本文将违反《版权法》,Gate.io有权追究其法律责任。

EVM (Ethereum Sanal Makinesi) Nedir?

Yeni BaşlayanNov 21, 2022
EVM, Ethereum'un sorunsuz çalışmasını sağlamak için bir garanti görevi gören, kod ile ana bilgisayar arasında bir soyutlama katmanıdır. Sonuçta EVM nedir? EVM'nin ilkeleri ve tipik kullanım durumları nelerdir? Daha derine inelim.
 EVM (Ethereum Sanal Makinesi) Nedir?

Giriş

EVM, Ethereum'un sorunsuz çalışmasını sağlamak için bir garanti görevi gören, kod ile ana bilgisayar arasında bir soyutlama katmanıdır. Sonuçta EVM nedir? EVM'nin ilkeleri ve tipik kullanım durumları nelerdir? Daha derine inelim.

Şu anda en popüler blok zinciri olan Ethereum, kullanıcılara çeşitli merkezi olmayan uygulamalar sunar. İnsanlar DeFi, NFT'ler vb.'den bahsettiğinde en sık bahsedilen terimdir. Ve Ethereum'un temel bir parçası olan EVM de insanların büyük ilgisini çekiyor. O halde EVM ve Ethereum arasındaki ilişki nedir?

EVM nedir?

EVM, Ethereum sanal makinesi anlamına gelir. Ethereum tarafından tanımlandığı şekliyle EVM, tüm Ethereum hesaplarının ve akıllı sözleşmelerin Ethereum zincirinde yaşadığı çalışma ortamıdır.

EVM, bir Ethereum istemcisi çalıştıran tüm bağlı bilgisayarlar tarafından sağlanan tek bir varlık olarak mevcuttur. Bloktan bloğa yeni bir geçerli durumu hesaplamak için kuralları tanımlayan şeydir.

EVM nasıl çalışır?

EVM'nin arkasındaki ilkeler

Bitcoin gibi dağıtılmış bir defter yerine, Ethereum dağıtılmış bir durum makinesidir. Bloktan bloğa geçiş, Ethereum'daki tüm hesapların ve bakiyelerin durumunun bir güncellemesini temsil eder. Güncelleme, EVM tarafından sözleşmenin koduna göre hesaplanır.


Şekil: https://takenobu-hs.github.io/downloads/ethereum_evm_illustrated.pdf

EVM, yığın tabanlı bir sanal makinedir ve tüm işlemlerini doğrudan yığında gerçekleştirir. Akıllı sözleşme bayt koduna derlendiğinde, EVM bayt koduna dayalı olarak değişkenleri bellekten alma ve yığına ekleme, yığındaki değişkenleri hesaplama ve değişkenleri belleğe depolama vb. dahil olmak üzere işlemleri gerçekleştirecektir.

EVM'de iki ana veri depolama türü vardır: bellek ve depolama. Depolamadaki değişkenler, sözleşme yürütüldükten sonra kalıcı olarak Ethereum'da depolanırken, EVM'de kod yürütülürken bellekteki değişkenler geçici olarak var olur.

Örnek olarak bir sözleşmeyi çağırın. Solidity ile bir sözleşme yazdık, meta verileri bir derleyici aracılığıyla derledik ve Ethereum'da yayınladık. Sözleşme durumunu güncellememiz gerektiğinde sözleşmeyi çağırmamız gerekir. Ancak ne işletim sistemi ne de Windows akıllı sözleşmeleri doğrudan çalıştıramaz. Akıllı sözleşmeler için çalışan bir ortam sağlamak için EVM'ye ihtiyaç vardır. Belirli adımlar aşağıdaki gibidir: İlk olarak, EVM, sözleşme adresi aracılığıyla Ethereum'da depolanan sözleşme kodunu bulur; ardından bir yürütme ortamı oluşturulur; son olarak, sözleşme içeriği bayt koduna dönüştürülür ve çalışması için EVM'ye konur. İşlemden elde edilen sonuç bir sonraki blokta en son durum olarak saklanacak ve böylece durum güncelleme işlemi tamamlanmış olacaktır.

Şekil: https://cnodejs.org/topic/5aeecba802591040485bab2a

EVM Uygulamaları
Şu anda, tüm Ethereum istemcileri bir EVM uygulaması içerir. Ethereum, EVM işlevlerini uygulamak için Python, C++, js, Go vb. dahil olmak üzere çeşitli programlama dillerinin kaynak kodunu başlattı. Kullanıcıların EVM ilkesini daha uygun bir şekilde anlamalarına yardımcı olur.

Py-EVM - Python: https://github.com/ethereum/py-evm
evmone - C++: https://github.com/ethereum/evmone
Ethereumjs - vm - JavaScript: https://github.com/ethereumjs/ ethereumjs-monorepo
eEVM - C++: https://github.com/microsoft/eevm
Hyperledger Burrow - Git: https://github.com/hyperledger/burrow

EVM'nin Temel Unsurları

akıllı sözleşme

Akıllı sözleşmeler, yalnızca EVM'de çalışan kodlardır. Dağıtıldıktan sonra değiştirilemezler. Ethereum, çeşitli merkezi olmayan uygulamalar elde etmek için durumu akıllı sözleşmeler aracılığıyla tanımlar, değiştirir ve depolar. EVM, otoyol ve araba arasındaki ilişkiye benzer şekilde, akıllı sözleşmelerin çalışabileceği bir ortam görevi görür.

Gaz ücreti

Belirli bir miktarda gaz tüketen EVM'de akıllı sözleşmeleri yürütmek için önemli bilgi işlem gücü gerekir. Daha iyi anlamak için, ücretli yollarda geçiş ücreti ödemesi gereken araçları düşünün.
Gaz ücretleri, Ethereum'u daha merkezi olmayan hale getirmenin bir yolu olarak dünyanın her yerinden madencileri katılmaya ve bilgi işlem gücü sağlamaya teşvik etmeye yardımcı olur. Ayrıca, kullanıcıların Ethereum Mainnet tıkanıklığına yol açabilecek veya kötü niyetli saldırıları önleyerek Ethereum'un çökmesini önleyebilecek rastgele işlem istekleri göndermesini engeller.

Sağlamlık ve İşlem Kodu

Ethereum akıllı sözleşmeleri Solidity'de yazılır ve EVM'de yürütülmeden önce bayt kodunda derlenir. Bayt kodu işlem kodlarını veya işlem kodlarını içerir. EVM, her biri belirli işlevlere sahip 144 işlem koduna sahiptir ve bu da EVM Turing'i eksiksiz kılar. Her türlü hesaplama problemini çözebilir. Sağlamlık ve İşlem Kodları, karmaşık akıllı sözleşmeler yazmamızı ve EVM üzerinde çok çeşitli işlevler uygulamamızı mümkün kılarak kullanıcılara çeşitli dApp'ler sağlar.

EVM'nin Özellikleri

deterministik

Aynı kod parçası için, yürütme ortamı ve yürütme sayısıyla hiçbir ilgisi olmadığından, farklı EVM'lerde yürütüldükten sonra çıktı aynıdır. EVM'nin kesinliği, kodun güvenilirliğini sağlar ve beklenmedik sonuçlardan kaçınır. Bu özellik, özellikle Ethereum'da büyük işlemler yaparken kullanıcıların çıkarlarını korumaya yardımcı olur.

İzole edilmiş

EVM, kodun çalıştığı yalıtılmış bir sanal alan gibidir. Çalıştırma işlemi, bilgisayarın yazılımına/donanımına zarar vermez ve Ethereum'un temel protokolünü etkilemez. EVM'nin izolasyonu, bilgisayar korsanlarının bir EVM çalıştıran makineye saldırmasını engeller ve ayrıca Ethereum'un temel protokolünü kurcalanmaya karşı korur. Ethereum'u koruyan bir garanti görevi görür.

feshedilebilir

EVM yürütme kodu süreci kesintiye uğrayabilir. Kullanıcı, sonsuz bir döngü gibi yanlış bir kod çalıştırırsa, bu tür bir kodun hesaplama gücünü süresiz olarak işgal etmesini önlemek amacıyla yürütme sürecini sonlandırmak için gaz mekanizması konuşlandırılabilir. EVM'de kodu çalıştırmadan önce, gazın üst sınırı önceden ayarlanmalıdır. Gaz bittiğinde, kod çalışmayı durduracak ve zincirde herhangi bir güncelleme yapılmadan durum geri alınacaktır.

EVM Uyumluluğu

Kullanıcılar arttıkça Ethereum Mainnet, sıkışık ağlar ve yüksek gas ücretleri gibi birçok sorunla karşılaşır. Ethereum'un tasarımıyla sınırlı olan bu sorunlar kökten çözülemez.

Son yıllarda, daha düşük gaz ücretleri ve daha hızlı ağlara sahip birçok yeni halka açık zincir ve Ethereum'u ölçeklendirmek için tasarlanmış Katman 2 zincirleri var. Bu zincirlerin tümü, daha iyi temel tasarımlara sahip olduğu söylenen ve çeşitli dApp'ler oluşturmak için kullanılabilen akıllı sözleşme zincirleridir.

Bu zincirler, Ethereum ekosisteminin fazla taleplerini üstlenir ve Ethereum'un baskın statüsüne meydan okur. Ethereum muadillerinin EVM ile uyumlu olması gerekli midir? Bu ayrışma ile ilgili olarak, bu zincirler iki kategoriye ayrılır: EVM uyumlu zincirler ve EVM olmayan zincirler.

EVM ile uyumlu genel zincirler

Son zamanlarda, Katman 1 halka açık zincirleri birbiri ardına ortaya çıkıyor. Ethereum ile paralel çalışan zincir üstü bir ekosistemi yeniden inşa etmek, Ethereum'un mevcut eksikliklerinin üstesinden gelebilse de, eksiksiz bir ekosistem oluşturmak ve sıfırdan bir dApp geliştirmek için önemli insan kaynakları gerektirir. Nitelikli programcıların eksikliği, yeni halka açık zincir ekosistemlerinin büyümesini engellemektedir. Gelişmemiş bir ekosisteme sahip bir halka açık zincir için, Ethereum'dan bir kullanıcıyı kısa sürede çekmek zor olacaktır.

Bu göz önüne alındığında, bazı genel zincirler EVM ile uyumlu olacak şekilde tasarlanmıştır. Başlangıçta Ethereum üzerinde çalışan DApp'ler, kaynak kodunda yalnızca küçük değişikliklerle tamamen EVM uyumlu genel zincirlere geçirilebilir. Yalnızca geliştirme kaynaklarının kullanımını en üst düzeye çıkarmakla kalmaz, aynı zamanda kullanıcılara Ethereum'dan yeni bir zincire geçiş sürecinde daha iyi bir deneyim sağlar.

Bununla birlikte, EVM uyumluluğu kaçınılmaz olarak bazı sorunları da beraberinde getirmiştir. EVM kurallarıyla sınırlı olan birçok EVM uyumlu zincir, homojenleştirme olmadan inovasyonun nasıl sağlanacağı konusunda bir sorunla karşılaşır. Bununla birlikte, EVM olmayan zincirler bu kuralları çiğneyebilir ve sıfırdan yeni bir kurallar dizisi geliştirebilir, böylece temelde inovasyonu başarabilir.

Şu anda, BSC, Avalanche, Fantom, Tron, Celo vb. gibi ana akım halka açık zincirlerin %70'inden fazlası EVM ile uyumludur. Geliştiricilerin daha yüksek performans ve daha düşük gaz ücretleri için dApp'ler geliştirmesi veya bu zincirlerde Ethereum uygulamaları dağıtması, dolayısıyla kullanıcı deneyimini iyileştirmesi zor olmayacaktır.

Diğer bazı halka açık zincirler EVM değildir ancak Sol, Terra vb. gibi kendi sanal makinelerini geliştirmiştir. EVM ile uyumlu olmasa da bu zincirler, yenilikçi tasarımları ve mükemmel zincir üstü performansları ile bir grup sadık kullanıcı ve kurumu kendine çekmiştir. Örneğin, son zamanlarda tüm dünyada popüler olan iki blockchain oyunu, Step N ve Let me Speak, Sol zincirine dayanıyor ve dünyanın dört bir yanından hevesli hayranların katılımını sağladı.

Özellikle EVM uyumlu zincirler, EVM olmayan zincirlerle bir arada bulunabilir. Bazı EVM olmayan zincirler de EVM ile uyumlu olmaya başlar. Bunu başarma süreci, kodu değiştirmek için kapsamlı çabalar gerektirdiğinden zorlu olacaktır. Bunun bir örneği, geliştiricilerin EVM üzerinde dApp'ler oluşturmasına olanak tanıyan Neon'u başlatan Sol'dur.

Şekil: Genel zincirlerin EVM uyumluluğu

EVM ile uyumlu Katman 2 zincirleri

Ethereum'un ölçekleme çözümü olarak Layer 2, rakibi yerine Ethereum'u tamamlayıcı niteliktedir. Katman 2 zincirlerinin tümü EVM uyumludur ve Katman 1'den daha yüksek bir uyumluluk düzeyine sahiptir. Layer 2'nin EVM ile uyumlu olması için iki çözümümüz var: EVM uyumluluğu ve EVM denkliği.

İlk Katman 2 zincirleri, Katman 1 zincirlerinin EVM uyumluluğuna benzer şekilde EVM uyumludur. Ethereum Layer 1 üzerindeki akıllı sözleşmeler, bazı değişiklikler yapılarak Layer 2 üzerinde devreye alınabilir. Örneğin, Optimism tarafından başlatılan Unipig, tamamen Uniswap kodunun yeniden inşasıdır. Katman 2'de Uniswap olarak kabul edilir.

EVM uyumluluğuna ilişkin bazı sınırlamalar vardır. EVM uyumlu bir zincir üzerinde akıllı sözleşmeler geliştirirken, bazı EVM tabanlı geliştirme araçları ve çerçeveleri kullanılamayabilir. Ek olarak, başlangıçta Katman 1'de düzenlenen akıllı sözleşmeler için, akıllı sözleşmelerin EVM uyumlu blok zincirinde sorunsuz çalışabilmesi için geliştiricilerin hala bazı ayarlamalar yapması gerekiyor.

EVM denkliği, geliştiricilere Katman 2'de akıllı sözleşmeler geliştirirken Ethereum Katman 1'de olduğu gibi tamamen aynı deneyimi vermeyi amaçlar. Bu, Layer2 geliştiricilerine büyük ölçüde fayda sağladı, geliştirme verimliliğini daha da artırdı ve EVM uyumluluğu temelinde geliştirme ve kod bakımı maliyetlerinden tasarruf sağladı.

Şu anda Artbitrum, Optimism ve Metis gibi ana akım Katman 2 çözümleri EVM denkliğini elde etti. EVM eşdeğerliği, ölçeklendirmenin neden olduğu geliştirme ve geçiş maliyetlerini en aza indirmek amacıyla Ethereum'un özelliklerini Katman 2'ye daha iyi aktarabilir. EVM denkliğinin gelecekte Katman 2'nin ana standardı haline gelmesi bekleniyor ve birçok Katman 2 çözümünün EVM denkliği etrafında kıyasıya bir yarışa girmesi bekleniyor.

Çözüm

EVM, Ethereum'un çalışmasını sağlayan çekirdektir. Ethereum'un hakimiyetinin kurulmasıyla birlikte, büyük halka açık zincirler ve Katman 2 zincirleri, EVM'nin altında yatan tasarım konseptini takip etti veya onunla uyumlu hale geldi. Bu nedenle, EVM kesinlikle tüm blok zinciri üzerinde derin bir etkiye sahip olmuştur. EVM'nin kendisi, yeni zincirlerin EVM ile uyumlu olmasını zorlaştıran pek çok sorunla birlikte gelir. Buna rağmen, geliştiriciler iyileştirmeler yapmak için çok çalışıyorlar, bu da diğer birçok halka açık zincirin ortaya çıkmasını büyük ölçüde kolaylaştırdı.

作者: Pigfly
译者: Binyu
文章审校: Edward, Ashley, Cecilia
* 投资有风险,入市须谨慎。本文不作为Gate.io提供的投资理财建议或其他任何类型的建议。
* 在未提及Gate.io的情况下,复制、传播或抄袭本文将违反《版权法》,Gate.io有权追究其法律责任。
即刻开始交易
注册并交易即可获得
$100
和价值
$5500
理财体验金奖励!