ماشین مجازی اتریوم(EVM) چیست؟
ماشین مجازی اتریوم(EVM) چیست؟
ماشین مجازی اتریوم(EVM) در واقع یک فضای مجازی محصور و بسیار قدرتمند است که در گرههای کامل اتریوم تعبیه شده و وظیفهی اجرای کد قراردادهای هوشمند را بر عهده دارد. قراردادها معمولا در زبانهای سطح بالاتری نوشته میشوند، زبانهای برنامهنویسی همچون سولیدیتی(Solidity) و سپس به کدهای ماشین مجازی اتریوم کامپایل میگردند.
ماشین مجازی اتریوم اساسا یک سطح جدایی بین «کدهای اجرایی» و «دستگاه اجرا کننده» ایجاد میکند. این لایهی جداکنندهی ایزوله برای توسعهی قابلیتهای جدید نرمافزاری، جدا بودن نرمافزارها از یکدیگر و همچنین اطمینان از جدا بودن از هاست مورد استفاده قرار میگیرد.
این بدان معناست که کدهای ماشین، فایلهای سیستم و یا هر فرایند دیگری که مربوط به رایانهی میزبان باشد، کاملا از شبکه مجزا بوده و برای بررسی مشکلات احتمالی و آزمایشات مختلف، به صورت ایزوله کار میکند. تمام گرههای شبکهی اتریوم یک نمونه از EVM را اجرا میکنند؛ این ماشین مجازی به آنها اجازه میدهد در مورد اجرای دستورالعملها با یکدیگر به توافق برسند.
همخوانی با تورینگ
ماشین مجازی اتریوم با تورینگ همخوانی کامل داشته یا به اصطلاح Turing complete است. این بدان معناست که سیستم قادر است مراحل منطقی یک عملکرد محاسباتی را به خوبی بر عهده بگیرد. زبان برنامهنویسی جاوا اسکریپت(JavaScript) که غالباً به عنوان زبان برنامهنویسی اینترنت شناخته میشود، با تورینگ همخوانی دارد.
ماشینهای مجازی اتریوم با موفقیت در زبانهای برنامهنویسی مختلف از جمله سیپلاسپلاس(++C)، جاوا، جاوا اسکریپت، پایتون(Python)، روبی و بسیاری دیگر اجرا شده است.
ماشین مجازی یکی از موارد ضروری شبکهی اتریوم محسوب میشود که برای رسیدن به اجماع در سیستم اتریوم قابل استفاده است. وجود ماشین مجازی به کاربران اجازه میدهد تا بدون نیاز به اعتمادسازی، کدهای مورد نظر خود را در یک اکوسیستم بسته اجرا کنند. در این حالت خروجی کدها تضمین شده و قطعی خواهد بود؛ مانند اجرای قراردادهای هوشمند.
برگشت به صفحهی اصلی کریپتوپدیا