إذًا، ماذا نفعل بكل ما هو قابل لتوسيع الحسابية التي توفرها لنا المجمعة الخاصة بالتطبيقات؟ كما أوضحنا في الجزء الثاني من Grokking Cartesi Rollups، يتيح لنا ذلك العمل على تصميم وتجريد الحجم. نعني بهذا أن كارتيزي يتيح للمطورين استخدام الأدوات مألوفة وإعادة استخدام جميع المعرفة القضائية الموجودة في التعليمات البرمجية المفتوحة لتطبيقات المصدر لتطبيقات dApps الأفضل.

يتم عرض الفوائد في العناصر الأساسية والأخيرة لتقنية كارتيزي: جهاز كارتيزيالظاهري ، أو CVM.

ما هي الآلة الافتراضية؟

لنبدأ بماهية الآلة الافتراضية. الجهاز الظاهري أو الإفتراضي هو ببساطة برنامج قادر على محاكاة كل العمل الذي يتم إنجازه على جهاز كمبيوتر فعلي. يمكننا أن نعتبره نسخة رقمية من جهاز كمبيوتر يتضمن جميع مكونات الكمبيوتر الفعلي (وحدة المعالجة المركزية، الذاكرة...)، ولكنه موجود بالكامل في عالم افتراضي.

تعد الأجهزة الافتراضية مفيدة بشكل لا يصدق، وهناك العديد من أنواع الأجهزة الافتراضية التي يتم استخدامها لمجموعة متنوعة من الأغراض. يمكن أن تكون جزءًا أساسيًا من لغات البرمجة الشائعة مثل Java. يمكنهم أيضًا السماح للمطورين بتشغيل التطبيقات في السحابة، أو إنشاء بيئات معزولة مثل Parallels لتشغيل تطبيقات Windows على Mac، أو تسهيل اختبار منتجات البرامج الجديدة - كل ذلك اعتمادًا على نوع الجهاز الظاهري المطلوب.

الأجهزة الافتراضية في Web3

في سياق Web3 وdApps ، تلعب الأجهزة الافتراضية حاليًا دورًا في نشر وتنفيذ العقود الذكية. كانت الآلة الافتراضية لإيثريوم (EVM) رائدة في مفهوم تشغيل واحدة فوق شبكة بلوكتشين حتى يتمكن المطورون من برمجة المعاملات وتصميمها.

تكمن المشكلة في أن هذا النوع من الأجهزة الافتراضية يقتصر على قيود الوقت والمساحة لتلك الشبكة. علاوة على ذلك، فهو مصمم خصيصًا لتشغيل هذه العقود الذكية. حتى عندما نجد طرقًا لاستخدام لغات البرمجة التقليدية في الأجهزة الافتراضية لسلسلة الكتل، فإنها لا تزال مقيدة بهذا النموذج.

على الرغم من أنها لا تزال آلة افتراضية من الناحية الفنية ، إلا أن الأجهزة الافتراضية الحالية المستندة إلى تقنية البلوكتشين لا تتصرف مثل الكمبيوتر الفعلي العادي. كما أنهم غير قادرين على تشغيل نوع البرامج التي اعتاد المستخدمون عليها.

كما رأينا عند النظر إلى الألعاب أو DeFi dApps، فإن "وحدة المعالجة المركزية" لجهاز افتراضي مثل EVM تقوم بتشغيل 10 ملايين تعليمات كل 12 ثانية أو نحو ذلك. ومع ذلك، فقد رأينا أيضًا كيف تتجاوز المجموعات المجمعة التي تركز على التطبيق مثل Cartesi Rollups هذا القيد - فهي تتيح لنا نقل هذا إلى أكثر من 3.6 مليار تعليمات. دعنا نعود إلى السؤال حول ما يمكننا فعله بهذا.

جهاز افتراضي جديد لـ Web3

تتيح لنا كل هذه المكاسب في القوة الحسابية إنشاء نوع أفضل من الأجهزة الافتراضية للعمل مع مجموعات التطبيقات الخاصة. قد يؤدي هذا إلى إخراج المطورين من العالم المحدود لجهاز Ethereum الإفتراضي والعودة إلى العالم اللامحدود لبيئات التطوير التقليدية مثل Linux.

وهذا هو بالضبط ما تفعله آلة كارتيزي الافتراضية. تم تصميم CVM للعمل مع RISC-V، وهو معيار مفتوح لنموذج مجرد لجهاز كمبيوتر تدعمه شركات كبيرة مثل NVIDIA و Intel و Google و QUALCOMM و Tencent.

