October 1981 - Vol. 24 No. 10
Features
A history and evaluation of System R
System R, an experimental database system, was constructed to demonstrate that the usability advantages of the relational data model can be realized in a system with the complete function and high performance required for everyday production use. This paper describes the three principal phases of the System R project and discusses some of the lessons learned from System R about the design of relational systems and database systems in general.
Computer information systems and organization structure
A study of Computer Information Systems and Management (CISM) is described and selected results relating to changes in organizational structure in eight organizations are presented. In five of the organizations no changes in formal structure accompanied the introduction of CIS. Where organizational changes did occur, the existing structure of the organization was usually reinforced. These findings suggest that CIS is a flexible tool that is compatible with a variety of organizational design options and not a cause of design per se.
Low contention semaphores and ready lists
A method for reducing semaphore and ready-list contention in multiprocessor operating systems is described. Its correctness is established. Its performance is compared with conventional implementations. A ready list implemented as a ring network is proposed and evaluated.
An experiment in high level language microprogramming and verification
The STRUM system was created to apply software engineering techniques to microprogramming. It provides the tools that allow the microprogrammer to use high level language, structured programming, and formal program verification to create emulations for a horizontally microprogrammed computer. This system is evaluated in two parts: (1) High level microprogramming language design and its use in structured microprogramming; and (2) Verification of a large microprogram. Both parts of this evaluation include experimental results. Part I includes a comparison of an emulation created using traditional techniques to the same emulation created using the STRUM system. Part II describes the formal verification of a 1700 line program that was immediately subjected to extensive testing. This work provides new results on the efficiency of high level microprogramming languages, the effectiveness of peephole optimization for microcode and the practicality of formal microprogram verification.