Horus: A Flexible Group Communications System

This paper reports on the Horus project, whichprovides an unusually flexible group communication model to application-developers. This flexibility extends to system interfaces, the properties provided by a protocol stack, and even the configuration of Horus itself, which can run in user space, in a...

Full description

Bibliographic Details
Main Authors: Robbert Van Renesse, Kenneth P. Birman, Silvano Ma Eis
Other Authors: The Pennsylvania State University CiteSeerX Archives
Format: Text
Language:English
Published: 1996
Subjects:
Online Access:http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.23.9752
http://www.softwired.ch/people/maffeis/articles/research/cacm96.pdf
Description
Summary:This paper reports on the Horus project, whichprovides an unusually flexible group communication model to application-developers. This flexibility extends to system interfaces, the properties provided by a protocol stack, and even the configuration of Horus itself, which can run in user space, in a operating system kernel or microkernel, or be split between them. Horus is used through an interfaceproxy.Proxies can support toolkits that use groups explicitly, or hide groups beneath parallel programming back-ends (for example, the Panda subsystem of the Orca language [2], and IBM's PCODE subsystem for MPI). Finally,wehave developed a proxy that intercepts certain classes of system calls and maps them into Horus operations, for example to provide security or fault-tolerance features transparently [3]. This proxy has also been used to embed Horus into Tcl/TK and Python, both popular prototyping languages