F. Santana, Javier Miranda, J. M. Santos, Ernestina Martel, Luis Hernández, E. Pulido
{"title":"Programming distributed systems with Group_IO","authors":"F. Santana, Javier Miranda, J. M. Santos, Ernestina Martel, Luis Hernández, E. Pulido","doi":"10.1109/EMPDP.2002.994266","DOIUrl":null,"url":null,"abstract":"This paper describes Group_IO, a software library written in Ada which facilitates the construction of distributed applications by means of the group paradigm, an abstraction which considers a set of processes as an individual entity. Group_IO provides support for replicated as well as cooperative groups. Group_IO offers a straightforward interface to reliable, atomic, causal, and uniform multicast services, and it allows client-server interactions where the client may be a process group. It relies on an own consensus protocol to implement the uniform broadcast protocols. Group_IO provides support for the client/server group (1-to-M) communication, client group/server (N-to-1) and client group/group server (N-to-M) communication. Group_IO is the basis on which the programming language Drago has been implemented.","PeriodicalId":126071,"journal":{"name":"Proceedings 10th Euromicro Workshop on Parallel, Distributed and Network-based Processing","volume":"74 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2002-01-09","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"3","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Proceedings 10th Euromicro Workshop on Parallel, Distributed and Network-based Processing","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/EMPDP.2002.994266","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 3
Abstract
This paper describes Group_IO, a software library written in Ada which facilitates the construction of distributed applications by means of the group paradigm, an abstraction which considers a set of processes as an individual entity. Group_IO provides support for replicated as well as cooperative groups. Group_IO offers a straightforward interface to reliable, atomic, causal, and uniform multicast services, and it allows client-server interactions where the client may be a process group. It relies on an own consensus protocol to implement the uniform broadcast protocols. Group_IO provides support for the client/server group (1-to-M) communication, client group/server (N-to-1) and client group/group server (N-to-M) communication. Group_IO is the basis on which the programming language Drago has been implemented.