Az SR programozási nyelv

Bevezetés

Az SR programozási nyelvet konkurens programok készítéséhez fejlesztették ki az Arizónai Egyetemen. Az SR neve - mely a Synchronizing Resources, magyarul erőforrások szinkronizálása szavak rövidítése - is erre utal. Az első változatát - mely a mai SR funkcionalitásának csak töredékét tartalmazta - 1979-ben Gregory Andrews publikálta. A nyelv legfontosabb építőkövei az erőforrások és az operációk. Az erőforrások beburkolják az operációkat és a változókat, önálló entitásnak tekintendők, önálló végrehajtási szállal. Az erőforrások közötti interakciókban az operációk játsszák a legnagyobb szerepet. Az SR tervezői az operáció-hívás és -kiszolgálás megvalósítására különböző lehetőségeket kínálnak: lehetőségünk van lokális és távoli eljárás végrehajtásra,randevú létrehozására(randevous),üzenet küldésre(message passing),process dinamikus létrehozására, multicastolásra és szemaforok készítésére.(Az SR-ben ezeket mind operációk segítségével valósítjuk meg.) Ezenkívűl lehetőségünk van osztott-memóriamodell használatára is(globális változókon keresztüli információ átadás)!

Számtalan egyetemen és kutatási laborban használták párhuzamos programozás oktatására. Konkurens programozással kapcsolatos kisérleti projektekben is kedvelt nyelv volt: párhuzamos algoritmusok, replikált adatbázisok, osztott szimulációk ill. elosztott operációs rendszerek egyes részeinek implementálása(fájlrendszerek és parancssori interpreterek). Számtalan MsC ill. doktori értekezés használta segédeszközként párhuzamos és osztott programozási kisérletek elvégzéséhez.

Az SR nyelv közvetlen előzménye volt az MPD programozási nyelvnek, mely lényegében ugyanazokkal a lehetőségekkel, de a C nyelvhez nagyon hasonló szintaxissal rendelkezik. Ennek részleteit a "Foundations in Multithreaded, Parallel and Distributed Programming" című könyv tárgyalja. További információk olvashatók Andrews és Olsson könyvében.