Search the FAQ Archives

3 - A - B - C - D - E - F - G - H - I - J - K - L - M
N - O - P - Q - R - S - T - U - V - W - X - Y - Z
faqs.org - Internet FAQ Archives

FAQ Multics General


[ Usenet FAQs | Web FAQs | Documents | RFC Index | Restaurant inspections ]
archive-name: multics/general
URL: //www.multicians.org/general.html

See reader questions & answers on this topic! - Help others by sharing your knowledge
================================================================= 
The Multics FAQ continues to improve as people contribute information.
Please post updates to alt.os.multics or mail to <webmaster@multicians.org>
=================================================================
Q) What is the purpose of this group?
A) This group is for the discussion of the Multics operating system.
   Discussion sometimes strays onto topics of interest to Multicians, e.g.
      - Honeywell hardware architecture
      - CTSS, DTSS and other ancestors
      - Honeywell management mistakes and if-onlys
      - PRIMOS, GCOS Timesharing, UNIX, and other cousins and descendants  
   For discussions of the history of other operating systems, try 
   alt.folklore.computers or the groups dedicated to these systems.

   alt.os.multics is a public unmoderated newsgroup with an estimated 
   readership of thousands.  If you have a comment of limited interest, 
   please use e-mail instead.
=================================================================
Q) How can I view alt.os.multics via the web?
A) Go to http://www.google.com/ and click Groups,
   then enter alt.os.multics and return.  You may wish to sort by date.
=================================================================
Q) What other sources are available on-line to find out more
about Multics? 
A1) There is a large set of Multics Web pages available at
        http://www.multicians.org/
   including hypertext versions of the FAQ files, the 250K
   Multics Glossary, papers, stories, and pictures of
   Multicians and 6180s. There are 208 HTML pages
   comprising over 1,000,000 lines and 353 graphic images.
    
   Paul Green mirrors this information at Stratus at
        ftp://ftp.stratus.com/pub/vos/multics/tvv/multics.html

A2) There is a closed Yahoo Groups mailing list for Multicians.
    It currently has 120 members.
    Apply at http://groups.yahoo.com/group/multicians/
    
A3) Al Kossow has a large collection of scanned Multics manuals 
   online at
      http://www.bitsavers.org/pdf/honeywell/multics/

A4) The LinkedIn group "multicians" has been set up for Multicians 
   who use the LinkedIn social networking site.
   It currently has 184 members.
   To join it, send mail to the editor.

A5) There is a "fan page" for Multics on Facebook, open to
   any Facebook user.
      http://www.facebook.com/pages/Multics/47514482155
   It currently has 91 fans.

================================================================= 
0.      FAQ documents posted monthly in alt.os.multics 
0.1.      Multics General (this Document) (THVV) 
0.2.      List Of Multicians (in 3 parts) (THVV) 
0.3.      Multics Chronology (THVV) 
0.4.      List Of Multics Sites (THVV) 
0.5.      Multics Bibliography (THVV) 
0.6.      Multics History (THVV)
0.7.      Multics Features (THVV)

1.      What was Multics?
1.1.      Summary
1.2.      Goals
1.3.      Notable features
1.3.1.      Segmented memory
1.3.2.      Virtual memory
1.3.3.      High-level language implementation
1.3.4.      Shared memory multiprocessor
1.3.5.      Multi-language support
1.3.6.      Relational database
1.3.7.      Security
1.3.8.      On-line reconfiguration
1.3.9.      Software Engineering
1.4.      Influence on other systems
1.4.1.      UNIX
1.4.2.      GCOS 6
1.4.3.      Primos
1.4.4.      VOS
1.4.5.      Apollo Domain
1.4.6.      NTT DIPS
1.4.7.      Amber
1.4.8.      GEMSOS
1.4.9.      Other systems using rings
1.4.10.     IBM Systems
1.4.11.     TENEX and TOPS-20
1.4.12.     Michigan Terminal System
1.4.13.     Control Data NOS/VE
1.4.14.     Honeywell GCOS7 (nee GCOS64) and NEC Acos4
1.4.15.     HITAC 5020

