Distributed processing
Operating systems and projects
[See "Inferno" and "Plan9" sub-pages].
We propose to build hardware and software to enable a network of workstations (NOW) to act as a single
large-scale computer. Because of volume production, commercial workstations today offer much better
price/performance than the individual nodes of MPPs; in addition, switch-based networks such as ATM will
provide cheap, high-bandwidth communication. This price/performance advantage is increased if the NOW
can be used for both the tasks traditionally run on workstations and large programs. We hope to demonstrate a
practical 100 processor system in the next few years that delivers at the same time (1) better cost-performance
for parallel applications than a massively parallel processing architecture (MPP) and (2) better performance
for sequential applications than an individual workstation (by using more of the resources of the network). If
projects like NOW are successful, they have the potential to redefine the high-end of the computing industry.
REMOS is an object-oriented environment aimed to build distributed real time data acquisition (DAQ)
systems. Different paradigms have been proposed for distributed object-oriented programming, each with
advantages and disadvantages, according to the kind of application they were used for. We chose a shared
memory model, as we wanted to achieve the maximum possible performance with the hardware that is
currently available for DAQ, typically VME and VSB bus based systems connected in a network of VIC (VME
Inter Crate) busses.
The SOS system support object creation, deletion, remote invocation, migration, and long-term storage. It also
provides for grouping of "elementary" objects into distributed groups called Fragmented Objects.
List of distributed and OO operating systems maintained (?)
at U Arizona.
The project aims to study the merits of parallel programming primitives in a distributed operating
system. Emphasis is on the integration and evaluation of explicit runtime support tools for parallel
programming with the underlying distributed operating system.
Web resources page maintained by Prof. Rumen Stainov.
The MIT LCS Parallel and Distributed Operating Systems group
builds and investigates software systems for parallel and
distributed environments. We have conducted research in
operating systems, networking, mobile computing, language
design, compiler design, and architecture, taking a pragmatic
approach: our focus is on high-performance, reliable, and working
systems.
(Chapter in "Open Distributed Systems" by Jon Crowcroft ).
The Flux Research Group works in software systems. Our interests and work include many areas, including
both local and distributed operating systems, information and resource security, networking, programming
and non-traditional languages, compilers, component-based systems, and even a pinch of software
engineering and formal methods. We also try to produce and distribute usable versions of the developed
software.
Legion is an object-based, meta-systems software project at the
University of Virginia.
From the project's beginning in late 1993, the Legion Research Group's
goal has been a highly useable, efficient, and scalable system founded
on solid principles. We have been guided by our own work in object-oriented
parallel processing, distributed computing, and security, as well as by
decades of research in distributed computing systems.
Our system addresses key issues such as scalability, programming ease,
fault tolerance, security, site autonomy, etc.
Legion is designed to support large degrees of parallelism in
application code and manage the complexities of the physical system for
the user. The first public release was made at Supercomputing '97,
San Jose, California, on November 17, 1997.
PEGASUS aims to design an operating system architecture for scalable distributed multimedia
systems and to develop a validating prototype. A distributed complex-object service and a global name service
will be designed and implemented. Mechanisms for the creation, communication, and rendering of fully digital
multimedia documents in real time and in a distributed fashion will be developed (with support for full-screen
digital motion video and digital hi-fi stereophonic sound). An application for the system (a digital TV director)
will be designed and implemented.
Sony Corp's project. See Technical Papers.
In this project we are investigating the requirements of an
operating system to support persistence and propose to design and construct a new operating system,
known as Grasshopper, which has explicit support for persistent systems.
[Also see
Grasshopper: An orthogonally persistent operating system].
[See also
The Clouds Distributed Operating System].
Choices is written as an object-oriented operating system in C++. As an object-oriented operating system,
its architecture is organized into frameworks of objects that are hierarchically classified by function and
performance. The operating system is customized by replacing subframeworks and objects. The
application interface is a collection of kernel objects exported through the application/kernel protection
layer. Kernel and application objects are examined through application browsers.
[Also see
University of Illinois, Urbana-Champaign web page].
Cronus is a distributed computing environment currently under
development at BBN Systems and Technologies. Its major goal is to
provide a coherent and integrated environment in which distributed
applications can easily be built.
[Copy also
here ].
[Also see
Chorus FAQ].
A new operating system based on a single, flat virtual address space, orthogonal persistence, and a strong
but unintrusive protection model.
Languages
Every object in a Joule system, from complex databases and bank
accounts down to simple arrays and numbers, is a server. To get
a server to do work (that is, to make use of its service), you send
a message to it. (For example, you could send a get: message to
an array server to obtain one of its elements.)
Distributed memory
List of resources maintained by Pete Keleher.
PVM enables users to exploit their existing computer hardware to solve much larger problems at minimal
additional cost. Hundreds of sites around the world are using PVM to solve important scientific, industrial, and
medical problems in addition to PVM's use as an educational tool to teach parallel programming. With tens of
thousands of users, PVM has become the de facto standard for distributed computing world-wide.
Distributed Algorithms
The purpose of this page is to provide a single entry-point to all sorts
of pointers relevant to research in distributed algorithms and systems. We
therefore explicitly solicit any references to information that might be of
interest to this community, e.g. conference announcements and
calls-for-papers, pointers to institutes, projects, literature,
bibliographies, special pages describing a particular research area, and many
more.
FAQ's
HTML version of frequently answered questions for comp.os.research.
This resource is maintained by Bryan O'Sullivan,
and is copyrighted (c) 1993--1995 by him; see the notice of copyright
for further information. ...
[Another copy here ].
Local compressed copy dated 1 Jul 1995 08:58:10 GMT.
Maintained at
rtfm.mit.edu.
Papers
Prospero is implemented on top of a message-based protocol to reduce the overhead that would otherwise be
incurred when establishing connections to multiple directory servers. The decision to use a message protocol
directly, instead of through a higher level mechanism such as remote procedure call, was made for reasons of
portability. We did not want Prospero to depend on another protocol, software package, or other resource,
unless that resource was almost universally supported by every computer on the Internet.
As part of an on-going coordination activity between DARPA/ITO and the National Computer Security Center
(NCSC) on operating systems security research, the Operating Systems Security Working Group (OSSWG) of
the DARPA/NSA/DISA Joint Technology Office (JTO) has drafted this list identifying a number of
challenging problems in end system security. Comments, suggested modifications, and amendments to the list
are welcome.
Fueling the current microkernel frenzy is the recent fragmentation of the operating-system market. With no one vendor a clear winner in the operating-system sweepstakes, each needs to be able to support the others' applications. AT&T
tried this tack a few years ago with Unix System V release 4.0, by including support for the Berkeley and Xenix extensions. But while SVR4 has done well enough, it hasn't been the grand unification of Unix for which AT&T (now Novell's
USL) had hoped. On the other hand, Microsoft's NT seems to have succeede d--at least in this respect--by being the first to unify multiple subsystems capable of running Win32, Win16, DOS, OS/2, and Posix applications. IBM is
responding with a portable successor to OS/2, the Workplace OS. Its truly modular operating-system architecture, with plug-and-play components and multiple operating-system personalities, may advance expectations still further.
Atomic transactions are useful in distributed systems as a means of providing reliable operation in the face of
hardware failures. Nested transactions are a generalization of traditional transactions in which transactions
may be composed of other transactions. The programmer may initiate several transactions from within a
transaction, and serializability of the transactions is guaranteed even if they are executed concurrently. In
addition, transactions invoked from within a given transaction fail independently of their invoking transaction
and of one another, allowing use of alternate transactions to accomplish the desired task in the event that the
original should fail. Thus nested transactions are the basis for a general-purpose reliable programming
environment in which transactions are modules which may be composed freely.
This paper highlights some of the lessons learned during the course of implementing xFS, a fully distributed
file system. xFS is an interesting case study for two reasons. First, xFS's serverless architecture leads to more
complex distributed programming issues than are faced by traditional client-server operating system services.
Second, xFS implements a complex, multithreaded service that is tightly coupled with the underlying
operating system.
The more computer systems control a larger part of our designed environment, the more dependent we
become upon how well such systems function. A high degree of safety is therefore necessary. This means that
the systems have to react on time, that they have to be available and that they also have to be safeguarded and
robust. All these factors are lumped together in computing science jargon under the term dependability.
Dependability is essential for real-time operating systems and for embedded systems, in which the hardware
together with the software is made an invisible part of the machine to be controlled. Such embedded systems
are becoming more widespread being used, for example, in aviation, in the processing industry and in discrete
production.
Exokernel is a new operating system architecture that securely multiplexes machine resources while
permitting a high degree of application-specific customization of traditional operating system abstractions. By
abstracting physical hardware resources, traditional operating systems have significantly limited the
performance, flexibility, and functionality of applications. The exokernel architecture removes these limitations
by allowing untrusted software to implement traditional operating system abstractions entirely at
application-level.
Computer Science Technical Reports
Search Index. Computer Science Bibliography Glimpse Server,
University of Toronto Publication Archives. Books, Papers, and
Bibliographies at CMU. CMU Index of On-line CS ...
Bibliographies
M. Rasit Eskicioglu, Department of Computer Science, University of New Orleans. New
Orleans, LA 70148.
rasit@cs.uno.edu.
Shared memory is an attractive
programming model for designing parallel and distributed
applications. In the ...
Local bibliographies (22075 references).
Bib's on distributed file systems,
distributed computing,
distributed systems,
distributed simulation,
optical communication networks.
Includes bib's on MACH, ISODE, CHORUS, and Amoeba. Query: ...
475 references.
All references gzip-ped.
Last update of
local copy: November 22, 1993. Most recent reference: 1993.
Supported: no. Bibliography reference (should accompany every copy
of the bibliography). Query: ...
Bibliotheca magnetica patens omnibus
hominis-ordinatorisque societas. Gary Perlman, Ohio State University,
Columbus, Ohio 43210 USA. Keywords: Human-computer interaction,
Bibliographic information, Research Aids, Distributed group work, ...
163 references.
All references gzip-ped; converted from refer format.
Last update of local copy: January 10, 1995.
Most recent reference: 1994. Query: ...
Kym Horsell /
Kym@KymHorsell.COM
ADVISORY:
Email to these sites is filtered. Unsolicited email may
be automajically re-directed to the relevant postmaster.