რა არის Ethereum ვირტუალური მანქანა (EVM) და როგორ მუშაობს იგი?

ეთერი (ETH), რომელიც სიდიდით მეორე კრიპტოვალუტაა საბაზრო კაპიტალიზაციის მხრივ, პოპულარულია კრიპტოვალუტის ინვესტორებში მისი მშობლიური ETH ტოკენის გამო. თუმცა, მისი მშობლიური Solidity პროგრამირების ენა და Ethereum ვირტუალური მანქანა (EVM) არის ინსტრუმენტული როლი დეველოპერების საზოგადოებისგან მიღებული სიამოვნებისთვის. ფაქტობრივად, Ethereum ბლოკჩეინი აგრძელებს მოზიდვას დეცენტრალიზებული აპლიკაცია (DApp) დეველოპერები მისი მოქნილობის, დეველოპერის ხელსაწყოების ფართო სპექტრის და პლატფორმის მომხმარებელთა დიდი ბაზის გამო.

EVM, რომელიც ქმნის ბლოკჩეინის არქიტექტურის ბირთვს, არის პროგრამა, რომელიც ახორციელებს მის აპლიკაციის კოდს ან ჭკვიანი კონტრაქტები, როგორც მათ უწოდებენ, მათთვის გაშვების დროის გარემოს უზრუნველყოფს, რომელიც მუშაობს Ethereum ქსელის თავზე. უფრო მეტიც, EVM არის Turing-ის დასრულება და ამგვარად შეუძლია გაუშვას ნებისმიერი პროგრამა, რომელიც კოდირებულია პროგრამირების ნებისმიერ ენაზე, რითაც დეველოპერებს საშუალებას აძლევს ადვილად შექმნან მორგებული ჭკვიანი კონტრაქტები და DApps მზარდი განვითარებისთვის. Web3 სივრცეში. 

ამ მნიშვნელოვანი ფუნქციების გარდა, EVM-ს აქვს წვდომა ქსელის ყველა კვანძზე, ამუშავებს ჭკვიანი კონტრაქტების შესრულებას და ეფექტურად ამუშავებს ყველა ტრანზაქციას Ethereum-ის ბლოკჩეინზე, რაც მას დღეს არსებულ ერთ-ერთ ყველაზე ძლიერ ვირტუალურ მანქანად აქცევს.

რა არის Ethereum ვირტუალური მანქანა (EVM) და როგორ მუშაობს იგი?

კონცეპტუალირებულია 2013 წელს პროგრამისტის მიერ ვიტალიკ ბუტერნიEthereum-ის ქსელი თავის ფენომენალურ წარმატებას, როგორც DApp-ის დეველოპერებისთვის უპირატეს ბლოკჩეინს, ევალება Ethereum ვირტუალურ მანქანას (EVM), რომელიც შეიქმნა გევინ ვუდის მიერ Ethereum-ში მუშაობის დროს. დაწერილი C++-ში და LLVM Project შემდგენელის გამოყენებით, EVM არის სპეციალური მდგომარეობის მანქანა, რომელიც მუშაობს მუდმივად და რომლის უცვლელი ოპერაციები განსაზღვრავს თითოეული ბლოკის მდგომარეობას Ethereum ბლოკჩეინში. 

EVM არა მხოლოდ არეგულირებს, თუ რა შეუძლიათ ან არ შეუძლიათ კვანძებს გააკეთონ Ethereum ბლოკჩეინის მიერ შენახული განაწილებული წიგნი, არამედ განსაზღვრავს მდგომარეობის შეცვლის კონკრეტულ წესებს ბლოკიდან ბლოკში. ეს უკანასკნელი ფუნქციონირება არის ის, რაც საშუალებას აძლევს გონიერი კონტრაქტის ფუნქციონირებას, რომლითაც ცნობილი გახდა Ethereum.

იმის გასაგებად, თუ რას აკეთებს Ethereum ვირტუალური მანქანა, უნდა გადახედოთ თითოეულ სხვადასხვა ფუნქციას, რომელიც მას ემსახურება Ethereum ქსელის შეუფერხებლად მუშაობის უზრუნველსაყოფად. ყოველი შეყვანისთვის, რომელსაც ის იღებს, EVM აწარმოებს გამოსავალს, რომელიც დეტერმინისტული ხასიათისაა და მიჰყვება მათემატიკურ ფუნქციას უმარტივესი გაგებით. 

ფუნქციონირებს როგორც სტეკის აპარატი, რომელიც უბიძგებს გარდამავალ მნიშვნელობებს დასაშვებ დასტაზე და უკან, EVM-ს აქვს 1024 ელემენტის სიღრმე, თითოეული მათგანი 256-ბიტიანი სიტყვაა. ის ასევე ინახავს დროებით მეხსიერებას ბაიტის მასივის სახით, რომელიც იცვლება ორ ტრანზაქციას შორის Ethereum blockchain-ზე. შედგენილი სმარტ კონტრაქტის კოდები შესრულებულია EVM-ის მიერ 140 სტანდარტული ოპკოდის კოლექციის სახით, ხოლო ბლოკჩეინ-სპეციფიკური სტეკის ოპერაციები ასევე ხორციელდება მის მიერ.

