Võtmepunktid
Virtuaalmasinad (VM-id) võimaldavad käitada erinevaid operatsioonisüsteeme või rakendusi samas seadmes ilma lisariistvarata.
Virtuaalmasinad sobivad suurepäraselt uue tarkvara turvaliseks testimiseks, muude süsteemide katsetamiseks või riskantsete programmide isoleerimiseks.
Virtuaalmasinad, näiteks Ethereumi virtuaalmasin (EVM), võimaldavad nutilepingutel ja detsentraliseeritud rakendustel (DApp-idel) ülemaailmses arvutivõrgus usaldusväärselt töötada.
Kuigi virtuaalmasinad pakuvad paindlikkust ja kontrolli, võivad need hõlmata kompromisse seoses jõudluse, ressursikasutuse ja keerukusega.
Sissejuhatus
Kas sul on kunagi olnud vaja käitada Windowsi MacBookis või testida Linuxi rakendust ilma operatsioonisüsteemi muutmata või eraldi arvutit ostmata? Virtuaalmasinad võimaldavad sul seda teha, luues isoleeritud keskkonna, kus erinevad operatsioonisüsteemid ja rakendused saavad turvaliselt töötada. Neid kasutatakse laialdaselt ka plokiahelavõrkudes nutilepingute ja detsentraliseeritud rakenduste (DApp-ide) toetamiseks.
Mis on virtuaalmasin?
Virtuaalmasin on nagu arvuti, mille saad seadistada vaid mõne klõpsuga ja mis ei vaja lisariistvara. Sa saad installida operatsioonisüsteemi, salvestada faile, käivitada rakendusi ja luua internetiühenduse, kuid sa teed seda oma olemasoleva arvuti ehk hostarvuti sees.
Sinu hostsüsteem teeb taustal ära raske töö, pakkudes oma mälu, töötlemisvõimsust ja salvestusruumi, et virtuaalmasin saaks sujuvalt töötada. See on eriti kasulik siis, kui pead kasutama tarkvara, mis on saadaval ainult teises operatsioonisüsteemis.
Kuidas virtuaalmasinad tegelikult toimivad?
Tagaplaanil käitab seda kõike tarkvara, mida nimetatakse hüperviisoriks. Hüperviisor võtab sinu arvuti füüsilised ressursid, nagu protsessori, muutmälu (RAM) ja salvestusruumi, ning jagab need nii, et neid saab kasutada korraga mitu virtuaalmasinat.
On kahte peamist tüüpi hüperviisoreid:
1. tüüp (tühi metall) – need paigaldatakse otse riistvarale ja neid kasutatakse sageli andmekeskustes või pilveplatvormidel. Need on loodud jõudluse ja tõhususe tagamiseks;
2. tüüp (majutatud) – need töötavad sinu tavalise operatsioonisüsteemi peal (nagu rakendused) ning sobivad testimiseks ja arendamiseks.
Kui virtuaalmasin on seadistatud, saad selle käivitada nagu päris arvuti ja installida tarkvara, sirvida veebis või luua rakendusi.
Miks kasutatakse virtuaalmasinat?
1. Uute operatsioonisüsteemide testimine
Virtuaalmasinaga saad testida erinevaid operatsioonisüsteeme ilma et peaksid oma põhiarvutis muudatusi tegema. See on justkui uue süsteemi katsetamine turvalises eraldi ruumis.
2. Riskantse tarkvara isoleerimine
Kas sul on vaja avada faili, milles sa kindel pole, või testida tundmatut rakendust? Selle käitamine virtuaalmasinas hoiab sinu arvuti kaitstuna, nii et pahavara või süsteemikrahh sinu põhiarvutit ei mõjuta.
3. Aegunud või kättesaamatu tarkvara käitamine
Mõned programmid töötavad ainult vanemates süsteemides, näiteks Windows XP-s. Virtuaalmasin suudab selle keskkonna taasluua, võimaldades sul jätkata sellise tarkvara kasutamist, mis moodsates seadmetes ei pruugi töötada.
4. Koodi arendamine ja testimine mitmel platvormil
Virtuaalmasinad muudavad koodi testimise operatsioonisüsteemides arendajate jaoks lihtsamaks ja simuleerivad uute rakenduste käitumist eri keskkondades.
5. Pilve toetamine
Paljud pilvteenused (näiteks AWS, Azure ja Google Cloud) on ehitatud virtuaalmasinatele. Pilvepõhise juhtumi käivitamisel paned virtuaalmasina tööle kaugandmekeskuses, mis on valmis majutama veebisaite, rakendusi või andmebaase.
Kuidas kasutavad virtuaalmasinaid plokiahelavõrgud?
Kui traditsioonilised virtuaalmasinad on isoleeritud aedikud, toimivad plokiahela virtuaalmasinad mootorina, mis käitab nutilepinguid plokiahela võrkudes. Ethereumi virtuaalmasin (EVM) võimaldab arendajatel kirjutada nutilepinguid sellistes keeltes nagu Solidity, Vyper ja Yul ning juurutada neid Ethereumis ja teistes EVM-iga ühilduvates võrkudes. EVM tagab, et võrgu iga sõlm järgib nutilepingute loomisel või nendega suhtlemisel samu reegleid.
Plokiahelavõrgud rakendavad oma virtuaalmasinatüüpe, lähtudes disainieesmärkidest. Mõned keskenduvad kiirusele ja skaleeritavusele, teised aga püüavad olla arendajate jaoks turvalisemad või paindlikumad. Sellised võrgud nagu NEAR ja Cosmos kasutavad WebAssembly’l (WASM) põhinevaid virtuaalmasinaid, mis toetavad mitmes programmeerimiskeeles kirjutatud nutilepinguid.
Teised plokiahelavõrgud, näiteks Sui, kasutavad MoveVM-i, mis täidab Move’i keeles kirjutatud nutilepinguid. Solana plokiahel kasutab kohandatud käituskeskkonda, mida sageli nimetatakse Solana virtuaalmasinaks (SVM). See on loodud tehingute paralleelseks töötlemiseks ja mahuka võrgutegevuse haldamiseks.
Virtuaalmasinad tegevuses
Kuigi sa neid ei näe, töötavad virtuaalmasinad tagaplaanil iga kord, kui sa detsentraliseeritud rakendustega (DApp-idega) suhtled.
Kui kasutad tokenite vahetamiseks detsentraliseeritud rahanduse (DeFi) rakendust, näiteks Uniswapi, siis haldavad sinu tehinguid nutilepingud, mida EVM-is käitatakse.
Kui vermid NFT-d, käitab virtuaalmasin koodi, mis jälgib, kellele iga NFT kuulub. Ostu või ülekande tegemisel uuendab virtuaalmasin andmeid, et NFT omandiõigus oleks täpne.
Kui kasutad 2. kihi rollup’eid, võib sinu tehinguid teha spetsiaalne virtuaalmasin, näiteks zkEVM. zkEVM-id võimaldavad zk-rollup’idel käivitada nutilepinguid, kasutades samal ajal ära teadmise puudumise tõendeid (ZKP-sid).
Virtuaalmasinate piirangud
1. Jõudluse lisakulud: virtuaalmasinad lisavad riistvara ja käivitatava koodi vahele lisakihi. See võib protsessi aeglustada või nõuda rohkem arvutusressurssi, võrreldes rakenduste käitamisega otse füüsilises masinas.
2. Tegevuse keerukus: virtuaalmasinate seadistamine (eriti pilvetaristus või plokiahelavõrgus) ja värskendamine nõuab suurt jõupingutust. See võtab aega ning eeldab sageli eritööriistade ja -teadmiste olemasolu.
3. Ühilduvus: nutilepingud on sageli loodud konkreetse virtuaalmasina keskkonna jaoks. Ethereumis nutilepingute jaoks kirjutatud kood tuleb ümber kirjutada või kohandada, et see töötaks ka teistes mitteühilduvates plokiahelates, näiteks Solanas. See tähendab, et arendajad peavad kulutama lisaaega ja -vaeva, kui nad soovivad sama rakendust mitmes keskkonnas käitada.
Lõppmärkused
Virtuaalmasinatel on tähtis roll nii tavaarvutite kui ka plokiahelasüsteemide toimimises. Need võimaldavad käitada erinevaid operatsioonisüsteeme, testida turvaliselt tarkvara ja kasutada sama riistvara mitme ülesande jaoks.
Virtuaalmasinaid kasutatakse ka plokiahelavõrkudes, et toetada nutilepinguid ja detsentraliseeritud rakendusi. Isegi kui sa pole ekspert, annab virtuaalmasinate tööpõhimõtte tundmine sulle parema ettekujutuse sellest, mis meie DeFi tööriistade ja platvormide taustal toimub.
Lisalugemist
Lahtiütlus. See sisu esitatakse olemasoleval kujul ainult üldiseks teabeks ning harivatel eesmärkidel, ilma igasuguse esinduse või garantiita. Seda ei tohiks tõlgendada finants-, õigus- või muu professionaalse nõustamisena ega konkreetse toote või teenuse ostmise soovitusena. Peaksid küsima nõu asjaomastelt professionaalsetelt nõustajatelt. Selles artiklis nimetatud tooted ei pruugi sinu piirkonnas saadaval olla. Kui artikli on koostanud kolmandast osapoolest kaastöötaja, pane tähele, et väljendatud seisukohad kuuluvad sellele kolmandast osapoolest kaastöötajale ega pruugi kajastada Binance’i Akadeemia seisukohti. Lisateabe saamiseks loe meie täielikku lahtiütlust. Digivarade hinnad võivad kõikuda. Sinu investeeringu väärtus võib langeda või tõusta ning sa ei pruugi investeeritud summat tagasi saada. Sina vastutad ainuisikuliselt oma investeerimisotsuste eest ja Binance’i Akadeemia ei vastuta võimalike kahjude eest. Seda materjali ei tohiks tõlgendada finants-, õigus- või mõne muu professionaalse nõuandena. Lisateabe saamiseks loe meie kasutustingimusi ja riskihoiatust.