ارتباط بین پردازشی

در علوم رایانه، ارتباطات بین پردازشی (به انگلیسی:Inter-Process Communication یا IPC)، مجموعه ای از روشها برای تبادل اطلاعات بین چندین پردازش خرد و کوچک (یا ریسه) میباشند، و بنابراین هر یک از این روشها میتواند برای ارتباط بین یک یا چند پردازش بکار میروند. ممکن است این پردازشها در یک یا چندین رایانه متصل بهم توسط یک شبکه اجرا گردند. ارتباطات بین پردازشی به روشهای زیر تقسیم گردیده‌اند:

  • روشهای عبور پیام
  • روشهای همسانسازی
  • روشهای به اشتراک گذاشتن حافظه
  • روشهای فراخوانی روال از راه دور (RPC)

امکان دارد روشهای مورد استفاده در ارتباطات بین پردازشی با توجه به پهنای باند عبوری، زمان تاخیر در ارتباط بین ریسه‌ها، نوع داده در حال عبور، و همچنین سیستم‌عامل متفاوت از یکدیگر باشند.[1]

روشها

روشتامین‌شده توسط سیستم‌های عامل یا محیط‌های دیگر
پروندهبیشتر سیستم‌های عامل
سیگنالبیشتر سیستم‌های عامل، برخی سیستم‌ها مانند ویندوز فقط سیگنالها را در C run-time library پیاده‌سازی نموده و به عنوان روشی برای IPC پشتیبانی نمی‌کنند.
کانال شبکه یا Socketبیشتر سیستم‌های عامل
صف پیامبیشتر سیستم‌های عامل
لوله‌کشی (یونیکس)همه سیستمهای پازیکس، ویندوز
Named pipeهمه سیستمهای پازیکس، ویندوز
نشانبر یا Semaphoreهمه سیستمهای پازیکس، ویندوز
حافظه مشترکهمه سیستمهای پازیکس، ویندوز
Message passing
(shared nothing)
استفاده شده در نمونه MPI, فراخوانی متد راه دور جاوا, کوربا, MSMQ, MailSlot, کیوان‌اکس, غیره
فایل حافظه نقشه‌شدههمه سیستمهای پازیکس، ویندوز
وب سرویسهمه سیستمها

منابع

This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.