> For the complete documentation index, see [llms.txt](https://docs.rome.builders/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.rome.builders/ar/albda/key-concepts.md).

# المفاهيم الأساسية

المصطلحات الأساسية في Solana وRome EVM للمطوّرين — البرامج، والحسابات، وPDAs، وCPI، وSPL tokens، والتنفيذ الذرّي مقابل التكراري.

المصطلحات والمفاهيم الأساسية للبناء على بروتوكول Rome.

## مفاهيم سولانا

**برنامج** — ما يعادل العقد الذكي في سولانا. البرامج هي ملفات تنفيذية عديمة الحالة تُنشر على السلسلة. ويُعد Rome EVM نفسه برنامجًا على سولانا.

**حساب** — كل الحالة على سولانا تعيش في الحسابات. لكل حساب مالك (برنامج)، ورصيد (لامبورت)، وبيانات. بخلاف إيثريوم، يُخزَّن الكود والحالة في حسابات منفصلة.

**PDA (عنوان مشتق من البرنامج)** — عنوان حتمي مشتق من بذور ومعرّف برنامج. تتيح PDAs للبرامج امتلاك الحسابات دون مفتاح خاص. يستخدم Rome PDAs لربط عناوين إيثريوم بحسابات سولانا.

**CPI (استدعاء عبر البرامج)** — استدعاء برنامج سولانا لبرنامج آخر داخل المعاملة نفسها. بهذه الطريقة تتفاعل عقود Rome EVM مع Jupiter وKamino وSPL Token وغيرها من برامج سولانا.

**SPL Token** — برنامج التوكن القياسي في سولانا. يعادل ERC-20 على إيثريوم. جميع التوكنات القابلة للاستبدال على سولانا (USDC وSOL وغيرها) هي توكنات SPL.

**Token-2022** — برنامج التوكن SPL من الجيل التالي مع إضافات مثل Transfer Hooks وConfidential Transfers وPermanent Delegates.

**Transfer Hook** — امتداد في Token-2022 يستدعي برنامجًا عند كل `transfer_checked` استدعاء.

**ATA (حساب توكن مرتبط)** — حساب توكن حتمي لزوج محفظة + mint محدد. لكل مستخدم ATA واحد لكل توكن يحتفظ به.

**لامبورات** — أصغر وحدة في SOL. 1 SOL = 1,000,000,000 لامبورت (10^9).

**وحدات الحساب (CU)** — ما يعادل غاز إيثريوم في سولانا. لكل معاملة ميزانية حساب (الافتراضي نحو 200K CU، والحد الأقصى نحو 1.4M CU). تستهلك العمليات CU.

## مفاهيم Rome

**برنامج Rome EVM** — برنامج سولانا الذي يحتوي على مفسّر بايت كود EVM. يُنشر بمعرّف برنامج محدد لكل بيئة.

**معرّف السلسلة** — تحصل كل تطبيقات Rome على معرّف سلسلة EVM خاص بها. وهذا ينشئ بيئات EVM معزولة تشترك في نفس حالة سولانا الأساسية.

**التنفيذ الذرّي (VmAt)** — معاملة EVM تُنفَّذ بالكامل ضمن معاملة سولانا واحدة. تُستخدم لمعظم العمليات.

**التنفيذ التكراري (VmIt)** — معاملة EVM مقسمة عبر عدة معاملات سولانا، حيث تُعبِّئ كل خطوة أكبر عدد ممكن من أوامر التشغيل (opcodes) بما يتسع له ميزانية الحساب في معاملة سولانا واحدة (بشكل تكيفي، لا بعدد ثابت). تُستخدم للعمليات كثيفة الحساب مثل BN254 pairing.

**حساب الحامل** — مخزن مؤقت على السلسلة يخزن معاملات EVM الكبيرة (حتى 80 KB) التي تتجاوز حد حجم معاملة سولانا (v1) البالغ 4 KB. تتم إدارته بشفافية بواسطة SDK.

**StateHolder** — حساب على السلسلة يخزن حالة الآلة الافتراضية المُسلسلة بين خطوات التنفيذ التكرارية.

**Rome Proxy** — خادم JSON-RPC (المنفذ 9090) الذي يترجم استدعاءات واجهة Ethereum إلى معاملات سولانا. يتصل MetaMask وHardhat لديك هنا.

**Hercules** — مفهرس الكتل الذي يراقب أحداث Rome EVM على سولانا وينتج بيانات كتل متوافقة مع إيثريوم.

**الدافع** — زوج مفاتيح سولانا يوقّع ويدفع مقابل معاملات سولانا نيابةً عن مستخدمي EVM. تتم إدارته بواسطة Proxy عبر مجمعات الدافعين.

## مفاهيم التوكن

**SPL\_ERC20 / SPL\_ERC20\_cached** — عقود تغليف ERC-20 تمثل توكن SPL داخل Rome EVM. بالنسبة للمحفظة، يقرأ الغلاف الرصيد مباشرة من حساب توكن SPL الأساسي. التوكنات المحتفظ بها بواسطة عقد تُحفظ في حساب التوكن الضامن الخاص بالغلاف نفسه وتُتتبع في تخزين الغلاف (انظر [دمج برنامج سولانا](/ar/adlh-almtw-ryn/integrate-solana-program.md)). ينشر المصنع النسخة المخبأة اليوم.

**ERC20SPLFactory** — عقد مصنع ينشر أغلفة لأي توكن SPL.

**السجل** — تُنسَّق الأغلفة المعيارية، وتوكنات الغاز، وتوصيلات الجسر خارج السلسلة في [rome-protocol/registry](https://github.com/rome-protocol/rome-registry)؛ لا يوجد عقد سجل توكنات على السلسلة. وهذا يبقي كل أصل مرتبطًا بسكّ SPL معياري واحد.

## Precompiles

**الترجمات المُسبقة القياسية لإيثريوم** — ecrecover (0x01)، SHA-256 (0x02)، RIPEMD-160 (0x03)، identity (0x04)، modexp (0x05)، BN254 ecAdd/ecMul/ecPairing (0x06-0x08)، Blake2f (0x09).

**الترجمة المسبقة للنظام** (`0xFF...07`) — اشتقاق PDA والتحويل إلى base58 من Solidity.

**الترجمة المسبقة CpiProgram** (`0xFF...08`) — استدعاء عبر البرامج (`invoke` / `invoke_signed`) بالإضافة إلى اختصارات القراءة عبر الحالة.

**الترجمة المسبقة HelperProgram** (`0xFF...09`) — إنشاء ATA/PDA، وتحويلات SPL، والتحويل بين gas وlamports؛ الواجهة الرئيسية لعمليات SPL الموقعة بواسطة PDA الخاصة بالمستخدم.

**الترجمة المسبقة للسحب** (`0x42...16`) — سحب SOL أو توكنات SPL من EVM إلى سولانا.

عائلة تتبع مخبأة (`0xff…04/05/06/0b`) تعكس هذه للقراءات الموفرة لوحدات الحساب؛ ويستخدم العقد مسارًا واحدًا باستمرار.

## أنواع المعاملات

**RheaTx** — معاملة EVM واحدة على تجميع واحد. النوع الأكثر شيوعًا.

**RemusTx** — عدة معاملات EVM عبر تجميعات مختلفة، تُنفَّذ ذريًا. إذا فشلت أي معاملة، تُلغى جميعها.

**RomulusTx** — معاملات EVM + تعليمات سولانا الأصلية مجتمعة في عملية ذرّية واحدة. النوع الأقوى — امزج Solidity وسولانا في معاملة واحدة.

## ما التالي

* [نموذج التنفيذ](/ar/almfahym-alasasyh/execution-model.md) — نظرة معمقة على كيفية تنفيذ معاملات EVM على سولانا
* [التوافق التشغيلي للرموز](/ar/almfahym-alasasyh/token-interop.md) — كيف تتفاعل توكنات ERC-20 وSPL
* [القيود](/ar/almfahym-alasasyh/constraints.md) — الحدود والقيود المهمة


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.rome.builders/ar/albda/key-concepts.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
