Operating Systems Principles Lecture 1: Introduction - PowerPoint PPT Presentation

1 / 53
About This Presentation
Title:

Operating Systems Principles Lecture 1: Introduction

Description:

The Role of Operating Systems. Bridge the Hardware/Application Gap ... assemblers, compilers, interpreters. Editors and text processors, linkers and loaders. ... – PowerPoint PPT presentation

Number of Views:208
Avg rating:5.0/5.0
Slides: 54
Provided by: taiwe
Category:

less

Transcript and Presenter's Notes

Title: Operating Systems Principles Lecture 1: Introduction


1
Operating Systems PrinciplesLecture 1
Introduction
  • ??????

2
Content
  • The Role of Operating Systems
  • Bridge the Hardware/Application Gap
  • Three Views of Operating Systems
  • Organization of Operating Systems
  • Structural Organization
  • The Hardware Interface
  • The Programming Interface
  • The User Interface
  • Runtime Organization
  • Operating System Evolution Concepts

3
Operating Systems PrinciplesLecture 1
Introduction
  • The Role of Operating Systems

4
PC Hardware Organization
5
Users ?? Hardware
6
Users ?? Hardware
  • User needs to think in terms of problem to be
    solved
  • High-level data structures and corresponding
    operations
  • Simple, uniform interfaces to subsystems,
  • Treat programs and data files as single entities
  • Hardware capabilities are very low level
  • Arithmetic and logical operators
  • Comparison of two bit-strings
  • Branching, reading, and writing bytes

7
Fills the Gap
Software
8
Fills the Gap
  • Use software to bridge this gap
  • Language processors e.g.,
  • - assemblers, compilers, interpreters
  • Editors and text processors, linkers and
    loaders.
  • Application programs, utility and service
    programs.
  • Operating Systems

Software
9
Single CPU System
10
Single CPU System
11
I/O Devices
I/O Devices
12
Multiprocessor Systems
Share-Memory Model
Distributed-Memory Model
13
Synchronization Communication of CPUs
Share-Memory Model
Distributed-Memory Model
through the shared memory
interconnection network required.
14
Cash Coherence Problem
Cashes do not contain different values for the
same memory element.
Share-Memory Model
Distributed-Memory Model
15
Multicomputer System
16
Multicomputer System
Network Controller
Network Controller
17
Local Area Networks
  • Local area networks (LANs) connect computers
    within a building or a enterprise network.
  • LAN network topologies

Ring Network
Broadcast Bus
18
Wide Area Networks
  • A Wide Area Network (WAN) is a collection of
    Local Area Networks (LANs) that have been
    connected together.
  • The internet is an example of a WAN.

19
What are done by OS?
  • Process Management
  • Scheduling of process
  • Synchronization
  • Memory Management
  • Virtual memory
  • Input/Output Systems
  • Device drivers
  • Spooling
  • File Systems
  • Protection and Security

Applications/Services
Operating System
Bare Machine
20
Three Views of OSs
Application Programmers View
Applications/Services
Operating System
Users View
Bare Machine
System Programmers View
21
Users View
  • OS is an extended machine
  • Abstraction hides complexity
  • Provides high level operations

Application Programmers View
Applications/Services
Operating System
Users View
Bare Machine
System Programmers View
22
Application Programmers View
  • OS is a virtual machine
  • Virtualization supports sharing
  • Provides virtual CPU, memory, devices

Application Programmers View
Applications/Services
Operating System
Users View
Bare Machine
System Programmers View
23
System Programmers View
  • OS is a resource manager
  • Balance overall performance with individual
    needs
  • e.g., response time, deadlines

Application Programmers View
Applications/Services
Operating System
Users View
Bare Machine
System Programmers View
24
Operating Systems PrinciplesLecture 1
Introduction
  • Organization of Operating Systems

25
Structure Organization of OS
Library Calls
Kernel Calls
Operating System Kernel
Machine Instructions
Hardware
26
Modes of CPU Execution
Dual-Mode Operation
Library Calls
(user mode)
nonprivileged mode
Kernel Calls
privileged mode
Operating System Kernel
(supervisor mode)
(system mode)
Machine Instructions
(monitor mode)
Hardware
(kernel mode)
27
Supervisor Call (SVC)
SVCs are used to implement all kernel calls and
form the basic interface btw the OS kernel and
the rest of the software.
Library Calls
SVC
nonprivileged mode
Kernel Calls
privileged mode
Operating System Kernel
Machine Instructions
Hardware
28
The Hardware Interface
  • Applications and OS compiled into machine
    instructions
  • Interrupts and Traps allow OS to seize control
  • process management (time-sharing)
  • device management (I/O completion)

SVC
29
The Programming Interface
  • Invoking system services
  • Library call (nonprivileged)
  • Kernel call (privileged)

30
The User Interface
  • Text-based shell
  • e.g., Unix, MS Dos
  • command interpreter
  • shell scripts
  • Graphics-based GUI
  • e.g., Mac, MS Windows
  • windows
  • icons
  • menus
  • pointer

