بناء ثابت

البناء الثابت هو نسخة مُجمّعة من برنامج تم ربطه بشكل ثابت بالمكتبات.

الربط

في علم الحاسوب ، تعني عملية الربط أخذ كائن واحد أو أكثر من الكائنات التي تولدها المترجمات وتجميعها في برنامج تنفيذي واحد . هذه الكائنات عبارة عن وحدات برمجية تحتوي على شفرة الآلة وتعريفات الرموز ، وتأتي في نوعين:

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

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

الربط الديناميكي

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

يوفر الربط الديناميكي ثلاث مزايا:

مبنى ثابت

في البرنامج المبني بشكل ثابت ، لا يحدث ربط ديناميكي: فقد تم إجراء جميع عمليات الربط في وقت الترجمة .

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

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

انظر أيضاً

مراجع

  • ليفين، جون ر. (2000) [أكتوبر 1999]. الروابط والمحملات . سلسلة مورغان كوفمان في هندسة البرمجيات والبرمجة (  الطبعة الأولى). سان فرانسيسكو، الولايات المتحدة الأمريكية: مورغان كوفمان . ISBN 1-55860-496-0رقم الكتاب المعياري الدولي ( ISBN) 978-1-55860-496-4.
  • كيرين، جاي (2002). بناء واستخدام مكتبات "C" الثابتة والمشتركة . مجموعة مبرمجي يونكس الصغار (LUPG).