Survey of Recent Operating Systems Research, Designs and Implementations
1.0 INTRODUCTION This paper surveys the recent theoretical and experimental advancements in the operating systems area. On the theoretical side much effort is being expended in rigorously defining the specifications and the logical structure (the hierarchical levels approach, the kernel approach with user defined subsystems, and so on) of an operating system, deriving proofs about the satisfaction of many properties (deadlock-free, synchronization constraints, protection requirements, and so on) and in proposing new theories, models and constructs. Researchers make extensive use of the results in the areas of graph theory, automata theory, operations research, computer architecture and software engineering. On the experimental side new operating systems with novel features are being designed and implemented. With the increased use of computers for solving many complex tasks on dedicated and general purpose systems, operating systems are required to provide many new facilities. Existing systems are being used for various experimental investigations testing different hypotheses (about new memory management policies, scheduling disciplines, interprocess communication facilities, performance monitoring, process structures, and so on). Operating systems are being modified to enhance their capabilities (like providing virtual machines, support for new devices and multilevel storage hierarchies, parallel processing capabilities, and so on). The developments in the areas of firmware, data base management and distributed processing are also having a great impact on the operating systems area. As one reads through this paper the interplay of these various factors will become apparent. This paper is the result of an attempt to collect together much information and provide pointers to the relevant literature.