Introduction%20and%20Overview%20of%20the%20Multics%20Operating%20System - PowerPoint PPT Presentation

About This Presentation
Title:

Introduction%20and%20Overview%20of%20the%20Multics%20Operating%20System

Description:

Multics (Multiplexed Information and Computing Service) is a mainframe ... 4. Industrial Nucleonics. 5. University of SW Louisiana. 6. French University System ... – PowerPoint PPT presentation

Number of Views:741
Avg rating:3.0/5.0
Slides: 37
Provided by: Sha5174
Learn more at: http://www.cs.iit.edu
Category:

less

Transcript and Presenter's Notes

Title: Introduction%20and%20Overview%20of%20the%20Multics%20Operating%20System


1
Introduction and Overview of the Multics
Operating System
2
  • Multics (Multiplexed Information and Computing
    Service) is a mainframe timesharing operating
    system begun in 1965 and used until 2000. The
    system was started as a joint project by MIT
    Project MAC, Bell Telephone Laboratories, and GE.
    Prof. F. J. Corbato of MIT led the project.

3
  • Bell Labs withdrew from the development effort in
    1969, and later GE sold its computer business to
    Honeywell, which continued Multics development
    and offered Multics as a commercial product.

4
  • Multics began as a research project and was an
    important influence on operating system
    development. The system became a commercial
    product sold by Honeywell to education,
    government and industry. Multics was a
    comprehensive, general-purpose programming
    system. The initial Multics system was
    implemented on the GE 645 computer.

5
  • Multics ran on a special expensive CPU hardware
    that provided a segmented, paged, ring-structured
    virtual memory. The system was a symmetric
    multiprocessor with shared physical and virtual
    memory. most of the programming of the system was
    done in the PL/I language.

6
NINE GOALS PROPOSED FOR THE NEW OPERATING SYSTEM
  • 1.      Convenient remote terminal access as the
    normal mode of system usage.
  • 2.    A view of continuous operation analogous to
    that of the electric power and telephone
    companies.
  • 3.    A wide range of capacity to allow growth or
    contraction without either system or user
    reorganization.
  • 4.    An internal file system so reliable that
    users trust their only copy of programs and data
    to be stored in it.
  • 5.    Sufficient control of access to allow
    selective sharing of information.
  • 6.    The ability to structure hierarchically
    both the logical storage of information as well
    as the administration of the system.
  • 7.    The capability of serving large and small
    users without inefficiency to either.
  • 8.    The ability to support different
    programming environments and human interfaces
    within a single system.
  • 9 The flexibility and generality of system
    organization required for evolution through
    successive waves of technological improvements
    and the inevitable growth of user expectations.

7
NOTABLE FEATURES OF MULTICS
  • 1.    Segmented Memory
  • 2.    Virtual Memory
  • 3.    High-Level Language Implementation
  • 4.    Shared Memory Multiprocessor
  • 5.    Multi-Language Support
  • 6.    Relational Database
  • 7.    Security
  • 8.    On-line Reconfiguration
  • 9 Software Engineering

8
Segmented Memory
  • The Multics memory architecture divides memory
    into segments. Each segment is 1MB long, and has
    a zero address. Each segment has addresses from 0
    to 256K words (1 MB). The file system is
    integrated with the memory access system so that
    programs access files by making memory
    references. Multics was the first operating
    system to introduce a true hierarchical storage
    system, in which a directory could contain other
    directories.

9
Virtual Memory
  • Multics uses paged memory in the manner
    pioneered by the Atlas system. Addresses
    generated by the CPU are translated by hardware
    from a virtual address to a real address. A
    hierarchical three-level scheme, using main
    storage, paging device, and disk, provides
    transparent access to the virtual memory.

10
High-Level Language Implementation
  • Multics was written in the PL/I language, which
    was, in 1965, a new proposal by IBM. Programming
    Language 1 was invented by George Radin of IBM
    in 1964. Combining scientific features from
    FORTRON, business features like records from
    COBOL, and block structuring from Algol, PL/Is
    future looked rosy in 1965 when the team chose it
    for the Multics system. Only a small part of the
    operating system was implemented in assembly
    language. Writing an OS in a high-level language
    was a radical idea at the time.

11
Shared Memory Multiprocessor
  • The Multics hardware architecture supports
    multiple CPUs sharing the same physical memory.
    All processors are equivalent.

12
Multi-Language Support
  • In addition to PL/I, Multics supports BCPL,
    BASIC, APL, FORTRAN, LISP, C, COBOL, ALGOL 68 and
    Pascal. Routines in these languages can call each
    other.

13
 Relational Database
  • Multics provided the first commercial relational
    database product, the Multics Relational Data
    Store (MRDS), in 1978. MRDS provided a
    command-level interface for defining databases
    and views (called data sub-models), and a
    call-level interface for queries and data
    manipulation.

14
 Security
  • Multics was designed to be secure from the
    beginning. In the 1980s, the system was awarded
    the B2 security rating by the US government NCSC,
    the first (and for years only) system to get a B2
    rating.

15
 On-line Reconfiguration
  • As part of the computer utility orientation,
    Multics was designed to be able to run 7 days a
    week, 24 hours a day. CPUs, memory, I/O
    controllers, and disk drives can be added to and
    removed from the system configuration while the
    system is running.

16
Software Engineering
  • The process of system programming for Multics
    showed how unique properties of the process lead
    to unique properties of the operating system,
    such as ease of use, ease of maintenance, and
    high reliability. High-level language, design
    and code review, structured programming,
    modularization and layering were all employed
    extensively to manage the complexity of the
    system, which was one of the largest software
    development efforts of its day.

17
Design Features of the Hardware
  • The Multics system objectives required equipment
    features that were not present in any existing
    computer. Consequently it was necessary to
    develop for the Multics system the GE 645
    computer. The GE 635 computer was selected for
    modification to the GE 645 inasmuch as it already
    satisfied many of the crucial requirements

18
Design Features of the Hardware
  • The communication pattern is particularly
    straight forward since there are no physical
    paths between the processors and the input/output
    equipment rather all communication is done by
    means of "mailboxes" in the memory modules and by
    corresponding interrupts. Furthermore, major
    modules of the system communicate on an
    asynchronous basis thus, any single module can
    be upgraded without any changes to the other
    modules. This latter property is useful in that
    one of the ways in which system capacity (and
    cost) may be regulated is by changing either the
    speed or number of memory modules.

19
Design Features of the Hardware
  • All central processors (CPU) and Generalized
    Input/Output Controllers (GIOC) have
    communication paths with each of the memory
    modules. When necessary for maintenance or test
    purposes, the system can be partitioned into two
    independent systems. The remote terminals can
    dial either of the two GIOC through the private
    branch exchange

20
Design Features of the Hardware

21
Design Features of the Hardware

This system is organized into program segments or
regions, each of which contains an ordered
sequence of words with a conventional linear
address. These segments, which can vary in length
during execution, are paged at the discretion of
the supervisor program with either 64 or 1,024
word pages. This dual page size allows the
supervisor program to use more effective
strategies in the handling of multiple users.
22
Design Features of the Software

An important aspect of the software is the
subroutine and linkage conventions, which are
associated with the use of the segment and paging
hardware.
23
Design Features of the Software

The following features are incorporated.
  1.   Any segment has to know another segment
only by symbolic name. Inter-segment binding
occurs dynamically as needed during program
execution. Inter-segment binding is automatic
(i.e., not explicitly programmed by the user) and
the mechanism operates at high efficiency after
the first binding occurs. 2.   Similarly, a
segment is able to reference symbolically a
location within another segment. This reference
binds dynamically and automatically after
binding occurs the first time, program execution
is at full speed. 3.   It is straightforward for
procedures to be pure procedures, capable of
being shared by several users. 4.   Similarly,
it is straightforward to write recursive
procedures (i.e., subroutines capable of calling
on themselves either directly or indirectly by a
circular chain of calls). 5.   The general
conventions are such that the call, save, and
return macros used to link one independently
compiled procedure to another do not depend on
whether or not the two procedures are in the same
segment. 6.   Each user is provided with a
private software "stack" for temporary storage
within each subroutine. Of course, any user can
choose to ignore this storage mechanism, but it
is available and does not have to be added as an
afterthought by a subsystem designer.
24
Design Features of the Software

Further features, which should ultimately appear
in the system, are   1.   The ability to have
one process spawn other processes which run
asynchronously on several processors (thus
improving the real-time response of the overall
process) 2.   The ability for databases to be
shared among simultaneously operating programs.
In addition the system will include all the major
features of the present Project MAC system such
as inter-console messages and macro-commands. The
latter allow users to concatenate sequences of
console-issued commands as short programs thereby
forming more elaborate commands, which can be
used with a single name and parameter call. 3.
Another feature of the system is that it will
include batch-processing facilities as a subset.
In particular, users will start processes which
may have n terminals attached, with n 1 for
individual man-machine interaction, and n 0 for
running an absentee-user program, the latter case
corresponding to batch processing.
25
Design Considerations in the File System

