Argus — 1982-1988-ci illərdə MİT‑də Barbara Liskov və əməkdaşları tərəfindən yaradılmış proqramlaşdırma dilidir.[1] CLU dilinin genişləndirilməsi olub, paylanmış proqramların yaradılması üçün nəzərdə tutulmuşdur.
| Argus | |
|---|---|
| Paradiqmalar | Obyekt yönümlü, paralel, paylanmış |
| Yaradılma tarixi | 1980-ci illər |
| Müəlliflər | Barbara Liskov, Maurice Herlihy, Paul Johnson, Robert Scheifler, William Weihl |
| Massaçusets Texnologiya İnstitutu (MIT) | |
| Fayl sonluğu |
.a, .argus |
| Sistem tipi | Güclü, statik |
| Əsas tətbiqlər | Argus runtime system |
| Təsirlənib | CLU |
| Təsir edib | Emerald, Java RMI |
| Lisenziya | Tədqiqat məqsədli (MIT lisenziyası altında) |
| Platforma | Çoxplatformalı |
| Əməliyyat sistemi | UNIX |
Argus mühafizəçilər (guardians) adlanan obyektlər və atom hərəkətlər (atomic actions) mexanizmi ilə fərqlənir.[1] Mühafizəçilər uzunömürlü məlumatları əhatə edir və sistem uğursuzluqlarından sağ qalır.[2]
Dil abstrakt məlumat tiplərini dəstəkləyir və seriyalaşdırma, konkurrentlik nəzarəti və fault tolerance xüsusiyyətləri təmin edir.[3][4]
Argus-da həyata keçirilmiş əsas tətbiqlərə Collaborative Editing System (CES)[5] və fault-tolerant paralel proqramlar daxildir.[6]
Argus paylanmış sistemlər və transaksiya sistemləri sahəsində əhəmiyyətli tədqiqat işi olmuşdur. Onun konsepsiyaları paylanmış transaksiya yaddaşı, middleware sistemləri və müasir fault tolerance yanaşmalarına təsir göstərmişdir.[7][8]
- ↑ 1 2 Liskov, Barbara. "Distributed programming in Argus". Communications of the ACM. 31 (3). 1988: 300–312. doi:10.1145/42392.42399.
- ↑ Liskov, Barbara; Herlihy, Maurice. Issues in process and communication structure for distributed programs. Proceedings - Symposium on Reliability in Distributed Software and Database Systems. 1983. 123–132.
- ↑ Weihl, William; Liskov, Barbara. Specification and implementation of resilient, atomic data types. Proceedings of the 1983 ACM SIGPLAN Symposium on Programming Language Issues in Software Systems. 1983. 53–64. doi:10.1145/800226.806851.
- ↑ Weihl, W.E. "Local atomicity properties: Modular concurrency control for abstract data types". ACM Transactions on Programming Languages and Systems. 11 (2). 1989: 249–282. doi:10.1145/63264.63518.
- ↑ Greif, Irene. "A case study of ces: A distributed collaborative editing system implemented in argus". IEEE Transactions on Software Engineering. 18 (9). 1992: 827–839. doi:10.1109/32.159831.
- ↑ Bal, Henri E. "Fault‐tolerant parallel programming in Argus". Concurrency: Practice and Experience. 4 (1). 1992: 37–55. doi:10.1002/cpe.4330040104.
- ↑ Siek, Konrad. "Atomic RMI: A Distributed Transactional Memory Framework". International Journal of Parallel Programming. 44 (3). 2016: 598–619. doi:10.1007/s10766-015-0361-x.
- ↑ Schmidt, Douglas C. "Applying patterns to develop extensible ORB middleware". IEEE Communications Magazine. 37 (4). 1999: 54–63. doi:10.1109/35.755450.