الخميس، 1 أكتوبر 2020

نظام V & Posix

 

نظام V & Posix



يسرد الجدول التالي الاختلافات بين System V IPC و POSIX IPC.

النظام الخامسبوسيكس
قدمت AT & T (1983) ثلاثة أشكال جديدة من مرافق IPC وهي قوائم انتظار الرسائل والذاكرة المشتركة والإشارات.معايير واجهة نظام التشغيل المحمولة المحددة من قبل IEEE لتعريف واجهة برمجة التطبيقات (API). تغطي POSIX جميع الأشكال الثلاثة لـ IPC
يغطي SYSTEM V IPC جميع آليات IPC ، مثل الأنابيب والأنابيب المسماة وقوائم انتظار الرسائل والإشارات والإشارات والذاكرة المشتركة. كما أنه يغطي المقبس ومآخذ مجال Unix.جميع المفاهيم الأساسية تقريبًا هي نفسها System V. وهي تختلف فقط مع الواجهة
استدعاءات واجهة الذاكرة المشتركة shmget () ، shmat () ، shmdt () ، shmctl ()استدعاءات واجهة الذاكرة المشتركة shm_open () ، mmap () ، shm_unlink ()
استدعاءات واجهة قائمة انتظار الرسائل msgget () و msgsnd () و msgrcv () و msgctl ()استدعاءات واجهة قائمة انتظار الرسائل mq_open () ، mq_send () ، mq_receive () ، mq_unlink ()
استدعاءات واجهة Semaphore semget ()، semop ()، semctl ()استدعاءات واجهة الإشارة Semaphores sem_open () ، sem_close () ، sem_unlink () ، sem_post () ، sem_wait () ، sem_trywait () ، sem_timedwait () ، sem_getvalue () الاسم أو الإشارات المستندة إلى الذاكرة sem_init () ، sem_post () ، () ، sem_getvalue () ، sem_destroy ()
يستخدم المفاتيح والمعرفات لتحديد كائنات IPC.يستخدم الأسماء واصفات الملفات لتعريف كائنات IPC
غير متوفريمكن مراقبة قوائم انتظار رسائل POSIX باستخدام واجهات برمجة تطبيقات select () و poll () و epoll
يقدم اتصال msgctl ()يوفر وظائف (mq_getattr () و mq_setattr ()) إما للوصول إلى السمات أو تعيينها 11. IPC - النظام V و POSIX
غير متوفرمتعدد الخيوط آمنة. يغطي وظائف مزامنة مؤشرات الترابط مثل أقفال كائن المزامنة والمتغيرات الشرطية وأقفال القراءة والكتابة وما إلى ذلك.
غير متوفريقدم بعض ميزات الإعلام لقوائم انتظار الرسائل (مثل mq_notify ())
يتطلب استدعاءات النظام مثل shmctl () والأوامر (ipcs و ipcrm) لإجراء عمليات الحالة / التحكم.يمكن فحص كائنات الذاكرة المشتركة ومعالجتها باستخدام استدعاءات النظام مثل fstat () ، fchmod ()
حجم مقطع الذاكرة المشتركة System V ثابت في وقت الإنشاء (عبر shmget ())يمكننا استخدام ftruncate () لضبط حجم الكائن الأساسي ، ثم إعادة إنشاء التعيين باستخدام munmap () و mmap () (أو mremap الخاص بـ Linux ())

التسميات: