loading 
register   login

The Multics System: An Examination of Its Structure

by: Elliott I. Organick
en

0262150123  9780262150125 

 

 

The Multics System: An Examination of Its Structure
By Elliott I. Organick



 


The Multics project began at M.I.T. in the fall of 1964 and became, by early
1965, a cooperative effort involving the Bell Telephone Laboratories, the
computer department of the General Electric Company, I and Project MAC of
M.I.T. 2 The goals and aspirations of the project were comprehensively set out
in a series of six papers presented at the 1965 Fall Joint Computer
Conference. 3 The essence of these goals was to develop a working prototype
of a computer utility embracing the whole complex of hardware, software,
and users that would provide a desirable as well as a feasible model for other
system designers to study. The system was offered for general use at M.I.T. in
October 1969.
From the inception of the project, a principal objective has been the
transmittal to others of the knowledge and understanding of system
organization that would come out of the effort. As a first step in this
direction two major policies were established from the beginning. The first
policy declared that all program modules were to be designed and thoroughly
specified before implementation; the second policy stated that all modules
were to be programmed in the PL/I language 4 so that the design issues would
be more lucidly expressed. It was recognized, however, that the system in the
form of program modules and specification would never be self-explanatory.
Clearly there would have to be a variety of other means employed to
illuminate the system mechanisms. Most important, there would have to be
comprehensive descriptions giving perspective to key ideas of the
implementation.
Thus, the present book must be viewed as part of the task of transferring
to others the knowledge embedded in the Multics implementation. The
Multics project was most fortunate in being able to attract the interest of
Professor Elliott Organick, whose previous works of technical exposition have
received wide distribution. It is indeed seldom that a computer operating
system has obtained such a competent external view even while it was under
development. Many difficulties had to be overcome. Professor Organick had
to learn about the system in periods of intense development and redesign, andoften he had to obtain key information by interviewing busy programmers or
by reading hastily written memoranda. During these periods, his patience,
tact, and open-mindedness were especially appreciated by the members of the
development team.
The structure of this book is best understood from its origins. One of the
goals that was set for the Multics system was that it should serve as a
foundation upon which persons other than the system designers could build
complicated and sophisticated software subsystems. If done well, such a
foundation would remove many of the burdens and technical concerns that a
subsystem designer might have. Nevertheless, it was realized that even the
expert programmer would have to have a detailed understanding of the many
mechanisms he was relying upon if he were to use the novel aspects of the
system effectively. For this reason Professor Organick initially set out to
write a guide for subsystem writers that would give them a better
comprehension of the system mechanisms they were to depend on. It was
soon apparent from the drafts of the first chapter that such a limited goal
could not be achieved out of the context of a full integrated description of
the system. Professor Organick then began a systematic study of the system
from the ground up, beginning with the hardware modifications that
transformed the GE 635 computer into the GE 645. He gradually developed
chapter after chapter describing the fundamental structure of the system. It is
a testimonial to his diligence and perseverence that the present work correctly
describes the system up to the fall of 1970, even though both system and
book have evolved in major ways since he started.
Today the Multics system is by most standards a large one involving about
1500 modules each averaging 200 typewritten lines; the full system compiles
into about a million lines of code. Yet the system is probably one of the few
in the world of such size that is well-suited for long-term evolution and that
within a certain class of machines can be installed on new hardware
foundations. But whether one is attempting to modify the system or to
develop similar operating systems, one needs to have an understanding of the
many ideas and internal strategies that must harmoniously and selfconsistently
work together. The listings of the system are far too detailed and
frequently obscure the intentions of the programmer-designers who
developed the modules. The original papers on Multics describing the goals
and objectives are vague when it comes to specific details. The external
specifications of how one uses the system do not attempt to describe with
any depth the means by which the mechanisms are accomplished. In shortthis book fills a void by developing key expository paths through the system.
This book represents the first generally available comprehensive description
of the Multics system that exposes the key mechanisms required for the
computer utility goals. The approach taken parallels the system development
and thereby ensures that each idea is built upon a firm description of the
earlier ideas. This method of presentation has the advantage that the reader is
able to cfimb upward from the foundations of the system, never having to
doubt whether some major ideas or mechanisms have been glossed over. By
contrast, many of the published papers on Multics have the quality of aerial
photographs, where although it is clear that one has an excellent overview,
one is not always certain what lies beneath the surface. The difficulty with
the papers is that, even taken as a whole, they are still fragmentary and
incomplete. Thus, the present book represents a major milestone in the
descriptive history of the Multics system.
This foreword would not be complete without expressing the warm
gratitude of the Multics development staff towards Professor Organick. For
he brought to the effort, not only his expository talents, but a sustained
enthusiasm that significantly contributed to the success of the Multics system
development.
Finally, I would like to express my personal pleasure in having the
privilege of working with Professor Organick during the development effort.
His preserce at M.I.T. as a colleague during 1968 to 1969 will be
remembered, not only for his technical contributions, but also for those
qualities of his spirit which mark a scholar, a gentleman, and a friend.
F. J. Corbat6
Cambridge, Massachusetts
December 13, 1971

Summary: Clear explanation of early Multics design
Rating: 5

Organick describes the design of Multics, a mainframe timesharing system that was one of the most influential software efforts of the late 1960s. The book describes the internals of the Multics system with a clarity and thoroughness that set a standard for other writers on operating systems. The book describes Multics as it was planned in the late 1960s, before it had been released to users, and it describes the version of the system that ran on the GE-645 computer. Multics became a commercial product from Honeywell on a substantially enhanced machine and continued to evolve for 20 years, so readers should understand that they are reading about the system designers' intentions and plans, and not necessarily about features of the commercial system. (disclosure: I worked on Multics in the 60s and helped review drafts of some chapters of this book before publication.)