0% found this document useful (0 votes)
78 views

Operating System (Chap 1)

The document is from the textbook "Operating Systems: Design and Implementation" and describes the evolution of operating systems from early batch systems using vacuum tubes and plugboards to modern personal computers. It discusses key operating system concepts like processes, file systems, system calls, and different architectural approaches including layered systems, virtual machines, and the client-server model.

Uploaded by

Swapnil Patil
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
78 views

Operating System (Chap 1)

The document is from the textbook "Operating Systems: Design and Implementation" and describes the evolution of operating systems from early batch systems using vacuum tubes and plugboards to modern personal computers. It discusses key operating system concepts like processes, file systems, system calls, and different architectural approaches including layered systems, virtual machines, and the client-server model.

Uploaded by

Swapnil Patil
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 33

OPERATING SYSTEMS DESIGN AND IMPLEMENTATION

Third Edition ANDREW S. TANENBAUM ALBERT S. WOODHULL

Chapter 1 Introduction

Tanenbaum & Woodhull, Operating Systems: Design and Implementation, (c) 2006 Prentice-Hall, Inc. All rights reserved. 0-13-142938-8

The Modern Computer System

Figure 1.1 A computer system consists of hardware, system programs, and application programs.
Tanenbaum & Woodhull, Operating Systems: Design and Implementation, (c) 2006 Prentice-Hall, Inc. All rights reserved. 0-13-142938-8

What Is an Operating System?


The operating system has two basic functions of the operating system It is an extended machine or virtual machine
Easier to program than the underlying hardware

It is a resource manager
Shares resources in time and space

Tanenbaum & Woodhull, Operating Systems: Design and Implementation, (c) 2006 Prentice-Hall, Inc. All rights reserved. 0-13-142938-8

Operating System Generations


Generation 1 (1945 55) Vacuum tubes and plugboards Generation 2 (1955 65) Transistors and batch systems Generation 3 (1965 80) ICs and multiprogramming Generation 4 (1980 Present) Personal computers

Tanenbaum & Woodhull, Operating Systems: Design and Implementation, (c) 2006 Prentice-Hall, Inc. All rights reserved. 0-13-142938-8

Early Batch System (1)

Figure 1-2. An early batch system. (a) Programmers bring cards to 1401. (b)1401 reads batch of jobs onto tape.
Tanenbaum & Woodhull, Operating Systems: Design and Implementation, (c) 2006 Prentice-Hall, Inc. All rights reserved. 0-13-142938-8

Early Batch System (2)

Figure 1-2. An early batch system. (c) Operator carries input tape to 7094. (d) 7094 does computing.
Tanenbaum & Woodhull, Operating Systems: Design and Implementation, (c) 2006 Prentice-Hall, Inc. All rights reserved. 0-13-142938-8

Early Batch System (3)

Figure 1-2. An early batch system. (e) Operator carries output tape to 1401. (f) 1401 prints output.
Tanenbaum & Woodhull, Operating Systems: Design and Implementation, (c) 2006 Prentice-Hall, Inc. All rights reserved. 0-13-142938-8

Early Batch System (4)

Figure 1-3. Structure of a typical FMS job.


Tanenbaum & Woodhull, Operating Systems: Design and Implementation, (c) 2006 Prentice-Hall, Inc. All rights reserved. 0-13-142938-8

Multiprogramming

Figure 1-4. A multiprogramming system with three jobs in memory.


Tanenbaum & Woodhull, Operating Systems: Design and Implementation, (c) 2006 Prentice-Hall, Inc. All rights reserved. 0-13-142938-8

Processes

Figure 1-5. A process tree. Process A created two child processes, B and C. Process B created three child processes, D, E, and F.
Tanenbaum & Woodhull, Operating Systems: Design and Implementation, (c) 2006 Prentice-Hall, Inc. All rights reserved. 0-13-142938-8

File Systems (1)

Figure 1-6. A file system for a university department.


Tanenbaum & Woodhull, Operating Systems: Design and Implementation, (c) 2006 Prentice-Hall, Inc. All rights reserved. 0-13-142938-8

File Systems (2)

Figure 1-7. (a) Before mounting, the files on drive 0 are not accessible. (b) After mounting, they are part of the file hierarchy.
Tanenbaum & Woodhull, Operating Systems: Design and Implementation, (c) 2006 Prentice-Hall, Inc. All rights reserved. 0-13-142938-8

File Systems (3)

Figure 1-8. Two processes connected by a pipe.


Tanenbaum & Woodhull, Operating Systems: Design and Implementation, (c) 2006 Prentice-Hall, Inc. All rights reserved. 0-13-142938-8

System Calls (1)


Process Management

Figure 1-9. The MINIX system calls. fd is a file descriptor; and n is a byte count.
Tanenbaum & Woodhull, Operating Systems: Design and Implementation, (c) 2006 Prentice-Hall, Inc. All rights reserved. 0-13-142938-8

System Calls (2)


Signals

Figure 1-9. The MINIX system calls. fd is a file descriptor; and n is a byte count.
Tanenbaum & Woodhull, Operating Systems: Design and Implementation, (c) 2006 Prentice-Hall, Inc. All rights reserved. 0-13-142938-8

