زبان برنامهنویسی SR (Synchronizing Resources)
SR که مخفف عبارت Synchronizing Resources (همگامسازی منابع) است، یک زبان برنامهنویسی است که با هدف اصلی تسهیل برنامهنویسی همروند (concurrent programming) طراحی شده است.
در SR، منابع (Resources) نقش کلیدی ایفا میکنند. این منابع، فرآیندها و متغیرهایی را که بین آنها به اشتراک گذاشته میشوند، در خود کپسوله کرده و قابلیت کامپایل جداگانه دارند. مکانیزم اصلی برای تعامل بین فرآیندها از طریق عملیات (Operations) صورت میگیرد.
SR با ادغام نوآورانهی مکانیزمهای فراخوانی و سرویسدهی عملیات، از روشهای مختلفی برای ارتباط و هماهنگی پشتیبانی میکند. این زبان قادر به پشتیبانی از موارد زیر است:
- فراخوانی رویه محلی و راه دور (Local and remote procedure call)
- جلسه (Rendezvous)
- ارسال پیام (Message passing)
- ایجاد پویا فرآیند (Dynamic process creation)
- پخش همگانی (Multicast)
- سمیفورس (Semaphores)
- حافظه مشترک (Shared memory)
نسخه 2.2 این زبان به پلتفرمهای مختلفی از جمله Apollo، DECstation، Data General AViiON، HP 9000 Series 300، Multimax، NeXT، PA-RISC، RS/6000، Sequent Symmetry، SGI IRIS، Sun-3، Sun-4 و موارد دیگر پورت شده است.
منابع مرتبط
- Occam
- MPD
منابع
- Gregory R. Andrews, Ronald A. Olsson: The SR Programming Language: Concurrency in Practice
- Stephen J. Hartley: Operating Systems Programming: The SR Programming Language, Oxford University Press
لینکهای خارجی
- The SR Programming Language