Ethereum ვირტუალური მანქანის სქემები

ამრიგად, EVM-ს აქვს მანქანის მდგომარეობა, რომელიც ბუნებით არასტაბილურია ნებისმიერი ტრანზაქციის დამუშავებისას და გლობალური ან მსოფლიო მდგომარეობა, რომელიც შეიცავს ინფორმაციას Ethereum-ის ბლოკჩეინზე შენახული სხვადასხვა ანგარიშების შესახებ. ყველა ქმედება რეგულირდება EVM კოდით, რომელმაც თავისთავად გაიარა რამდენიმე გამეორება 2015 წელს Ethereum ქსელის გაშვების შემდეგ, რამაც გამოიწვია ამჟამად გამოყენებული EVM-ის სხვადასხვა იმპლემენტაციის არსებობა.

ფაქტობრივად, EVM პასუხისმგებელია აბსტრაქციის დონის შენარჩუნებაზე ათასობით Ethereum კვანძსა და შემსრულებელ კოდს შორის, მოქმედებს როგორც ფუნქცია, რომელიც აწვდის თანმიმდევრულ შედეგებს კლიენტებისთვის ან კვანძებისთვის ბევრი დეტალის გამჟღავნების გარეშე.

რა არის Ethereum ვირტუალური მანქანის (EVM) დანიშნულება?

EVM საიმედოდ ამუშავებს ყველა აპლიკაციას, რომელიც მუშაობს Ethereum ქსელში, ყოველგვარი მნიშვნელოვანი შეფერხების გარეშე. დეველოპერებისთვის, EVM მოქმედებს როგორც ყოვლისმომცველი პროგრამა, რომელიც აწარმოებს უფრო მცირე შესრულებად პროგრამებს, რომლებიც ცნობილია როგორც ჭკვიანი კონტრაქტები Ethereum-ში, ამავდროულად აძლევს მათ თავისუფლებას დაწერონ ეს ჭკვიანი კონტრაქტები პროგრამირების ენების მრავალფეროვნება მათ შორის Solidity, Vyper, Python და Yul, სხვათა შორის.

EVM-ის მიერ შემოთავაზებული მოქნილობის გამო, Ethereum ბლოკჩეინმა შექმნა ათასობით DApps-ში. დეცენტრალიზებული ფინანსები (DeFi) მდე არამგრძნობიარე ნიშანი (NFT) სივრცე. თითოეული ეს DApp და ჭკვიანი კონტრაქტი, რომლიდანაც ისინი მზადდება, გარდაიქმნება ბაიტეკოდად, რომელიც იკვებება EVM-ში და ნაწილდება Ethereum ქსელის ყველა კვანძში. როდესაც ჭკვიანი კონტრაქტი განლაგებულია, EVM პასუხისმგებელია ყველა კვანძთან კომუნიკაციაზე და კონსენსუსის მიღწევის დროს მდგომარეობის ცვლილებების განხორციელებაზე.

შეიძლება ითქვას, რომ EVM ჩასმულია ყველა Ethereum კვანძში, რათა შეასრულოს ჭკვიანი კონტრაქტები ბაიტეკოდის გამოყენებით ბაზისური პროგრამირების ენის ნაცვლად, რითაც იზოლირებულია ფიზიკური მასპინძელი კომპიუტერი მანქანის კოდიდან, რომელზედაც მუშაობს Ethereum.

Ethereum ვირტუალური მანქანის (EVM) უპირატესობები

EVM-ის ფუნქციონირების მეთოდის გათვალისწინებით, დეველოპერებს შეუძლიათ შეასრულონ კოდი ქსელის დანარჩენ ნაწილზე მის ზემოქმედებაზე ან კვანძის რომელიმე კომპიუტერზე განთავსებული მონაცემების ან პერსონალური ფაილების თამაშის შესაძლებლობის გარეშე. 

გარდა ამისა, მათ შეუძლიათ აწარმოონ რთული გონიერი კონტრაქტები სხვადასხვა გამოთვლით გარემოზე განაწილებული კონსენსუსით. ეს უზრუნველყოფს, რომ ერთი კვანძის წარუმატებლობას არ ჰქონდეს რაიმე უარყოფითი გავლენა DApp-ის ან ჭკვიანი კონტრაქტის მუშაობაზე, ვინაიდან EVM კოდი ყველა კვანძში იგივე რჩება. უფრო მეტიც, ვინაიდან ანგარიშის მონაცემები EVM-ში გლობალურ დონეზე ინახება, დეველოპერები იდეალურად თვლიან მორგებული გონიერი კონტრაქტის კოდის დასაწერად და განსხვავებული DApp-ების შესაქმნელად, რომლებსაც შეუძლიათ წვდომა ამ გლობალურ მონაცემთა ნაკრებში და გამოიტანონ საიმედო შედეგები. 