2.      Multics today
2.1.      Where can I get a Multics account today?
2.2.      I'd like to see some Multics source. How?
2.3.      Could Multics be ported to a modern micro?
=============================================================


1. What Is Multics?

1.1. Summary

Multics (Multiplexed Information and Computing Service) is a timesharing
  operating system begun in 1965 and used until 2000. The system was
  started as a joint project by MIT's Project MAC, Bell Telephone
  Laboratories, and General Electric Company's Large Computer Products
  Division. Prof. Fernando J. Corbato of MIT led the project. Bell Labs
  withdrew from the development effort in 1969, and in 1970 GE sold its
  computer business to Honeywell, which offered Multics as a commercial
  product and sold a few dozen systems.

Multics was introduced in a series of papers at the 1965 Fall Joint
  Computer Conference:
* "Introduction and Overview of the Multics System," F. J. Corbato and V.
  A. Vyssotsky

* "System Design of a Computer for Time-Sharing Applications," E. L.
  Glaser, J. F. Couleur, and G. A. Oliver

* "Structure of the Multics Supervisor," V. A. Vyssotsky, F. J. Corbato,
  and R. M. Graham

* "A General Purpose File System for Secondary Storage," R. C. Daley and
  P. G. Neumann

* "Communications and Input/Output Switching in a Multiplex Computing
  System." J. F. Ossanna, L. Mikus, and S. D. Dunten

* "Some Thoughts About the Social Implications of Accessible Computing,"
  E. E. David, Jr. and R. M. Fano

Many books and papers describe aspects of the system. The influence of
  Multics on Unix is described in chapter 3 of A Quarter Century of UNIX,
  for example.

Multics ran on specialized expensive CPU hardware that provided a
  segmented, paged, ring-structured virtual memory. The system is a
  symmetric multiprocessor with shared physical and virtual memory.
  Standard Honeywell mainframe peripherals and memory were used. The
  operating system was programmed in PL/I.

Elliott Organick's book, The Multics System, an Examination of its
  Structure, describes the system as it was in about 1968. MIT started
  providing timesharing service on Multics to users in fall of 1969. GE
  sold the next system to the US Air Force, and the military use of
  Multics led to some of the system's security features. Honeywell sold
  more systems to government, and to auto makers, universities, and
  commercial data processing services.

In the 1980s, Multics became popular in France; Honeywell's partner Bull
  sold a total of 31 Multics sites. None are still in use.

Honeywell decided not to create a new hardware generation for Multics in
  the mid-80s and stopped developing the operating system. Subsequently,
  Honeywell sold its computer business to Bull, which also chose not to
  build new Multics hardware, and all sites replaced their Multics
  systems with more modern hardware.

The last running Multics site, the Canadian National Defence site at
  Halifax, NS, shut down at the end of October 2000.

1.2. Goals

As described in the 1965 paper Introduction and Overview of the Multics
  System by Corbato and Vyssotsky, there were nine major goals for
  Multics:
* Convenient remote terminal use.

* Continuous operation analogous to power & telephone services.

* A wide range of system configurations, changeable without system or
  user program reorganization.

* A high reliability internal file system.

* Support for selective information sharing.

* Hierarchical structures of information for system administration and
  decentralization of user activities.

* Support for a wide range of applications.

* Support for multiple programming environments & human interfaces.

* The ability to evolve the system with changes in technology and in user
  aspirations.

1.3. Notable features

See the Multics Features FAQ for more information.

1.3.1. Segmented memory

The Multics memory architecture divides memory into segments. 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.

1.3.2. 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.

1.3.3. High-level language implementation

Multics was written in the PL/I language, which was, in 1965, a new
  proposal by IBM. 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.

1.3.4. Shared memory multiprocessor

The Multics hardware architecture supports multiple CPUs sharing the same
  physical memory. All processors are equivalent.