31
Runtime Organization
Service is an Autonomous Process (client-server)
Service is a Subroutine
32
Operating Systems PrinciplesLecture 1
Introduction
  • Operating System Evolution Concepts

33
History of Operating Systems
  • The First Generation (194555)
  • Vacuum Tubes and Plugboards
  • The Second Generation (195565)
  • Transistors and Batch Systems
  • The Third Generation (19651980)
  • ICs and Multiprogramming
  • The Fourth Generation (1980Present)
  • Personal Computers

34
The First Generation (194555) ? Vacuum Tubes and
Plugboards
35
The First Generation (194555) ? Vacuum Tubes and
Plugboards
36
The First Generation (194555) ? Vacuum Tubes and
Plugboards
  • Machines of the time were so primitive that
    programs were often entered one bit at time on
    rows of mechanical switches (plugboards).
  • Programming languages were unknown (not even
    assembly languages).
  • Operating systems were unheard of.

37
The Second Generation (195565) ?Transistors and
Batch Systems
  • A batch system is one in which jobs are bundled
    together with the instructions necessary to allow
    them to be processed without intervention.
  • Often jobs of a similar nature can be bundled
    together to further increase economy.

38
The Second Generation (195565) ?Transistors and
Batch Systems
39
The Second Generation (195565) ?Transistors and
Batch Systems
JOB user_spec identify the user for accounting
purposes FORTRAN load the FORTRAN
compiler source program cards LOAD load the
compiled program RUN run the program data
cards EOJ end of job JOB user_spec
identify a new user LOAD application RUN Data
EOJ
40
The Second Generation (195565) ?Transistors and
Batch Systems
41
The Second Generation (195565) ?Transistors and
Batch Systems
Monitor another name of OS.
Memory Layout of a Batch System
Monitor (permanently resident)
  • The monitor is system software that is
    responsible for interpreting and carrying out the
    instructions in the batch jobs.
  • When the monitor started a job, it handed over
    control of the entire computer to the job, which
    then controlled the computer until it finished.

User Space (compilers, programs, data, etc.)
42
The Second Generation (195565) ?Transistors and
Batch Systems
  • Advantages of batch systems
  • move much of the work of the operator to the
    computer
  • increased performance since it was possible for
    job to start as soon as the previous job finished
  • Disadvantages
  • turn-around time can be large from user
    standpoint
  • more difficult to debug program
  • due to lack of protection scheme, one batch job
    can affect pending jobs (read too many cards,
    etc)
  • a job could corrupt the monitor, thus affecting
    pending jobs
  • a job could enter an infinite loop

43
The Third Generation (19651980) ? ICs and
Multiprogramming
Have more than one active (running) program in
memory at any one time.
Why?
44
The Third Generation (19651980) ? ICs and
Multiprogramming
  • Main features of this generation
  • CPU and I/O Overlap
  • Spooling
  • simultaneous peripheral operations on line
  • Time-sharing technique

45
The Third Generation (19651980) ? ICs and
Multiprogramming
The typical CPU and I/O overlap pattern in a
single program
46
The Third Generation (19651980) ? ICs and
Multiprogramming
Goal of multiprogramming ? Keep CPUs and and I/O
devices busy.
47
The Third Generation (19651980) ? ICs and
Multiprogramming
  • CPU Bound Programs
  • Perform calculation most of time
  • Scientific computation
  • I/O Bound Programs
  • Perform I/O most of time
  • Commercial data processing

48
The Third Generation (19651980) ? ICs and
Multiprogramming
Time Saved
49
The Third Generation (19651980) ? ICs and
Multiprogramming
  • Spooling (simultaneous peripheral operations on
    line).
  • In spooling, a high-speed device like a disk
    interposed between a running program and a
    low-speed device involved with the program in
    input/output.
  • Example Instead of writing directly to a
    printer, outputs are written to the disk.
  • Programs can run to completion faster and
  • other programs can be initiated sooner when the
    printer becomes available, the outputs may be
    printed.

50
The Third Generation (19651980) ? ICs and
Multiprogramming
  • Time Sharing Technique
  • A variant of multiprogramming technique.
  • Each user has an on-line terminal.
  • Because the user is present and interacting with
    the computer, the computer system must respond
    quickly to user requests, otherwise user
    productivity could suffer.
  • Timesharing systems were developed to
    multiprogram large number of simultaneous
    interactive users.

51
The Fourth Generation (1980Present) ? Personal
Computers
  • With the development of LSI circuits, chips,
    operating system entered entered in the personal
    computer and the workstation age.
  • Microprocessor technology evolved to the point
    that it become possible to build desktop
    computers as powerful as the mainframes of the
    1970s.

52
The Fourth Generation (1980Present) ? Personal
Computers
  • CP/M (Control Program of Microcomputers)
  • MS-Dos
  • Windows
  • Unix
  • GUI

53
The Evolution
  • Early systems ? No Operating System
  • Batch Operating Systems
  • Multiprogramming Systems
  • Interactive operating Systems
  • Personal Computer and Workstation Operating
    Systems
  • Real-time Operating Systems
  • Distributed Operating Systems
Write a Comment
User Comments (0)
About PowerShow.com