The Multics System: An Examination of Its Structure

This document was uploaded by one of our users. The uploader already confirmed that they had the permission to publish it. If you are author/publisher or own the copyright of this documents, please report to us by using this DMCA report form.

Simply click on the Download Book button.

Yes, Book downloads on Ebookily are 100% Free.

Sometimes the book is free on Amazon As well, so go ahead and hit "Search on Amazon"

This volume provides an overview of the Multics system developed at M.I.T.--a time-shared, general purpose utility like system with third-generation software. The advantage that this new system has over its predecessors lies in its expanded capacity to manipulate and file information on several levels and to police and control access to data in its various files. On the invitation of M.I.T.'s Project MAC, Elliott Organick developed over a period of years an explanation of the workings, concepts, and mechanisms of the Multics system. This book is a result of that effort, and is approved by the Computer Systems Research Group of Project MAC. In keeping with his reputation as a writer able to explain technical ideas in the computer field clearly and precisely, the author develops an exceptionally lucid description of the Multics system, particularly in the area of "how it works." His stated purpose is to serve the expected needs of designers, and to help them "to gain confidence that they are really able to exploit the system fully, as they design increasingly larger programs and subsystems." The chapter sequence was planned to build an understanding of increasingly larger entities. From segments and the addressing of segments, the discussion extends to ways in which procedure segments may link dynamically to one another and to data segments. Subsequent chapters are devoted to how Multics provides for the solution of problems, the file system organization and services, and the segment management functions of the Multics file system and how the user may employ these facilities to advantage. Ultimately, the author builds a picture of the life of a process in coexistence with other processes, and suggests ways to model or construct subsystems that are far more complex than could be implemented using predecessor computer facilities. This volume is intended for the moderately well informed computer user accustomed to predecessor systems and familiar with some of the Multics overview literature. While not intended as a definitive work on this living, ever-changing system, the book nevertheless reflects Multics as it has been first implemented, and should reveal its flavor, structure and power for some time to come.

Author(s): Elliott I. Organick
Publisher: MIT Press
Year: 1972

Language: English
Commentary: PDF source: https://archive.org/details/TheMultics_00_Orga
Pages: 413
Tags: MULTICS;Operating Systems;UNIX;IPC;Programming;Software;

Foreword by Fernando J. Corbato 1
Preface 1

1. Segmentation and Address Formation in the GE 645 1
....1.1 Introduction 1
....1.2 Some Definitions and Concepts 5
....1.3 Core-Address Formation 14
....1.4 Special Instructions to Manipulate Address Base Registers 37
....1.5 Notes on Paging in the GE 645 39
....1.6 Notes on the Associative-Memory Addressing Facility 41
2. Intersegment Linking 52
....2.1 Virtual Memory and Address Space 52
....2.2 Linking and Loading 54
....2.3 Linking Details 62
....2.4 Processes Sharing Procedure Segments 62
....2.5 The Format of the Linkage Segment 67
....2.6 Establishing Links at Execution Time 71
....2.7 More on the Structure of Link Definitions 79
....2.8 The Trap-before-Link Feature 81
....2.9 Transfer to a Procedure Entry Point 82
....2.10 Format of Linkage Sections 89
....2.11 Self-Relative Addressing Used for the Entry Sequences of Linkage Blocks 94
....2.12 Entry Sequences Generated by ALM and PL/I 96

3. Interprocedure Communication 98
....3.1 Introduction 98
....3.2 The Stack 99
....3.3 The Call Sequence 103
....3.4 The Save Sequence 105
....3.5 Return Sequences 109
....3.6 The Normal Return Sequence 109
....3.7 Basic Storage Structure for an Argument List 110
....3.8 Putting its-Pair Pointers into an Argument List 112
....3.9 Storage Structures for Different Types of Data 114
....3.10 Function-Name Arguments, Ordinary Case 115
....3.11 Function-Name Arguments, Special Case 120
....3.12 The Short Call 125
4. Access Control and Protection 127
....4.1 Introduction 127
....4.2 Access Control and Ring-Bracket Protection 133
....4.3 Monitoring and Controlling Ring Crossings for Normal Calls and Returns 151

5. Condition Handling and Abnormal Returns 187
....5.1 Introduction 187
....5.2 Condition Handling—Details 200
....5.3 Abnormal Returns—Additional Discussion 207
6. The File System 217
....6.1 Introduction 217
....6.2 Directory Structure 219
....6.3 Making a Segment Known-Fine Points 234
....6.4 Explicit Calls to the Segment Control Module 250
....6.5 Segment Descriptor Management 256

7. Resource Sharing and Intercomm unication among Coexisting Processes 265
....7.1 Introduction 265
....7.2 Multiplexing Processors 270
....7.3 Core Resources Employed and Managed by an Active Process 287
....7.4 Assignment of Processor Resources 303
....7.5 Interprocess Communication 311

8. The Input/Output System 341
....8.1 Introduction 341
....8.2 Input/Output System Organizational Overview 343
....8.3 Packaged Input/Ou tput for Communication with the Console 352
....8.4 Input/Output System Calls (ios_) 354
....8.5 Designing a Device Interface Module 362
....8.6 Final Remarks 367

A Multics Bibliography 369

Subject Index 375