Sanal Makine (VM) Nedir?
Sanal Makine (VM), genellikle sanal bilgisayarlar veya yalnızca kod olarak var olan fiziksel sunuculardaki yazılım sisteminin içerisinde yer alan fiziksel değil sanal ortam bilgisayarları olarak düşünülmektedir. Çalışma mekanizması olarak dizüstü bilgisayar, akıllı telefon ya da sunucu gibi fiziksel dünya nesnelerinin sanal yansıması olarak değerlendirebiliriz.
Sanal makinelerin bellek, depolama alanı ve işlemcisi (CPU – Cental Processing Unit) mevcuttur. Fiziksel değil, simülatif organizasyona sahiptirler. Bu nedenle sanal makineler birçok farklı işletim sistemi, donanım ve sunucu üzerinde çalışabilirler. Bu da onları merkeziyetsiz bir ekosistem için kullanıma en elverişli araç haline getirir.
Örneğin, tek bir sunucuda 3, 6 ya da 10 tane sanal makine çalışabilir, bu noktada önemli olan sunucunun destekleyici kaynaklarının genişliğidir. Buna bağlı olarak kaynakları sınırlı sunucularda aynı anda çoklu çalışan sanal makinelerin performans skalasında düşüş olabilir.
VM’ler esnek kullanım imkanı ve taşınabilirlikleri sayesinde maliyet tasarrufu, çeviklik ve hız, daha düşük kesinti süresi, ölçeklenebilirlik, güvenlik gibi birçok avantaj sağlayan yazılımsal sistemdir.
Ethereum Sanal Makinesi (EVM) Nedir?
Ethereum Virtual Machine Türkçe adıyla "Ethereum Sanal Makinesi (EVM)", içerisinde birçok proje barındıran merkeziyetsiz bir bilgisayar mekanizmasına benzetebileceğimiz, Ethereum'un tüm işletim yapısının temelini oluşturan bir parçadır. Ethereum'un tüm işletim yapısının temelini oluşturan bu algoritma akıllı sözleşme dağıtımı ve yürütme mekanizmasını kontrol etme görevini yerine getirir. EVM'nin görevi, kullanıcıların dağıtılmış defterde üzerinde sınırlı sorunlarla karşılaşmasını sağlamak için blokzincire bir dizi ekstra işlevsellik dağıtmaktır.
Geliştiricilerin Ethereum üzerinde merkezi olmayan uygulamalar (DApp) oluşturmak için kullanabilecekleri yazılım algoritması hizmeti verir. EVM, aynı anda birçok uygulamanın geliştirilmesine ve bunların diğer işlemleri etkilemeden aynı blokzincir ağı üzerinde yürütülebilmesine olanak tanır. Ethereum blokzincirinde çalışmakta olan EVM, kendi kalıcı veri deposuna sahip milyonlarca yürütülebilir nesne içeren küresel bir merkezi olmayan bilgisayar olarak da düşünülebilir. Örnek olarak EVM, Microsoft'un .NET Framework sanal makineleri ve Java Sanal Makinesi (JVM) ile benzerlik gösterir.