Content area
Continuing developments in computer and communications hardware have had a great impact on Computer Science. One field particularly affected by these developments is that of operating systems.
Advances in hardware technology have stimulated research in distribution and more qualitative aspects of system design. Distribution has led to the development of distributed operating systems, capable of controlling the resources of a distributed environment. Greater interest in the qualitative aspects of system design has led to the development of more intelligent, integrated programming environments.
In this thesis, the author combines these research areas to consider the design of operating systems featuring integrated support for distribution and more intelligent programming environments. The author refers to such systems as distributed programming environments. The thesis consists of three main parts.
First, current approaches adopted in the design of distributed operating systems and programming environments are reviewed. The design approach adopted is shown to be a critical factor: the more commonly used layered approach is criticised, while it is argued that the tailored approach is ultimately more promising. The total system design approach, derived from the tailored approach, is then introduced.
Second, total system design is applied to the development of an abstract model, tailored specifically to support a distributed programming environment. It is demonstrated that this model is well suited to the support of such a system.
Third, the practical aspects of the work are reported. The model is applied to the design of the Cosmos Distributed Programming Environment. A simulation of Cosmos is described; this is followed by a proposal for a full implementation of the system.
Two principal results emerge from the thesis. Total system design is shown to be an expedient approach for the design of distributed programming environments. In addition, the proposed abstract model is shown to have a number of fundamental properties which solve many of the problems inherent with distribution and the provision of more sophisticated programming environments.