1.3.5. Multi-language support

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

1.3.6. Relational database

Multics provided the first commercial relational database product, the
  Multics Relational Data Store (MRDS), in 1978.

1.3.7. 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.

1.3.8. 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.

1.3.9. Software Engineering

The development team spent a lot of effort finding ways to build the
  system in a disciplined way. The Multics System Programmer's Manual
  (MSPM) was written before implementation started: it was 3000 or so
  pages and filled about 4 feet of shelf space in looseleaf binders.
  (Clingen and Corbato mention that we couldn't have built the system
  without the invention of the photocopier.) 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.

1.4. Influence on other systems

1.4.1. Unix

Ken Thompson and Dennis Ritchie, the inventors of Unix, worked on Multics
  until Bell Labs dropped out of the Multics development effort in 1969.
  The Unix system's name is a pun on Multics attributed to Brian
  Kernighan. Some ideas in Multics were developed further in Unix.

1.4.2. GCOS 6

Honeywell's GCOS 6 operating system for the Level 6 minicomputers was
  strongly influenced by Multics.

1.4.3. Primos

Prime's Primos operating system shows a strong Multics influence. Bill
  Poduska worked on Multics at MIT before founding Prime in 1972, and
  several other senior Multicians worked at Prime. Poduska referred to
  Primos as "Multics in a shoebox." The Prime-50 had a segmented address
  space with rings, gates, dynamic linking, paging, and even active
  functions on the command line.

1.4.4. VOS

Stratus's VOS operating system shows a strong Multics influence. Bob
  Freiburghouse, former Multics languages manager, was one of the
  founders of Stratus; many Multicians are still Stratus employees.
  (Stratus is now called Stratus Technologies.)

1.4.5. Apollo Domain

[Frederick Roeber] Bill Poduska went on from Prime to help found Apollo,
  and Domain was known as "Multics in a Matchbox." Apollo's OS shows
  strong Multics influence. For instance, the basic access to stuff on
  disk is via a single-level store directly based on Multics. Supposedly
  some of the motivation for the object-store style of file system came
  from Multics too. [Jerry Saltzer] In addition, it uses a shared memory
  model, despite being distributed across a network. If that isn't
  Multics influence, I don't know what is.

1.4.6. NTT DIPS

[Carl Hoffman] NTT undertook a massive effort to clone Multics, which led
  to their DIPS (Denden Information Processing System) series of
  mainframes. DIPS machines are still in widespread use in Japan today by
  NTT, but everyone agrees that they are going away. I believe that
  Intermetrics developed the DIPS PL/I compiler for NTT.

[Jean Bellec] DIPS was an operating system developed by NTT and running
  on IBM S/370 clone machines built by Hitachi, Fujitsu and NEC. Sure, it
  was inspired by Multics, but was not a clone, or you would call every
  multi-user machine built after 1970 a Multics clone.

1.4.7. Amber

Multics also influenced  Amber, the operating system produced by the S-1
  project at Livermore between 1979 and 1986 or so. The original Amber
  group was familiar with Multics as users - the original development
  work was done on MIT-Multics - but I don't believe it included anyone
  who'd actually worked on the Multics kernel itself.

The most important Multics influences were writing the operating system
  in a high-level language, the single-level storage system, and an
  emphasis on security, although rings were not present on the last
  generation of S-1 machine. Amber was heavily influenced by critiques of
  Multics such as the Multics Kernel Redesign Project. In its later
  years, Amber made serious strides toward machine independence.

[Jay Pattin] The developers hoped to make it "Multics done better," as
  reported in a DATAMATION article. Jeff Broughton co-wrote the compiler
  for the Pastel language used for Amber.

1.4.8. GEMSOS

[Paul Karger] The Gemini GEMSOS secure operating system for the Intel
  architecture was developed by Roger Schell to support a Multics-style
  segmented environment in a system designed to meet A1 security
  requirements.

