7.1 ربط العناوين (Address Binding) Address Binding ربط العناوين (Address Binding)
عملية تعيين التعليمات والبيانات إلى عناوين ذاكرة فعلية، تماماً مثل تخصيص رقم غرفة فندق محدد لحجز ضيف.
The process of mapping instructions and data to physical memory addresses, much like assigning a specific hotel room number to a guest's reservation.
عملية تعيين التعليمات والبيانات إلى عناوين ذاكرة فعلية، تماماً مثل تخصيص رقم غرفة فندق محدد لحجز ضيف.
يمكن أن يحدث ربط العناوين في ثلاث مراحل:
- وقت الترجمة (Compile time): إذا كان موقع الذاكرة معروفاً مسبقاً، يتم إنشاء كود مطلق (Absolute code).
- وقت التحميل (Load time): يتم إنشاء كود قابل لإعادة التوطين (Relocatable code) إذا لم يكن الموقع معروفاً وقت الترجمة.
- وقت التنفيذ (Execution time): يتأخر الربط حتى وقت التشغيل إذا كان من الممكن نقل العملية بين أجزاء الذاكرة أثناء تنفيذها، ويتطلب ذلك دعماً من الأجهزة (مثل سجلات الأساس والحد).
Address binding can happen at three stages:
- Compile time: If memory location is known a priori, absolute code is generated.
- Load time: Must generate relocatable code if memory location is not known at compile time.
- Execution time: Binding delayed until run time if the process can be moved during its execution. Needs hardware support (e.g., base and limit registers).
يمكن أن يحدث ربط العناوين في ثلاث مراحل:
- وقت الترجمة (Compile time): إذا كان موقع الذاكرة معروفاً مسبقاً، يتم إنشاء كود مطلق (Absolute code).
- وقت التحميل (Load time): يتم إنشاء كود قابل لإعادة التوطين (Relocatable code) إذا لم يكن الموقع معروفاً وقت الترجمة.
- وقت التنفيذ (Execution time): يتأخر الربط حتى وقت التشغيل إذا كان من الممكن نقل العملية بين أجزاء الذاكرة أثناء تنفيذها، ويتطلب ذلك دعماً من الأجهزة (مثل سجلات الأساس والحد).