The file system is a key part of a time-sharing
or multiplexed system. It is a memory system,
which gives the users and the supervisor alike
the illusion of maintaining a private set of
segments or files of information for an
indefinite period of time. This retention is
handled by automatic mechanisms operated by the
supervisor and is independent of the complex of
secondary storage devices of different capacity
and access.
26
Design Considerations in the File System

Of considerable concern is the issue of privacy.
Experience has shown that privacy and security
are sensitive issues in a multi-user system where
terminals are anonymously remote. For this
reason, each user's files can be arranged to be
completely private to him. In addition, a user
may arrange to allow others to access his files
selectively on a linking basis. The linking
mechanism permits control over the degree of
access one allows
27
Design Considerations in the File System

The file system allows files to be simultaneously
read but automatically interlocks file writing.
The file system is designed with the presumption
that there will be mishaps, so that an automatic
file backup mechanism is provided. The backup
procedures must be prepared for contingencies
ranging from a dropped bit on a magnetic tape to
a fire in the computer room.
28
Design Considerations in the File System

The general backup mechanism is provided by the
system rather than the individual user, for the
more reliable the system becomes, the more the
user is unable to justify the overhead (or
bother) of trying to arrange for the unlikely
contingency of a mishap. Thus an individual user
needs insurance, and, in fact, this is what is
provided.
29
Design Considerations in the Communication and
Input/Output Equipment

A design feature of the system is that users can
view most input/output devices uniformly. Thus a
program can read from either a terminal or a disk
file, or output can be sent either to a file or
to a punch, a typewriter, or a printer. In
particular, the user of the system does not have
to rewrite his program to change these
assignments from day to day or from use to use.
The symmetric use of equipment is, of course,
highly desirable and makes for greater simplicity
and flexibility.
30
Design Considerations in the Communication and
Input/Output Equipment

For those users who wish to have remotely located
satellite substations capable of punching and
reading cards and line printing, there are a
variety of options available. Because the design
of the General Input/Output Controller is
relatively flexible, it is possible to use the GE
115, the Univac 1004, or virtually any other
similar sub computer as a terminal, provided one
is prepared to implement the necessary interface
program modules within a Multics system.
31
Multics Installations A Brief History of
Events

  1.      Air Force Data Services Center 2.     
General Motors 3.      Ford 4.      Industrial
Nucleonics 5.      University of SW
Louisiana 6.      French University
System 7.      US Air Force In 1980s saw a
very large number of Multics sales in France
Europe. Multics received the B2 rating from the
NCSC in August 1985, the culmination of a long
effort.
32
Multics Installations A Brief History of
Events

In the mid-80s, Multics customers tried to
pressure Honeywell to produce a faster Multics
machine. The 8/70M was a generation behind
competitors' hardware and Honeywell had no
announced plans to produce new Multics
processors. Many of the existing customers
defected when the found that the operating system
was not supported by the company.
33
Multics Installations A Brief History of
Events

A HLSUA Task Force was formed in April 1986 to
look at migration from Multics to the DPS 6 Plus,
following a presentation by Gene Manno at HLSUA.
Members were Vince Scarafino (Ford), Bob Kansa
(EDS), Paul Amaranth (Oakland University), Norm
Powroz (Canadian DND), and Norm Barnecut
(University of Calgary). By 1987, Honeywell had
backed away from supporting key elements of
Multics function on the DPS 6 Plus.
34
Multics Installations A Brief History of
Events

Multics development was canceled by Honeywell in
July 1985. (This was Honeywells sixth attempt to
cancel the system. The decision was made in
November 1984 by Gene Manno, and announced the
following July.) In 1985, Multics was the only
profitable product in the Office Marketing
Systems Division
35
Multics Installations A Brief History of
Events

The last Multics system running, the Canadian
Department of National Defense Multics site in
Halifax, Nova Scotia, Canada, shut down October
31, 2000 at 1708 hours. This system was modified
to be Y2K compliant and was the main production
system until Sept/00.
36
Conclusion

Sadly, Multics was not commercially successful
but the Multics "utility" is where today's
Internet is now headed. Multics was replaced by
another time-sharing system, the name of which
made fun of Multics -- Unix. So, yes, the "x" in
Linux is from Multics.
Write a Comment
User Comments (0)
About PowerShow.com