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

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

