الاتصالات بين العمليات (IPC) في نظام التشغيل
ما هو التواصل بين العمليات؟
الاتصالات بين العمليات (IPC) يستخدم لتبادل البيانات بين عدة سلاسل عمليات في عملية أو برنامج واحد أو أكثر. قد يتم تشغيل العمليات على أجهزة كمبيوتر فردية أو متعددة متصلة عبر شبكة. الشكل الكامل لـ IPC هو الاتصال بين العمليات.
إنها مجموعة من واجهات البرمجة التي تسمح للمبرمج بتنسيق الأنشطة بين عمليات البرنامج المختلفة التي يمكن تشغيلها في وقت واحد في نظام التشغيل. وهذا يسمح لبرنامج معين بالتعامل مع العديد من طلبات المستخدم في نفس الوقت.
نظرًا لأن كل طلب مستخدم واحد قد يؤدي إلى تشغيل عمليات متعددة في نظام التشغيل، فقد تتطلب العملية التواصل مع بعضها البعض. يتمتع كل نهج بروتوكول IPC بميزته وحدوده الخاصة، لذا فليس من غير المعتاد أن يستخدم برنامج واحد جميع طرق IPC.
مناهج الاتصال بين العمليات
فيما يلي بعض الطرق المهمة للاتصال بين العمليات:
أنابيب
تُستخدم الأنابيب على نطاق واسع للتواصل بين عمليتين مرتبطتين. وهي طريقة نصف مزدوجة، لذا تتواصل العملية الأولى مع العملية الثانية. ومع ذلك، لتحقيق ثنائية مزدوجة، يلزم وجود أنبوب آخر.
تمرير الرسالة
إنها آلية تستخدمها عملية ما للتواصل والمزامنة. وباستخدام تمرير الرسائل، تتواصل العملية مع بعضها البعض دون اللجوء إلى متغيرات مشتركة.
توفر آلية IPC عمليتين:
- إرسال (رسالة)- حجم الرسالة ثابت أو متغير
- تم استلام (الرسالة)
قوائم انتظار الرسائل
قائمة انتظار الرسائل هي قائمة مرتبطة بالرسائل المخزنة داخل نواةيتم التعرف عليه من خلال معرف قائمة الرسائل. توفر هذه الطريقة الاتصال بين عملية واحدة أو عمليات متعددة بسعة مزدوجة كاملة.
الاتصالات المباشرة
في هذا النوع من عمليات الاتصال بين العمليات، يجب تسمية بعضها البعض بشكل صريح. في هذه الطريقة، يتم إنشاء رابط بين زوج واحد من عمليات الاتصال، وبين كل زوج يوجد رابط واحد فقط.
التواصل غير المباشر
يتأسس الاتصال غير المباشر فقط عندما تشترك العمليات في صندوق بريد مشترك، حيث يشترك كل زوج من العمليات في عدة روابط اتصال. ويمكن للرابط أن يتواصل مع العديد من العمليات. وقد يكون الرابط ثنائي الاتجاه أو أحادي الاتجاه.
ذكريات مشتركه
الذاكرة المشتركة هي ذاكرة مشتركة بين عمليتين أو أكثر يتم إنشاؤها باستخدام ذاكرة مشتركة بين جميع العمليات. يتطلب هذا النوع من الذاكرة الحماية من بعضها البعض من خلال مزامنة الوصول عبر جميع العمليات.
FIFO
الاتصال بين عمليتين غير مرتبطتين، وهو أسلوب الاتصال الثنائي الكامل، أي أن العملية الأولى يمكنها التواصل مع العملية الثانية، ويمكن أن يحدث العكس أيضًا.
لماذا IPC؟
فيما يلي أسباب استخدام بروتوكول الاتصال بين العمليات لمشاركة المعلومات:
- فهو يساعد على تسريع نمطية
- الحاسوبية
- فصل الامتياز
- وسائل الراحة
- يساعد أنظمة التشغيل على التواصل مع بعضها البعض ومزامنة أعمالها.
المصطلحات المستخدمة في IPC
وفيما يلي بعض المصطلحات الهامة المستخدمة في التصنيف الدولي للبراءات:
Semaphores: الإشارة هي تقنية آلية الإشارة. تسمح طريقة نظام التشغيل هذه بالوصول إلى المورد أو لا تسمح به، وهو ما يعتمد على كيفية إعداده.
Signals: إنها طريقة للتواصل بين عمليات متعددة عن طريق الإشارة. سترسل العملية المصدر إشارة يتم التعرف عليها برقم، وستتعامل معها العملية الوجهة.
اقتراح القراءة:- ما هي تفاصيل Semaphore؟ ثنائي، أنواع العد مع المثال
ما هو مثل FIFOS وعلى عكس FIFOS
مثل فيفوس | على عكس فيفوس |
---|---|
يتبع طريقة FIFO | طريقة سحب رسائل عاجلة محددة قبل وصولها إلى الواجهة |
يوجد FIFO بشكل مستقل عن عمليات الإرسال والاستقبال. | جاهز دائمًا، لذلك لا تحتاج إلى الفتح أو الإغلاق. |
يسمح بنقل البيانات بين العمليات غير ذات الصلة. | لا توجد أي مشاكل في المزامنة بين الفتح والإغلاق. |
الملخص
- فريف: يتم استخدام الاتصال بين العمليات لتبادل البيانات بين مؤشرات ترابط متعددة في عملية أو برنامج واحد أو أكثر.
- يتم استخدام الأنابيب على نطاق واسع للتواصل بين عمليتين مرتبطتين.
- يعتبر تمرير الرسائل آلية لعملية ما للتواصل والمزامنة.
- قائمة انتظار الرسائل هي قائمة مرتبطة بالرسائل المخزنة داخل النواة
- العملية المباشرة هي نوع من عمليات الاتصال بين العمليات، ويجب تسمية بعضها البعض بشكل صريح.
- يتأسس الاتصال غير المباشر فقط عندما تشترك العمليات في صندوق بريد مشترك، حيث يشترك كل زوج من العمليات في عدة روابط اتصال.
- الذاكرة المشتركة هي ذاكرة مشتركة بين عمليتين أو أكثر يتم إنشاؤها باستخدام الذاكرة المشتركة بين جميع العمليات.
- تساعد طريقة Inter Process Communication على تسريع النمطية.
- الإشارة هي تقنية آلية الإشارة.
- Signalالتواصل هو طريقة للتواصل بين العمليات المتعددة عن طريق الإشارة.
- مثل FIFO يتبع أسلوب FIFO بينما على عكس FIFO يستخدم الأسلوب لسحب رسائل عاجلة محددة قبل أن تصل إلى المقدمة.