The GEMSOS kernel is available on an OEM basis from  AESEC Corporation,
  led by Roger Schell, as of 2005.

1.4.9. Other systems using rings

[Paul Karger]

Many other systems since Multics have also used rings including:
* VME/B for the ICL 2900

* AOS/VS for the Data General MV8000

* VMS for the DEC VAX

1.4.10. IBM systems

As for other systems influenced, TSS/360 was strongly influenced by
  Multics. And IBM's MVS eventually acquired dynamic reconfiguration to
  add processors and memory without shutting down.

[JHS] The IBM System/38 maps files into the one-level store just like
  Multics, and so does AIX, down underneath where it is hard to find
  because it is trying to pretend it is a Unix. Both of these systems are
  derivatives of IBM FS, which never saw the light of day, but which
  borrowed the file mapping/one-level-store idea from TSS/360, which in
  turn got it from Multics.

1.4.11. TENEX and TOPS-20

Multics influenced the paging design of TENEX and the DECSYSTEM-20, and
  several Multicians provided review and comment on the TENEX design. Dan
  Murphy has written a fine paper on the history of  TENEX and TOPS-20,
  available online. In this paper he says:

Multics may be said to have contributed more than just the ideas for
  virtual memory organization and other specific capabilities. During the
  design of TENEX, we invited some of the Multics designers and
  implementors to review our progress and decisions. As is often the
  case, we had fallen into the trap of trying to do too much in a number
  of areas and had produced some designs that were quite convoluted and
  complex. Several people from Multics beat us up on those occasions,
  saying "this is too complicated -- simplify it! Throw this out! Get rid
  of that!" We took much of that advice (and could probably have taken
  more), and I credit these reviews with making the core capabilities
  significantly easier to understand and program, as well as to implement
  and debug.

Murphy has also posted the classic 1972 paper on  TENEX by Bobrow,
  Burchfiel, Murphy, and Tomlinson.

1.4.12. Michigan Terminal System

MIT Comp Center and University of Michigan had close ties in the early
  60s, and there was an informal group studying virtual memory in 1964
  that included MIT and U of M researchers. The paper "Program and
  Addressing Structure in a Time-Sharing Environment," by Arden, Galler,
  and Westervelt (CACM, January 1966), was based on these discussions and
  especially on work by MIT professors Jack Dennis and Earl Van Horn. MIT
  and U of M participated in discussions with IBM about a virtual memory
  machine.

1.4.13. Control Data NOS/VE

The CDC NOS/VE operating system provided a large paged, segmented virtual
  address space.  Museum Waalsdorp has an interesting site which includes
  information on their CDC systems.

1.4.14. Honeywell GCOS7 (nee GCOS64) and NEC Acos4

[Jean Bellec] Multics strongly influenced the Honeywell Level 64 and its
  successors, the Bull DPS7 and DPS7000, and the derived NEC ACOS4
  systems. Those systems used a segmentation mechanism and ring similar
  to Multics (although they were 32-bit machines instead of 64-bit).
  Their software used a segment per external procedure and a stack
  mechanism inspired by Multics.

[JB] GCOS64 was developed by Compagnie Honeywell-Bull in Paris (with
  Boston participation). It was bootstrapped from a GE-645 installed in
  1972 and delivered in 1974. The implementation language was HPL, a
  subset of PL/I, that was running on Multics as SHPL. Multics also
  supported other tools for the GCOS64 factory such as a L64 linker and a
  hardware simulator and its environment (CLANG).

[JB] GCOS64/GCOS 7 uses a "microkernel" implemented by firmware that
  freeze the concept of threads (called process a la Multics), of
  semaphores for thread synchronization and I/O interface. GCOS7 is an
  evolutionary follow-on delivered in the early 80s. The microkernel
  mechanism has been easily extended to support up to 24 processors.
  Paging was introduced later on DPS7000 and segments were originally
  used for managing its virtual memory. The ACOS4 systems evolved by NEC
  from the original Honeywell Level64 include one of the most powerful
  mainframe systems, the ACOS3900.