System Calls (3)


File Management

Figure 1-9. The MINIX system calls. fd is a file descriptor; and n is a byte count.
Tanenbaum & Woodhull, Operating Systems: Design and Implementation, (c) 2006 Prentice-Hall, Inc. All rights reserved. 0-13-142938-8

System Calls (4)


Dir. & File System Mgmt.

Figure 1-9. The MINIX system calls. fd is a file descriptor; and n is a byte count.
Tanenbaum & Woodhull, Operating Systems: Design and Implementation, (c) 2006 Prentice-Hall, Inc. All rights reserved. 0-13-142938-8

System Calls (5)


Protection

Figure 1-9. The MINIX system calls. fd is a file descriptor; and n is a byte count.
Tanenbaum & Woodhull, Operating Systems: Design and Implementation, (c) 2006 Prentice-Hall, Inc. All rights reserved. 0-13-142938-8

System Calls (6)


Time Management

Figure 1-9. The MINIX system calls. fd is a file descriptor; and n is a byte count.
Tanenbaum & Woodhull, Operating Systems: Design and Implementation, (c) 2006 Prentice-Hall, Inc. All rights reserved. 0-13-142938-8

The fork Call in the Shell

Figure 1-10. A stripped-down shell. Throughout this book, TRUE is assumed to be defined as 1.
Tanenbaum & Woodhull, Operating Systems: Design and Implementation, (c) 2006 Prentice-Hall, Inc. All rights reserved. 0-13-142938-8

Processes

Figure 1-11. Processes have three segments: text, data, and stack. In this example, all three are in one address space, but separate instruction and data space is also supported.
Tanenbaum & Woodhull, Operating Systems: Design and Implementation, (c) 2006 Prentice-Hall, Inc. All rights reserved. 0-13-142938-8

System Calls for File Management (1)

Figure 1-12. The structure used to return information for the stat and fstat system calls. In the actual code, symbolic names are used for some of the types.
Tanenbaum & Woodhull, Operating Systems: Design and Implementation, (c) 2006 Prentice-Hall, Inc. All rights reserved. 0-13-142938-8

System Calls for File Management (2)

Figure 1-13. A skeleton for setting up a two-process pipeline.


Tanenbaum & Woodhull, Operating Systems: Design and Implementation, (c) 2006 Prentice-Hall, Inc. All rights reserved. 0-13-142938-8

System Calls for File Management (3)

Figure 1-13. A skeleton for setting up a two-process pipeline.


Tanenbaum & Woodhull, Operating Systems: Design and Implementation, (c) 2006 Prentice-Hall, Inc. All rights reserved. 0-13-142938-8

System Calls for Directory Management (1)

link(/usr/jim/memo,/usr/ast/note);

Figure 1-14. (a) Two directories before linking /usr/jim/memo to asts directory. (b) The same directories after linking.

Tanenbaum & Woodhull, Operating Systems: Design and Implementation, (c) 2006 Prentice-Hall, Inc. All rights reserved. 0-13-142938-8

System Calls for Directory Management (2)

mount(/dev/cdrom0,/mnt,0); Figure 1-15. (a) File system before the mount. (b) File system after the mount.
Tanenbaum & Woodhull, Operating Systems: Design and Implementation, (c) 2006 Prentice-Hall, Inc. All rights reserved. 0-13-142938-8

Operating System Structure

Figure 1-16. The 11 steps in making the system call read(fd, buffer, nbytes).
Tanenbaum & Woodhull, Operating Systems: Design and Implementation, (c) 2006 Prentice-Hall, Inc. All rights reserved. 0-13-142938-8

Basic Structure for Operating System


1. A main program that invokes the requested service procedure 2. A set of service procedures that carry out the system calls 3. A set of utility procedures that help the service procedures

Tanenbaum & Woodhull, Operating Systems: Design and Implementation, (c) 2006 Prentice-Hall, Inc. All rights reserved. 0-13-142938-8

Layered Systems (1)

Figure 1-17. A simple structuring model for a monolithic system.


Tanenbaum & Woodhull, Operating Systems: Design and Implementation, (c) 2006 Prentice-Hall, Inc. All rights reserved. 0-13-142938-8

Layered Systems (2)

Figure 1-18. Structure of the THE operating system.


Tanenbaum & Woodhull, Operating Systems: Design and Implementation, (c) 2006 Prentice-Hall, Inc. All rights reserved. 0-13-142938-8

Virtual Machines

Figure 1-19. The structure of VM/370 with CMS.


Tanenbaum & Woodhull, Operating Systems: Design and Implementation, (c) 2006 Prentice-Hall, Inc. All rights reserved. 0-13-142938-8

Client-Server Model (1)

Figure 1-20. The client-server model.


Tanenbaum & Woodhull, Operating Systems: Design and Implementation, (c) 2006 Prentice-Hall, Inc. All rights reserved. 0-13-142938-8

Client-Server Model (2)

Figure 1-21. The client-server model in a distributed system.


Tanenbaum & Woodhull, Operating Systems: Design and Implementation, (c) 2006 Prentice-Hall, Inc. All rights reserved. 0-13-142938-8

You might also like