ماشین مجازی اتریوم (EVM) پروتکلی است که مسئولیت اجرای قراردادهای هوشمند و محاسبه وضعیت شبکه اتریوم را بر عهده دارد. این در بالای لایه شبکه سختافزار و گره اتریوم قرار دارد، قراردادهای هوشمندی را اجرا میکند که قابل خواندن توسط رایانهها هستند. در ابتدا برای اتریوم توسعه یافت، بسیاری از زنجیرهها با EVM سازگار شدند.
ویژگی های EVM چیست؟
کامل بودن تورینگ
کامل بودن تورینگ مشخص می کند که کامپیوترها برای حل مسائل و محاسبه داده ها شرطی شده اند. این فرضیه توسط آلن تورینگ مطرح شد، زمانی که او فکر کرد که ماشین ها چه توانایی هایی دارند و آنها نمی توانند مانند انسان ها فکر کنند یا اطلاعات را پردازش کنند.
ماشین حالت توزیع شده
اتریوم فقط یک دفتر کل نیست که همه سوابق را نگه می دارد. با توجه به کاغذ سفید آن، در ابتدا برای قراردادهای هوشمند و برنامه های کاربردی طراحی شده است. در حالی که به عنوان یک دفتر کل نیز عمل می کند، کل وضعیت ماشین نگهداری می شود. قراردادها با Solidity برنامه ریزی شده اند و ارتباطات انسانی را تقلید می کنند و از بسیاری از زبان های برنامه نویسی گویاتر هستند.
قراردادهای هوشمند
قراردادهای هوشمند قراردادهایی بین طرفین است که به صورت کد نوشته می شوند. آنها خودشان را اجرا می کنند؛حذف اشخاص ثالث و عملکردها بدون نیاز به اعتماد. در حالی که این تراکنشها برگشت ناپذیر هستند، هنوز از نظر قانونی مطابقت ندارند. برای روشن شدن مفهوم، اجازه دهید مثالی بزنیم؛فرض کنید می خواهید آب را از یک دستگاه خودکار بخرید. ابتدا عدد را می نویسید و سپس قیمت را پرداخت می کنید. در صورت ناکافی بودن مقدار، دستگاه از شما پول بیشتری می خواهد و اگر وجه بیشتر از قیمت باشد، آب و پول خرد را به شما پس می دهد. پس از انجام معامله، نمی توانید معامله را پس بگیرید و آب در اختیار دارید. اما نکته ای وجود دارد، تراکنش در دستگاه فروش خودکار ثبت نمی شود، اما قراردادهای هوشمند روی بلاک چین ثبت می شود و آن را قابل اثبات می کند.
قطعی
EVM خروجی یکسانی را به همان مجموعه ورودی ارائه می کند. با توجه به برنامه های DeFi که در آن حجم زیادی از تراکنش های مالی رخ می دهد، دانستن اینکه کد هنگام اجرا چه واکنشی نشان می دهد بسیار مهم است. بنابراین جبرگرایی یک عامل مهم در EVM است.
جدا شده
قراردادهای هوشمند در محیطهای ایزوله اجرا میشوند و اتریوم را در برابر مشکلات فنی مستقل از برنامهها مقاوم میکنند. ممکن است حاوی حملات، اشکالات و سایر مسائل باشد تا زنجیره به درستی کار کند.
پایان پذیر
اتریوم از گاز برای محاسبه عملیات استفاده می کند. این عملیات گاز مصرف میکند و محدودیتی اعمال میشود تا بتوان برنامهها را به طور کارآمد ساخت. برای کارکرد قراردادهای هوشمند، توسعهدهندگان باید به این محدودیتها توجه کنند و اگر مقدار گاز برای عملیات از حد مجاز فراتر رفت، ماشین کار را متوقف میکند یا پردازش آن را متوقف میکند.
EVM چگونه کار می کند؟
قبل از اینکه به نحوه عملکرد EVM بپردازیم، بیایید ببینیم ماشین مجازی چیست. ماشین های مجازی به CPU، حافظه و فضای ذخیره سازی نیاز دارند، اما آنها فقط از کدهای کامپیوتری استفاده می کنند. در تئوری، آنها می توانند توسط هر کسی اجرا شوند، که امکان انعطاف پذیری و قابلیت حمل برای شبکه های غیرمتمرکز را فراهم می کند.
مشابه نحوه کار سایر ماشین های مجازی، EVM یک شبکه گرهی غیرمتمرکز برای اجرای قراردادهای هوشمند تعبیه شده در گره اتریوم برای اجرای قراردادهای هوشمند سازگار با EVM است. به قراردادهای هوشمند، گرهها، کد عملیاتی و گاز نیاز دارد.
همانطور که قراردادهای هوشمند را در ویژگی ها ذکر کردیم، بیایید به نحوه انجام بقیه این توابع اشاره کنیم:
گره ها
گره ها به سادگی رایانه هایی در شبکه های blockchain هستند و یک نسخه از blockchain دارند. در اتریوم ، همه گره ها باید با یک مورد بعدی موافق باشند تا همان دستورالعمل ها را اجرا کنند ، و آن را کامل می کند. هر دستورالعمل دارای هزینه ای است که به آن اختصاص داده شده است و براساس قراردادهای هوشمند و هزینه های مرتبط با آنها اقتصادی دارد و آنها را مسئول یک اقتصاد بزرگ می کند.
کرکی
Opcodes توسط توسعه دهندگان به راحتی قابل ایجاد است. در حالی که آنها به طور مستقیم با EVM درگیر نیستند ، همه برنامه های Ethereum با استحکام نوشته شده است. به هر یک از آنها یک بایت اختصاص داده می شود و حد آن 256 opcode است.
گاز
گاز سوخت دستگاه مجازی Ethereum است. هنگامی که معامله انجام می شود ، کاربران مجبور به پرداخت هزینه معامله هستند. به همین ترتیب ، توسعه دهندگان برای استقرار قراردادهای خود هزینه های گاز را پرداخت می کنند ، که این مجموع کلیه دستورالعمل های نوشته شده در قراردادهای هوشمند است. از آنجا که قراردادها مقادیر گسترده ای از گاز را مصرف می کنند ، به شبکه کمک می کند تا از حملات DDOS جلوگیری کرده و از آن جلوگیری کند و شبکه را ایمن نگه دارد.
کدام blockchains سازگار است؟
Ethereum ، Avalanche ، Fantom Opera Chain ، زنجیره BNB ، شفق قطبی ، چند ضلعی ، Mikomeda Sidechain ، Cardano ، Harmony ، Arbitrum و Oventism.
نظر شما در مورد EVM چیست؟آیا تا به حال در مورد EVM شنیده اید؟آیا تا به حال از شبکه های EVM استفاده کرده اید؟از کدام شبکه های EVM شنیده اید؟افکار و تجربیات خود را در بخش نظرات زیر به اشتراک بگذارید.