Download presentation
Published byIsaac Skinner Modified over 11 years ago
1
OPERATING SYSTEMS Lecturer: Szabolcs Mikulas Office: B38B
URL: Textbook: A.S. Tanenbaum, Modern Operating Systems, Second edition, Prentice Hall, 2001, ISBN
2
OUTLINE 1. Introduction 2. Processes and threads 3. Deadlock
4. Memory management 5. Input/output 6. File systems 7. Multimedia operating systems 8. Multiple processor systems 9. Security UNIX and Windows are to be used as running case studies.
3
Chapter 1 Introduction 1.1 What is an operating system
1.2 History of operating systems 1.3 The operating system zoo 1.4 Computer hardware review 1.5 Operating system concepts 1.6 System calls 1.7 Operating system structure
4
Introduction A computer system consists of hardware system programs
application programs
5
What is an Operating System
It is an extended, or virtual, machine provides a simple, high-level abstraction, i.e., hides the “messy details” which must be performed presents user with a virtual machine, easier to use provides services; programs obtain these by system calls It is a resource manager provides orderly and controlled allocation for programs in terms of time and space, multiplexing
6
History of Operating Systems
First generation vacuum tubes, plug boards Second generation transistors, batch systems Third generation – 1980 ICs and multiprogramming Fourth generation 1980 – present personal computers
7
Second Generation Early batch system bring cards to 1401
read cards to tape put tape on 7094 which does computing put tape on 1401 which prints output
8
Second Generation (2) Structure of a typical FMS job – 2nd generation
9
Third Generation Third generation: Multiprogramming Timesharing
MULTICS => UNIX
10
Fourth Generation Fourth generation (1980- ) - Personal computers
MS-DOS, Graphical User Interface (GUI), Windows, Network and distributed OSs
11
The Operating System Zoo
Mainframe operating systems Server operating systems Multiprocessor operating systems Personal computer operating systems Real-time operating systems Embedded operating systems Smart card operating systems
12
Computer Hardware Review
Monitor Bus Components of a simple personal computer
13
Processors (a) A three-stage pipeline (b) A superscalar CPU
14
Memory Typical memory hierarchy numbers shown are rough approximations
15
Structure of a disk drive
Hard Disk Structure of a disk drive
16
One base-limit pair and two base-limit pairs
17
Interrupt (a) Steps in starting an I/O device and getting interrupt
(b) (a) Steps in starting an I/O device and getting interrupt (b) How the CPU is interrupted
18
Structure of a large Pentium system
19
Processes Program in execution
Address space: list of memory locations for read and write - code, data, stack Process table: one entry for each process, contains: list of open files, state UID etc. Communication, scheduling
20
A Process Tree A created two child processes, B and C
B created three child processes, D, E, and F
21
(a) A potential deadlock. (b) An actual deadlock.
Read-write example
22
Main Memory Holds executing programs Multiple programs - protection
Large programs - virtual memory
23
File system for a university department
24
Files Abstract model of device independent files
Hierarchy, directories, operations Absolute and relative path names - root and working directory Special files (for I/O devices): block s.f. character s.f. Security
25
Mounting Before mounting, After mounting floppy on b,
files on floppy are inaccessible After mounting floppy on b, files on floppy are part of file hierarchy
26
Two processes connected by a pipe
e.g. sort <in|head -30
27
System Calls Interface between OS and user programs (to perform privileged operations) Machine dependent, but procedure libraries
28
Steps in Making a System Call
There are 11 steps in making the system call read (fd, buffer, nbytes)
29
Some System Calls For Process Management
30
Some System Calls For File Management
31
Some System Calls For Directory Management
32
Some System Calls For Miscellaneous Tasks
33
Shell A stripped down shell: while (TRUE) { /* repeat forever */
type_prompt( ); /* display prompt */ read_command (command, parameters) /* input from terminal */ if (fork() != 0) { /* fork off child process */ /* Parent code */ waitpid( -1, &status, 0); /* wait for child to exit */ } else { /* Child code */ execve (command, parameters, 0); /* execute command */ }
34
Link Link(/usr/jim/memo,/usr/ast/note) (a) Two directories before linking /usr/jim/memo to ast's directory (b) The same directories after linking
35
Mount (a) File system before the mount (b) File system after the mount
mount(/dev/fd0,/mnt,0) (a) File system before the mount (b) File system after the mount
36
Windows System Calls Some Win32 API calls
37
Monolithic System Simple structuring model for a monolithic system
38
Structure of the THE operating system
Layered System Structure of the THE operating system MULTICS - concentric rings
39
Structure of VM/370 with CMS
Virtual Machines Structure of VM/370 with CMS CMS: Conversational Monitor System VM: Virtual Machine Monitor - multiprogramming MS-DOS on Pentium JVM
40
Exokernels Similar to VM, but Restriction to allocated resources
No need for remap
41
Client-Server Model Microkernel handles communication
provides low-level resource management Cf. Mechanism versus policy
42
C-S Model in a DS The client-server model in a distributed system
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.