98 research outputs found
A support architecture for reliable distributed computing systems
The Clouds kernel design was through several design phases and is nearly complete. The object manager, the process manager, the storage manager, the communications manager, and the actions manager are examined
Virtual files: a Framework for Experimental Design
The increasing power and decreasing cost of computers has resulted in them being applied
in an ever widening area. In the world of Computer Aided Design it is now practicable to
involve the machine in the earlier stages where a design is still speculative, as well as in the
later stages where the computer's calculating ability becomes paramount. Research on
database systems has not followed this trend, concentrating instead on commercial applications,
with the result that there are very few systems targeted at the early stages of the
design process. In this thesis we consider the design and implementation of the file manager
for such a system, first of all from the point of view of a single designer working on an
entire design, and then from the point of view of a team of designers, each working on a
separate aspect of a design.
We consider the functionality required of the type of system we are proposing, defining the
terminology of experiments to describe it. Having ascertained our requirements we survey
current database technology in order to determine to what extent it meets our requirements.
We consider traditional concurrency control methods and conclude that they are incompatible
with our requirements. We consider current data models and conclude that, with the
exception of the persistent programming model, they are not appropriate in the context
required, while the implementation of the persistent programming model provides transactions
on data structures but not experiments.
The implementation of experiments is considered. We examine a number of potential
methods, deciding on differential files as the one most likely both to meet our requirements
and to have the lowest overheads. Measurements conducted on both a preliminary and a
full-scale implementation confirm that this is the case. There are, nevertheless, further
gains in convenience and performance to be obtained by exploiting the capabilities of the
hardware to the full; we discuss these in relation to virtual memory systems, with particular
reference to the VAX/VMS environment.
Turning to the case where several designers are each working on a (nearly) distinct part of
a design, we consider how to detect conflicts between experiments. Basing our approach on
optimistic concurrency control methods, we show how read and write sets may be used to
determine those areas of the database where conflicts might arise. As an aside, we show
how the methods we propose can be used in an alternative approach to optimistic concurrency
control, giving a reduction in system overheads for certain applications. We consider
implementation techniques, concluding that a differential files approach has significant advantages
in maintaining write sets, while a two-level bitmap may be used to maintain read
sets efficiently
Distributed file systems for Unix
With the advent of distributed systems, mechanisms that support efficient resource sharing are necessary to exploit a distributed architecture. One of the key resources UNIX provides is a hierarchical file system. Early efforts supported distributed UNIX systems by copying files and sending mail between individual machines. The desire to provide transparent mechanisms on which distributed systems access resources has propelled the development of distributed file systems. This thesis presents a brief history of the development of distributed systems based on UNIX, and surveys recent implementations of distributed file systems based on UNIX. The IBIS distributed file system is an example of the latter. The original capabilities of IBIS are discussed and modifications that enhance these capabilities described
Enhancement of computer system for applications software branch
Presented is a compilation of the history of a two-month project concerned with a survey, evaluation, and specification of a new computer system for the Applications Software Branch of the Software and Data Management Division of Information and Electronic Systems Laboratory of Marshall Space Flight Center, NASA. Information gathering consisted of discussions and surveys of branch activities, evaluation of computer manufacturer literature, and presentations by vendors. Information gathering was followed by evaluation of their systems. The criteria of the latter were: the (tentative) architecture selected for the new system, type of network architecture supported, software tools, and to some extent the price. The information received from the vendors, as well as additional research, lead to detailed design of a suitable system. This design included considerations of hardware and software environments as well as personnel issues such as training. Design of the system culminated in a recommendation for a new computing system for the Branch
Fault tolerance distributed computing
Issued as Funds expenditure reports [nos. 1-4], Quarterly progress reports [nos. 1-3], and Final report, Project no. G-36-63
Process Management and Exception Handling in Multiprocessor Operating Systems Using Object-Oriented Design Techniques
The programming of the interrupt handling mechanisms, process switching primitives, scheduling mechanism, and synchronization primitives of an operating system for a multiprocessor require both efficient code in order to support the needs of high- performance or real-time applications and careful organization to facilitate maintenance. Although many advantages have been claimed for object-oriented class hierarchical languages and their corresponding design methodologies, the application of these techniques to the design of the primitives within an operating system has not been widely demonstrated. To investigate the role of class hierarchical design in systems programming, the authors have constructed the Choices multiprocessor operating system architecture the C++ programming language. During the implementation, it was found that many operating system design concerns can be represented advantageously using a class hierarchical approach, including: the separation of mechanism and policy; the organization of an operating system into layers, each of which represents an abstract machine; and the notions of process and exception management. In this paper, we discuss an implementation of the low-level primitives of this system and outline the strategy by which we developed our solution
DIstributed VIRtual System (DIVIRS) Project
The development of Prospero moved from the University of Washington to ISI and several new versions of the software were released from ISI during the contract period. Changes in the first release from ISI included bug fixes and extensions to support the needs of specific users. Among these changes was a new option to directory queries that allows attributes to be returned for all files in a directory together with the directory listing. This change greatly improves the performance of their server and reduces the number of packets sent across their trans-pacific connection to the rest of the internet. Several new access method were added to the Prospero file method. The Prospero Data Access Protocol was designed, to support secure retrieval of data from systems running Prospero
Re-Architecting Mass Storage Input/Output for Performance and Efficiency
The semantics and fundamental structure of modern operating system IO systems dates from the mid-1960\u27s to the mid-1970\u27s, a period of time when computing power and memory capacity were a mere fraction of today\u27s systems. Engineering tradeoffs made in the past enshrine the resource availability context of computing at that time. Deconstructing the semantics of the IO infrastructure allows a re-examination of long-standing design decisions in the context of today\u27s greater processing and memory resources. The re-examination allows changes to several wide-spread paradigms to improve efficiency and performance
A comparative study of the performance of concurrency control algorithms in a centralised database
Abstract unavailable. Please refer to PDF
- …