ما هو عدد المراجع؟

- Jan 09, 2019-

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

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

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

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