هل يوجد فرق بين RunTime library و RunTime system ?


التعليقات

بدايــة علينــا معرفــة بعض المصطلحــات والمقصــود بهـا،

Runtime

غالبــاً تكتب كلمة واحــدة ليست Run Time كلمتين أو Run-time بينهمــا شرطة. وتعنــي فترة التشغيــل. هذه الكلمــة كما يدل معناها فليســت حصرية على البرمجيــّات. ولكننــا في سياق البرمجيــات نقصــد بـ Runtime فتــرة تشغيل البرنامــج أو (أثنــاء عمل البرنامــج).

مثــلاً عندما نقــول Runtime Error أي خطــأ ظهر أثنــاء تشغيل البرنامــج (مثل عندما تكتب برنامج، يقوم بالقسمــة على صفــر) في الغالب الخــطأ سوف يظهــر أثناء التشغيـــل، على العكــس، Compiling time error أخطــاء تظهر في وقت التفسيــر (Compiling) مثــل عندما تنسى Semicolon أو تستخــدم متغيــر غير معرّف.

Library

المكتبــة (Library) في سياق البرمجيــات هي مجمــوعة من الوظائف (Functions)، الأصناف (Classes) أو الكائنات المبرمجــة والمفســّرة (compiled) مسبقــا لتستخدمـها في برمجيـّــاتك. مثــلاً cmath هي مكتبــة مشهورة للغــة C توفــّر لــك وظائف رياضيــة كثيــرة مثل sin و cos وغيرهــا. من أهــم خصائص المكتبــات، قابليــة إعادة الإستخــدام Reusability، تستــخدم في عدة مشاريــع.

System

الترجمــة الحرفيــة لـ System هي نظــام، كما يقال نظــام الدولــة، أعجبني في الحقيقــة التعريف العربي في موقــع ويكيبيديا.

هو مجموعة عناصر تشكل بمجموعها كلاً واحداً مع بعضها البعض حيث يرتبط كل عنصر بالآخر. بالتالي أي عنصر ليس له أي ارتباط بأحد عناصر النظام لا يمكن اعتباره جزءا من هذا النظام.

وفي سيــاق علوم الحــاسب، النظــام هو مجمــوعة من المكــونات Components قــد تكون Software أو Hardware. فمثــلاً لو أردنا تطــوير نظــام تتبــّـع المركبــات، قاعــدة البيانات نعتبــرها مكــون برمجي (Software component) والقــطعة التــي نصنعهــا ليتــم تركيبهــا في المركبــة مكــوّن ملمــوس (Hardware component). قــد يكــون النظــام كاملاً بلا Software أو بلا Hardware.

حسنــاً بعــد ما صار لدينــا تصــّور قريــب للمصطلحــات نعود للســؤال.

هل يوجد فرق بين Runtime Library و Runtime System؟

الـنظام (System) يحتوي على مكونات (Components) وبعض تلك المكونــات، بالتحديــد المكـونات البرمجية (Software components) تعتمــد علــى مكتبــات (Libraries). لاحــظ كلمة Runtime لا تغيــّـر المفاهيــم الأساسيــّـة.

فـ Runtime Systems مثلها مثل أنظمــة التشغيــل تحتــوي وتشغــل أنظمــة أخــرى تعتمــد عليهــا. فمـثلاً، أنت لا تحتــاج أن تكتب برنامــج يتعــامل مباشــرة مع القرص الصلــب لكتابــة ملــف، المعــالج لتنفيــذ عمليــة ما، أو حتى الذاكــرة. نظــام التشغيــل الذي في حاسبــك، لديــه مكوّنات توفـــّر لك مكتبات أثناء التشغيـل (Runtime libraries) يستخــدمها برنامــجك أثناء فترة تشغيــلة للقيــام في تلك العمليـــة بدلاً من أن يقــوم بها بنفســـة. ولهــذا بعض البرمجيــات.

أرجوا أن تكون إجابتي صحيحــة بما فيه الكفايــة وأن تكــون كافيــة.

RunTime System --> نظام التشغيل الذي تستعمله و يتحكم في مصادر الجهاز

RunTime Library --> مكتبة برمجية تضم عدد من الدوال المحددة لتنفيذ غرض معين

في الغالب تكون متعلقة بلغة برمجية معينة مثل C

فهل يوجد فعلاً اختلاف ؟

طبعا فنظام التشغيل يحوي المكتبات البرمجية ، و بالطبع هو أكبر و أشمل فـ RunTime Library

لا يمكنها تشغيل حاسوب ، هي فقط تساعد في تنفيذ البرامج


برمجة

المواضيع والنقاشات المتعلقة بالبرمجة بشكل عام او لغات البرمجة التي لايوجد لها مجتمعات فرعية.

24.6 ألف متابع