1.4.15. HITAC 5020

The Hitachi 5020 system had two-dimensional addressing and rings. It was
  strongly influenced by Multics. Its descendant, Omicron, has a  home
  page that includes early (1969 and 1971) papers on the 5020 system.

1.4.16. Unos

[Bob Mabee]Multicians Dave Reed and Raj Kanodia developed a novel
  synchronization mechanism called an eventcount, springing from a
  Multics-related concern that an observer or recipient of an IPC poke
  should not need write access to the synchronizer. Their paper appeared
  in CACM in 1979.

[RFM] Former Multician Jeff Goldberg created an experimental OS using
  only eventcounts for synchronization, running on a PDP-11 system from
  Charles River Data Systems (CRDS). CRDS president Rick Shapiro hired
  Jeff to build full Unix-like OS, Unos, first marketed on then-new 68000
  systems in 1981. CRDS enjoyed a long profitable run selling 68K family
  systems with Unos before eventually dwindling away. Their primary
  market was OEMs embedding the CRDS unit within a larger pile of
  hardware, often requiring better real-time response than Unix could
  deliver.

[RFM] At command level, Unos felt more Multics-like than Unix did. Unix
  had suffered permanent damage during a period of very bad mechanical
  terminals so had only obscure two-letter commands and one-letter
  options, while Unos had the same names and options as Multics. (Of
  course the market later forced Unos to bend to Unix conventions.) I do
  not recall missing any particular Multics utilities and would like to
  be reminded what we're nostalgic for.

[RFM] To the C programmer, Unos was very like Unix. Wherever an interface
  was a bit cleaner (like passing length of a string buffer), it soon
  added the dirty version for compatibility.

[RFM] Internally, Unos required memory protection and relocation, so was
  very robust, unlike some early Unix ports. However, it never supported
  paged VM. Unlike Multics, multiprocessor support had not been built in
  from the start, so the kernel remained mostly single-threaded on the
  few multiprocessor systems built.

UNOS was written in C and supported FORTRAN, COBOL, Pascal, and Basic.
  User code used 32-bit addresses.

2. Multics today

2.1. Where can I get a Multics account today?

The last Multics site shut down as of 31 Oct 2000. Discussion of
  resurrecting Multics in alt.os.multics has not yet led to a revival of
  the system. If you want a Multics account, join the revival effort.

2.2. I'd like to see some Multics source. How?

Bull HN has made  the entire source of Multics available "for any purpose
  and without fee" at MIT as of November 2007.

Source for a few programs is available at this site, cross-referenced to
  the Glossary.

2.3. Could Multics be ported to a modern micro?

Yes. As a matter of fact, several projects were started to try this in
  the 80s, as described in alt.os.multics and on the Multics History
  page. None of these projects finished. Porting Multics would be a big
  job, and the final product would need further development to match the
  current state of the art. Paul Green says, "I think it would be easier
  to try 'improving' existing technology than to resurrect Multics
  itself."

2.4. Writing a Multics emulator new

Now that the Multics source is available, there has been renewed interest
  in writing an emulator for a virtual machine that could run Multics.
  Postings in alt.os.multics have mentioned several projects that are in
  early stages. The CPU manual is available online. (In addition to
  emulating the CPU, a Multics emulator would also have to emulate the
  I/O system and peripherals.) The Computer History Museum in Mountain
  View has images of the contents of Multics boot tapes.
nd peripherals.) The Computer History Museum in Mountain
  View has images of the contents of Multics boot tapes.
or would also have to emulate the
  I/O system and peripherals.) The Computer History Museum in Mountain
  View has images of the contents of Multics boot tapes.

User Contributions:

Comment about this article, ask questions, or add new information about this topic:


[ Usenet FAQs | Web FAQs | Documents | RFC Index ]

Send corrections/additions to the FAQ Maintainer:
thvv@multicians.org (Tom Van Vleck)





Last Update March 27 2014 @ 02:11 PM