الفرق الرئيسي - استدعاء النظام مقابل استدعاء المكتبة
ترتبط مكالمة النظام ومكالمة المكتبة بنظام تشغيل الكمبيوتر. يمكن أن يعمل الكمبيوتر في وضعين ؛ وهي وضع المستخدم ووضع النواة. يتمثل الاختلاف الرئيسي بين استدعاء النظام واستدعاء المكتبة في أن استدعاء النظام هو وظيفة توفرها kernel للدخول إلى وضع kernel للوصول إلى موارد الأجهزة في حين أن استدعاء المكتبة هو وظيفة توفرها مكتبات البرمجة. على سبيل المثال ، open () هو استدعاء نظام و fopen () هو استدعاء مكتبة. عندما fopen () في برنامج C ، يستخدم مكتبة رأس stdio.h. ثم يتم استخدام استدعاء النظام "open ()" من النواة لإكمال مهمة فتح الملف.
ما هو استدعاء النظام؟
يعمل الكمبيوتر في وضعين. هم وضع المستخدم ووضع النواة. بعض العمليات تعمل على نظام الكمبيوتر. العملية عبارة عن برنامج قيد التنفيذ. عند تشغيل برامج التطبيقات ، يكون الكمبيوتر في وضع المستخدم. إذا كان مورد الأجهزة مطلوبًا ، ترسل العملية طلبًا إلى kernel ويدخل الكمبيوتر في وضع kernel. يتم إرسال هذه الطلبات باستخدام مكالمات النظام. يقوم الكمبيوتر بالتبديل بين هذين الوضعين بشكل متكرر. عند اكتمال المهمة ، يعود الكمبيوتر إلى وضع المستخدم من وضع kernel. يُعرف انتقال الوضع هذا باسم "تبديل السياق". استدعاءات النظام هي واجهة بين نظام التشغيل وبرامج المستخدم.
الشكل 01: استدعاءات النظام
هناك أنواع مختلفة من مكالمات النظام. يمكن إنشاء وإنهاء العملية وتنفيذ العملية وتخصيص الذاكرة وتحريرها باستخدام "مكالمات نظام التحكم في العمليات". يمكن استخدام "استدعاءات نظام إدارة الملفات" لإنشاء الملفات وحذفها وقراءتها وكتابتها وفتحها وإغلاقها. تتطلب العملية بعض الموارد لإكمال التنفيذ. يتم طلب الأجهزة وإصدارها من خلال "مكالمات نظام إدارة الأجهزة". يمكن استخدام "مكالمات نظام إدارة المعلومات" للحصول على بيانات النظام والحصول على العمليات وسمات الجهاز. العمليات تتواصل مع بعضها البعض. يتم إجراء هذا الاتصال باستخدام "مكالمات نظام الاتصال". يمكن إرسال معلومات الحالة وإنشاء اتصالات الاتصال وحذفها وإرسال الرسائل واستلامها باستخدام مكالمات نظام الاتصال.
ما هو Library Call؟
استدعاء المكتبة هو وظيفة توفرها مكتبات البرمجة. قبل إجراء مكالمة مكتبة ، يجب استيراد تلك المكتبة. قد تعتمد مكالمة المكتبة على استدعاء النظام.
في لغة C ، يمكن استخدام هذه الوظائف في البرنامج عن طريق تضمين ملفات الرأس. يتم تضمين ملفات الرأس باستخدام توجيه المعالجة المسبقة include. يقوم المعالج المسبق بمسح الملف المحدد قبل المتابعة مع باقي الملف المصدر. بعض وظائف المكتبة الشائعة هي كما يلي ، تشتمل مكتبة "math.h" على وظائف متعلقة بالعمليات الحسابية. توفر مكتبة "stdio.h" وظائف لأداء الإدخال والإخراج. يفتح "fopen ()" اسم الملف المشار إليه. يغلق "fclose ()" الملف. يتم استخدام “printf () لإرسال الإخراج المنسق إلى الإخراج القياسي. يتم استخدام "fprintf ()" لإرسال الإخراج المنسق إلى تدفق. يُستخدم “scanf ()” لقراءة الإدخال المنسق من الإدخال القياسي. يوفر “stdlib.h” وظائف لإدارة الذاكرة ويوفر “time.h” وظائف لمعالجة الوقت والتاريخ.
ما هو التشابه بين استدعاء النظام واستدعاء المكتبة؟
كلاهما مرتبط بنظام التشغيل
ما هو الفرق بين استدعاء النظام واستدعاء المكتبة؟
استدعاء النظام مقابل استدعاء المكتبة |
|
استدعاء النظام هو وظيفة توفرها النواة للدخول إلى وضع kernel للوصول إلى موارد الأجهزة. | استدعاء المكتبة هو وظيفة توفرها مكتبة البرمجة. |
طريقة التنفيذ | |
يتم تنفيذ استدعاء النظام في وضع النواة. | يتم تنفيذ استدعاء المكتبة في وضع المستخدم. |
تبديل الوضع | |
تبديل اتصال النظام من وضع المستخدم إلى وضع النواة. | لا يوجد تبديل من وضع المستخدم إلى وضع kernel في مكالمة المكتبة. |
قابلية | |
مكالمة النظام ليست محمولة. | مكالمة المكتبة قابلة للنقل. |
ملخص - استدعاء النظام مقابل استدعاء المكتبة
يتم تنفيذ استدعاء النظام في النواة ، ويتم تنفيذ استدعاء المكتبة في مساحة المستخدم. يتمثل الاختلاف بين استدعاء النظام واستدعاء المكتبة في أن استدعاء النظام هو وظيفة توفرها النواة للدخول إلى وضع kernel للوصول إلى موارد الأجهزة واستدعاء المكتبة هو وظيفة توفرها مكتبات البرمجة. قد تعتمد مكالمات المكتبة على مكالمات النظام لإكمال المهمة. open () ، fork () ، cd () هي بعض الأمثلة على استدعاءات النظام. fopen () ، fprintf () أمثلة على مكالمات المكتبة.
قم بتنزيل إصدار PDF من System Call مقابل Library Call
يمكنك تنزيل نسخة PDF من هذه المقالة واستخدامها للأغراض غير المتصلة بالإنترنت وفقًا لملاحظة الاقتباس. يرجى تنزيل نسخة PDF هنا الفرق بين استدعاء النظام والمكتبة