შედეგის სიწმინდე არის ის, რაც EVM-ს, კერძოდ, და Ethereum-ის ბლოკჩეინს ზოგადად კარგად აწყობს DApps-ისა და ჭკვიანი კონტრაქტის Ethereum ეკოსისტემის მდგრადი გაფართოებისთვის. ამას დაამატეთ სტანდარტული კოდების ბიბლიოთეკა, რომელიც ხელმისაწვდომია დეველოპერებისთვის, EVM თავსებადი მზარდი რაოდენობა. ფენა-2 ბლოკჩეინები და შესაძლებელია EVM გამოყენების პოტენციური შემთხვევების დიდი რაოდენობა და ადვილი მისახვედრია, რატომ არის EVM სასურველი პლატფორმა ვებ3 განვითარება.

Ethereum ვირტუალური მანქანის (EVM) ნაკლოვანებები

EVM-ის მიერ შემოთავაზებული მრავალი უპირატესობის მიუხედავად, არსებობს გარკვეული უარყოფითი მხარეები, რომლებიც უნდა გაითვალისწინონ დეველოპერებმა და მეწარმეებმა, რომლებიც აშენებენ Ethereum-ზე. მათგან ყველაზე მნიშვნელოვანია ტრანზაქციის მაღალი საკომისიო ან გაზის ხარჯები, რომლებიც დაკავშირებულია ჭკვიან კონტრაქტთან Ethereum ქსელში. 

გადახდილი ETH-ში, ეს საფასური განსხვავდება კონტრაქტის სირთულისა და ქსელის გადატვირთულობის მიხედვით, შესრულების დროს, რაც აუცილებელს ხდის დეველოპერებისთვის და მეწარმეებისთვის. ფასი მათი მომსახურების შესაბამისად. გარდა ამისა, ვინაიდან Solidity არის ყველაზე სასურველი ენა EVM-ზე კოდირებისთვის, ეს ნიშნავს, რომ დეველოპერებს უნდა ჰქონდეთ ადეკვატური გამოცდილება და გააჩნდეთ ტექნიკური ექსპერტიზის მცირე რაოდენობა, რათა შექმნან ეფექტური ჭკვიანი კონტრაქტები მისი გამოყენებით. 

ეს უკანასკნელი მნიშვნელოვანია, რადგან ნებისმიერი დამატებითი გამოთვლების მოთხოვნა გამოიწვევს გაზის უფრო მაღალ ხარჯებს და საბოლოო ჯამში საზიანო იქნება პროექტის წარმატებისთვის. თუ დეველოპერები აირჩევენ კოდირებას სხვა ენების გამოყენებით, ისინი ფრთხილად უნდა იყვნენ კოდში ნებისმიერი თანდაყოლილი გამეორების გადაჭრაში, რადგან EVM მაინც გააგრძელებს მათ შედგენას. მიუხედავად იმისა, რომ ჭკვიანი კონტრაქტების განახლება შესაძლებელია მოგვიანებით ეტაპზე, მას თან ახლავს უსაფრთხოების რისკები, რომლებიც დაკავშირებულია შუამავალი ჭკვიანი კონტრაქტის შექმნასთან, რომელიც მიუთითებს ორიგინალური ჭკვიანი კონტრაქტის მისამართზე.

EVM-ების მომავალი

EVM-ის მიერ ბლოკჩეინის ეკოსისტემაში განხორციელებული რევოლუციური ცვლილებების მიუხედავად, კოდის წაკითხვისა და შესრულების ეს ტექნოლოგია იხვეწება რიგი ბლოკჩეინის პროექტებით. 

ერთად ჯვარედინი ჯაჭვური თავსებადობა დეველოპერებისთვის ყველაზე მნიშვნელოვანი ასპექტია, მრავალი EVM-თან თავსებადი ბლოკჩეინი დაფუძნებულია, უმეტესობა გვთავაზობს დაბალ გაზს და ტრანზაქციის უფრო სწრაფ სიჩქარეს, ვიდრე Ethereum პროტოკოლი. შედეგად, ამ ბლოკჩეინებს ახლა შეუძლიათ შეუფერხებლად იმოქმედონ Ethereum მომხმარებლებთან და ხელს უწყობენ სახსრების გადარიცხვას საკუთარ ქსელებში. ბლოკჩეინის ხიდები.

თუმცა, როდესაც Ethereum პროტოკოლმა წარმატებით დაასრულა შერწყმა 2022 წლის სექტემბერში, შემდეგი სამიზნე არის გადატანა EVM Ethereum WebAssembly-მდე (eWASM). შექმნილია უაღრესად მოდულარული და პლატფორმისგან დამოუკიდებელი, eWASM რეკლამირებულია, როგორც Ethereum პროტოკოლის შემდეგი თამაშის შემცვლელი და შეიძლება მოტივაცია გაუწიოს სხვა ბლოკჩეინებს, გამოიყენონ ეს გაშვებული გარემო ჭკვიან კონტრაქტებისთვისაც. თუმცა, ჩაანაცვლებს თუ არა eWASM-ები EVM-ს, როგორც ჭკვიანი კონტრაქტების ყველაზე სანდო მექანიზმს, არის კითხვა, რომელზეც მხოლოდ დრო გასცემს პასუხს.