يتميز RISC-V بالقوة الكافية لتشغيل نظام تشغيل مثل Linux بالإضافة إلى البرامج التي يدعمها. يمكن لنظام Linux ، على وجه التحديد، أن يكون الآن نظام تشغيل البلوكتشين حيث يقوم مطورو Web3 ببناء تطبيقات dApps تتجاوز حدود EVM.

إمكانية التحقق والإعتماد

أفضل ما في الأمر هو أن كل ما يحدث في CVM يتم الإبلاغ عنه مرة أخرى إلى البلوكتشين عبر Cartesi Rollups. ونتيجة لذلك، يمكن لـ CVM توفير حسابات يمكن التحقق منها وتتمتع بجميع مزايا الأمان والشفافية والثبات التي تقدمها شبكات البلوكشين.

وهذا ما يجعل آلية CVM فريدة من نوعها في خصائصها وتتيح لها أن تكون لديها آلية فعالة لحل النزاعات. إذا كان شخص ما يقوم بتشغيل تطبيق dApp على CVM ، فلن يحتاج أي من الأطراف المعنية إلى الثقة ببعضه البعض لأن CVM هو:

- مكتفٍ بذاته : يعمل بمعزل عن أي تأثير خارجي.
- قابلة للتكرار : يمكن للآخرين الحصول على نفس النتائج التي يتم إرجاعها بها.
- شفاف : كل ما يفعله يمكن تفتيشه من قبل أي شخص.
بشكل عام ، هذا يعني أن الأشخاص ذو الشفافية الذين يقومون بتشغيل برنامج داخل جهاز كارتيزي يحصلون دائمًا على نفس النتيجة تمامًا. على العكس من ذلك، يمكن الطعن في الادعاءات غير الصادقة بشأن هذه النتائج على البلوكتشين بطريقة تسود فيها النتيجة الصادقة. وهذا صحيح على الرغم من أن آلة كارتيزي أسرع بعدة مرات من البلوكتشين.

قابلية التوسع التجريدية

ولكن ربما تكون الميزة الأكثر أهمية للعمل مع CVM هي تقديم قابلية التوسع التجريدي إلى Web3. يعد هذا جانبًا تم التغاضي عنه في قابلية التوسع في البلوكتشين وهو أمر أساسي لبناء تطبيقات لامركزية أفضل.

لقد قمنا بتعريف قابلية التوسع التجريدية على النحو التالي: "قابلية التوسع التجريدية هي التوسع في القدرة الإجمالية للنظام الذي يسمح باستخدام مكونات البرمجة كعناصر بناء في بيئة تطوير جديدة. تعمل قابلية التوسع التجريدي على زيادة عدد العمليات المهمة التي يمكن للمطور تنفيذها دون الحاجة إلى إعادة بنائها.

وهذا يعني أن CVM يمنح مطوري Web3 القدرة على إنشاء تطبيقات dApps أفضل من خلال الرجوع إلى أعمال المطورين الآخرين الذين ليسوا بالضرورة في Web3 وإعادة استخدامها كعناصر بناء لإبداعاتهم الخاصة. إن قابلية التوسع التجريدية تحفظهم من الاضطرار إلى "إعادة اختراع الخطوات السابقة مرة اخرى" من أجل التكيف مع القيود المفروضة على الأجهزة الافتراضية الأخرى الخاصة بـ البلوكتشين.

(تعمق في هذا المفهوم في هذا المنشور، حيث يشار إليه باسم "قابلية توسيع المحتوى".)

يتضمن نطاق التجريدات التي يمكن لمطوري Web3 استخدامها الآن أي شيء بدءًا من مكتبات Python مثل numpy إلى نوع الأدوات اللازمة لإنشاء ألعاب كلاسيكية مثل SimCity. نحن نتحدث عن لغات البرمجة ، والمترجمين ، والروابط ، وملفات التعريف ، ومصححات الأخطاء ، وكل شيء تتوقع وجوده في نظام التشغيل العادي. يمكن تشغيل كل هذا بشكل يمكن التحقق منه على السلسلة بفضل كارتيزي و آلة كارتيزي الإفتراضية CVM.

هل تعتقد أنك فهمت آلة كارتيزي الافتراضية؟ اختبر معلوماتك من خلال إجراء اختبار Grokking Cartesi Virtual Machine على لوحة مهام كارتيزي.

تعرف على المزيد حول CVM في المستندات. يمكنك أيضًا البقاء على اطلاع بكل ما يحدث في نظام كارتيزي البيئي من خلال الانضمام إلى المجتمع.