Operating system principles

by Per Brinch Hansen

Hardcover, 1973

Status

Available

Call number

001.6

Library's review

Indeholder "Preface", " The Main Goal", " Themes", " Structure", " Vocabulary", " Literature", " Acknowledgements", "1. An Overview of Operating Systems", " 1.1 The Purpose of an Operating System", " 1.1.1 Resource Sharing", " 1.1.2 Virtual Machines", " 1.1.3 Operating Systems and User Programs", "
Show More
1.2 Technological Background", " 1.2.1 Computer and Job Profiles", " 1.2.2 Batch Processing Systems", " 1.2.3 Spooling Systems", " 1.2.4 Interactive Systems", " 1.3 The Similarity of Operating Systems", " 1.4 Design Objectives", " 1.4.1 Special Purpose Systems", " 1.4.2 General Purpose Systems", " 1.5 Literature", "2. Sequential Processes", " 2.1 Introduction", " 2.2 Abstraction and Structure", " 2.3 Computations", " 2.3.1 Data and Operations", " 2.3.2 Processes", " 2.3.3 Computers and Programs", " 2.4 Data Structures", " 2.4.1 Primitive Data Types", " 2.4.2 Structured Data Types", " 2.5 Program Structures", " 2.5.1 Primitive Statements", " 2.5.2 Structured Statements", " 2.6 Program Construction", " 2.6.1 The Banker's Algorithm", " 2.6.2 A Hierarchal Solution", " 2.6.3 Conclusion", " 2.7 Literature", "3. Concurrent Processes", " 3.1 Concurrency", " 3.1.1 Definition", " 3.1.2 Concurrent Statements", " 3.1.3 An Example: Copying", " 3.2 Functional Systems", " 3.2.1 Program Verification", " 3.2.2 Time-dependent Errors", " 3.2.3 Disjoint Processes", " 3.2.4 The History Concept", " 3.2.5 A Closure Property", " 3.2.6 Non-functional Systems", " 3.3 Mutual Exclusion", " 3.3.1 Resource Sharing", " 3.3.2 Data Sharing", " 3.3.3 Critical Regions", " 3.3.4 Conclusion", " 3.4 Process Cooperation", " 3.4.1 Process Communication", " 3.4.2 Semaphores", " 3.4.3 Conditional Critical Regions", " 3.4.4 An Example: Message Buffers", " 3.4.5 An Example: Readers and Writers", " 3.4.6 A Comparison of Tools", " 3.4.7 Event Queues", " 3.4.8 Conclusion", " 3.5 Deadlocks", " 3.5.1 The Deadlock Problem", " 3.5.2 Permanent Resources", " 3.5.3 Hierarchal Resource Allocation", " 3.5.4 Hierarchal Process Communication", " 3.6 Literature", "4. Processor Management", " 4.1 Introduction", " 4.2 Short-term Scheduling", " 4.2.1 Process Descriptions", " 4.2.2 A Basic Monitor", " 4.2.3 Process Implementation", " 4.2.4 Semaphore and Event Implementation", " 4.2.5 Processor Multiplexing", " 4.2.6 Timing Constraints", " 4.2.7 Conclusion", " 4.3 Literature", "5. Store Management", " 5.1 Store Technology", " 5.1.1 Store Components", " 5.1.2 Hierarchal Stores", " 5.2 Store Addressing", " 5.2.1 Program Segmentation", " 5.2.2 Single-segment Computations", " 5.2.3 Multi-segment Computations", " 5.2.4 Program Relocation", " 5.2.5 Conclusion", " 5.3 Placement Algorithms", " 5.3.1 Contiguous segments", " 5.3.2 Paged segments", " 5.3.3 Conclusion", " 5.4 Store Multiplexing", " 5.4.1 Demand Fetching", " 5.4.2 Process Behavior", " 5.4.3 Load Control", " 5.4.4 Refinements", " 5.4.5 Conclusion", " 5.5 Literature", "6. Scheduling Algorithms", " 6.1 Queuing System Model", " 6.1.1 The Arrival Pattern", " 6.1.2 The Service Pattern", " 6.1.3 Performance Measures", " 6.1.4 A Conservation Law", " 6.2 Non-preemptive Scheduling", " 6.2.1 First-come First-served", " 6.2.2 Shortest Job Next", " 6.2.3 Highest Response Ratio Next", " 6.3 Preemptive Scheduling", " 6.3.1 Round Robin Scheduling", " 6.3.2 Limited Swapping", " 6.4 Literature", "7. Resource Protection", " 7.1 Introduction", " 7.2 Class Concept", " 7.3 Capabilities", " 7.4 Conclusion", " 7.5 Literature", "8. A Case Study: RC 4000", " 8.1 System Objectives", " 8.2 Basic Concepts", " 8.2.1 Programs and Internal Processes", " 8.2.2 Documents and External Processes", " 8.2.3 Monitor", " 8.3 Process Communication", " 8.3.1 Messages and Answers", " 8.3.2 Advantages of Message Buffering", " 8.3.3 Event Primitives", " 8.4 External Processes", " 8.4.1 Input/output", " 8.4.2 Mutual Exclusion", " 8.4.3 Process Identification", " 8.4.4 Replacement of External Processes", " 8.5 Internal Processes", " 8.5.1 Scheduling Primitives", " 8.5.2 Process Hierarchy", " 8.6 Resource Protection", " 8.6.1 Processor Allocation", " 8.6.2 Store Allocation", " 8.6.3 Message Buffers and Process Descriptions", " 8.6.4 Peripheral Devices", " 8.6.5 Privileged Operations", " 8.7 Monitor Features", " 8.7.1 Real-time Synchronization", " 8.7.2 Conversational Access", " 8.7.3 File System", " 8.8 Basic Operating System", " 8.8.1 Process Control", " 8.8.2 System Initialization", " 8.9 Size and Performance", " 8.10 Implementation Details", " 8.10.1 Process Communication", " 8.10.2 Process Scheduling", " 8.10.3 Preemption and Input/output", " 8.10.4 Interruptable Monitor Procedures", " 8.11 A Critical Review", " 8.11.1 System Advantages", " 8.11.2 System Disadvantages", " 8.12 Literature", "Exercises", "Answers", "Vocabulary", "Index to Vocabulary", "References", "Index to Algorithms", "Index".

???
Show Less

Publication

Englewood Cliffs, N.J. : Prentice-Hall, [1973].

Description

The main theme of the book is that operating systems are not radically different from other programs. The difficulties encountered in the design of efficient, reliable operating systems are the same as those one encounters in the design of other large programs, such as compilers or payroll programs. This book tries to give students of computer science and professional programmers a general understanding of operating systems - the programs that enable people to share computers efficiently.

Language

Original language

English

Physical description

366 p.; 24 cm

Local notes

Omslag: Ikke angivet
Omslaget viser titel og forfatter på rød og hvid baggrund
Indskannet omslag - N650U - 150 dpi
Det er sjovt at se på 40 års afstand at Linux og Minix stadig viser at minimalistisk kerne kontra monolitisk kerne diskusissionen ikke er ovre.

Pages

366

Library's rating

Rating

(3 ratings; 3.3)

DDC/MDS

001.6
Page: 0.1885 seconds