Download Abstract View of System Components

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts

Mobile operating system wikipedia , lookup

RSTS/E wikipedia , lookup

Burroughs MCP wikipedia , lookup

Copland (operating system) wikipedia , lookup

Unix security wikipedia , lookup

Spring (operating system) wikipedia , lookup

Security-focused operating system wikipedia , lookup

VS/9 wikipedia , lookup

Distributed operating system wikipedia , lookup

CP/M wikipedia , lookup

Transcript
Chapter 1: Introduction
 What is an Operating System?
 Mainframe Systems
 Desktop Systems
 Multiprocessor Systems
 Distributed Systems
 Clustered System
 Real -Time Systems
 Handheld Systems
 Computing Environments
Operating System Concepts
1.1
Silberschatz, Galvin and Gagne 2002
What is an Operating System?
 A program that acts as an intermediary between a user of
a computer and the computer hardware.
 Operating system goals:
 Execute user programs and make solving user problems
easier.
 Make the computer system convenient to use.
 Use the computer hardware in an efficient manner.
Operating System Concepts
1.2
Silberschatz, Galvin and Gagne 2002
Computer System Components
1. Hardware – provides basic computing resources (CPU,
memory, I/O devices).
2. Operating system – controls and coordinates the use of
the hardware among the various application programs for
the various users.
3. Applications programs – define the ways in which the
system resources are used to solve the computing
problems of the users (compilers, database systems,
video games, business programs).
4. Users (people, machines, other computers).
Operating System Concepts
1.3
Silberschatz, Galvin and Gagne 2002
Abstract View of System Components
Operating System Concepts
1.4
Silberschatz, Galvin and Gagne 2002
Operating System Definitions
 Resource allocator – manages and allocates resources.
 Control program – controls the execution of user
programs and operations of I/O devices .
 operating system is Kernel –( the one program running at
all times all else being application programs).
Operating System Concepts
1.5
Silberschatz, Galvin and Gagne 2002
Mainframe Systems (Batch Systems)
 Early computers were physically enormous machines run from
a console. The common input devices were card readers and
tape drives. The common output devices were line printers,
tape drives, and card punches.
 The user did not interact directly with the computer systems.
Rather, the user prepared a job which consisted of the program,
the data, and some control information about the nature of the
job (control cards)-and submitted it to the computer operator.
The job was usually in the form of punch cards.
Operating System Concepts
1.6
Silberschatz, Galvin and Gagne 2002
Mainframe Systems (Batch Systems)
 At some later time( after minutes, hours, or days), the output
appeared.
 The operating system in these early computers was fairly
simple. Its major task was to transfer control automatically from
one job to the next.
 To speed up processing, operators batched together jobs with
similar needs and ran them through the computer as a group.
The output from each job would be sent back to the appropriate
programmer.
Operating System Concepts
1.7
Silberschatz, Galvin and Gagne 2002
Mainframe Systems
 Reduce setup time by batching(‫ ) التجميع‬similar
jobs
 Automatic job sequencing – automatically
transfers control from one job to another. First
rudimentary(‫ ) بدائي‬operating system.
 Resident monitor
 initial control in monitor
 control transfers to job
 when job completes control transfers pack to monitor
Operating System Concepts
1.8
Silberschatz, Galvin and Gagne 2002
Memory Layout for a Simple Batch System
Operating System Concepts
1.9
Silberschatz, Galvin and Gagne 2002
Mainframe Systems (Multiprogrammed
Batch Systems)
Several jobs are kept in main memory at the same
time, and the CPU is multiplexed among them.
Operating System Concepts
1.10
Silberschatz, Galvin and Gagne 2002
Mainframe Systems (Multiprogrammed
Batch Systems)
 operating system picks and begins to execute one of the jobs in
the memory. Eventually, the job may have to wait for some task,
such as an I/O operation to complete.
 In a non-multiprogrammed system, the CPU would sit idle. In a
multiprogramming system, the operating system simply
switches to, and executes, another job. When that job needs to
wait, the CPU is switched to another job, and so on.
 Eventually, the first job finishes waiting and gets the CPU back.
As long as at least one job needs to execute, the CPU is never
idle.
Operating System Concepts
1.11
Silberschatz, Galvin and Gagne 2002
OS Features Needed for Multiprogramming
 I/O routine supplied by the system.
 Memory management – the system must
allocate the memory to several jobs.
 CPU scheduling – the system must choose
among several jobs ready to run.
 Allocation of devices.
Operating System Concepts
1.12
Silberschatz, Galvin and Gagne 2002
Mainframe Systems (Time-Sharing Systems–
Interactive Computing )
 The CPU is multiplexed among several jobs that are
kept in memory and on disk (the CPU is allocated to a
job only if the job is in memory).
 A job swapped in and out of memory to the disk.
 On-line communication between the user and the
system is provided; when the operating system finishes
the execution of one command, it seeks the next
“control statement” from the user’s keyboard.
 On-line system must be available for users to access
data and code.
Operating System Concepts
1.13
Silberschatz, Galvin and Gagne 2002
Desktop Systems
 Personal computers – computer system dedicated to a




single user.
I/O devices – keyboards, mice, display screens, small
printers.
User convenience(‫ ) مالءمة‬and responsiveness(‫) استجابة‬.
Can adopt technology developed for larger operating
system’ often individuals have sole use of computer and
do not need advanced CPU utilization of protection
features.
May run several different types of operating systems
(Windows, MacOS, UNIX, Linux)
Operating System Concepts
1.14
Silberschatz, Galvin and Gagne 2002
Parallel Systems
 Multiprocessor systems with more than on CPU in
close communication.
 Tightly coupled system – processors share memory
and a clock; communication usually takes place
through the shared memory.
 Advantages of parallel system:
 Increased throughput: By increasing the number of
processors, we hope to get more work done in less time.
 Economical : Multiprocessor systems can save more
money than multiple single-processor systems, because
they can share peripherals, mass storage, and power
supplies.
 Increased reliability
Operating System Concepts
1.15
Silberschatz, Galvin and Gagne 2002
Parallel Systems (Increased reliability)
 If functions can be distributed properly among several
processors, then the failure of one processor will not halt
the system, only slow it down.
 If we have ten processors and one fails, then each of the
remaining nine processors must pick up a share of the work
of the failed processor. Thus, the entire system runs only
10 percent slower, rather than failing altogether.
 This ability to continue providing service proportional. to the
level of surviving hardware is called graceful degradation.
Systems designed for graceful degradation are also called
fault tolerant.
Operating System Concepts
1.16
Silberschatz, Galvin and Gagne 2002
Parallel Systems( Symmetric, asymmetric
multiprocessing)
 The most common multiple-processor systems now use
symmetric multiprocessing (SMP), in which each processor
runs an identical copy of the operating system, and these
copies communicate with one another as needed.
 Some systems use asymmetric multiprocessing, in which
each processor is assigned a specific task. A master
processor controls the system; the other processors either
look to the master for instruction or have predefined tasks.
 This scheme defines a master-slave relationship. The master
processor schedules and allocates work to the slave
processors.
Operating System Concepts
1.17
Silberschatz, Galvin and Gagne 2002
Parallel Systems (Cont.)
 Symmetric multiprocessing (SMP)
 Each processor runs and identical copy of the operating
system.
 Many processes can run at once without performance
deterioration.
 Most modern operating systems support SMP
 Asymmetric multiprocessing
 Each processor is assigned a specific task; master
processor schedules and allocated work to slave
processors.
 More common in extremely large systems
Operating System Concepts
1.18
Silberschatz, Galvin and Gagne 2002
Symmetric Multiprocessing Architecture
Operating System Concepts
1.19
Silberschatz, Galvin and Gagne 2002
Distributed Systems
 Distribute the computation among several physical
processors.
 Loosely coupled system – each processor has its own
local memory; processors communicate with one
another through various communications lines, such as
high-speed buses or telephone lines.
 Advantages of distributed systems.
 Resources Sharing
 Computation speed up – load sharing
 Reliability
 Communications
Operating System Concepts
1.20
Silberschatz, Galvin and Gagne 2002
Distributed Systems (cont)
 Requires networking infrastructure.
 Local area networks (LAN) or Wide area
networks (WAN)
 May be either client-server or peer-to-peer
systems.
Operating System Concepts
1.21
Silberschatz, Galvin and Gagne 2002
Client-Server Systems
 Terminals connected to centralized systems are
now being supplanted(‫ )حل محل‬by PCs.
 Correspondingly, user-interface functionality
that used to be handled directly by the
centralized systems is increasingly being
handled by the PCs.
 As a result, centralized systems today act as
server systems to satisfy requests generated
by client systems.
Operating System Concepts
1.22
Silberschatz, Galvin and Gagne 2002
General Structure of Client-Server
Operating System Concepts
1.23
Silberschatz, Galvin and Gagne 2002
Clustered Systems
 Like parallel systems, clustered systems gather together
multiple CPUs to accomplish computational work.
 Clustered systems differ from parallel systems, however,
in that they are composed of two or more individual
systems coupled together.
 The generally accepted definition is that clustered
computers share storage and are closely linked via LAN
networking.
Operating System Concepts
1.24
Silberschatz, Galvin and Gagne 2002
Clustered Systems
 In asymmetric clustering, one machine is in hot
standby mode while the other is running the
applications. The hot standby host (machine) does
nothing but monitor the active server. If that server fails,
the hot standby host becomes the active server.
 In symmetric mode, two or more hosts are running
applications, and they are monitoring each other. This
mode is obviously more efficient, as it uses all of the
available hardware. It does require that more than one
application be available to run.
Operating System Concepts
1.25
Silberschatz, Galvin and Gagne 2002
Clustered Systems( Summary)
 Clustering allows two or more systems to share storage.
 Provides high reliability.
 Asymmetric clustering: one server runs the application
while other servers standby.
 Symmetric clustering: all N hosts are running the
application.
Operating System Concepts
1.26
Silberschatz, Galvin and Gagne 2002
Real-Time Systems
 A real-time system is used when rigid time requirements
have been placed on the operation of a processor or the
flow of data;
 thus, it is Often used as a control device in a dedicated
application such as controlling scientific experiments,
medical imaging systems, industrial control systems, and
some display systems.
 A real-time system has well-defined, fixed time
constraints. Processing must be done within the defined
constraints, or the system will fail..
 Real-Time systems may be either hard or soft real-time.
Operating System Concepts
1.27
Silberschatz, Galvin and Gagne 2002
Hard and Soft real-time systems
 A hard real-time system guarantees that critical
tasks be completed on time. This goal requires
that all delays in the system be bounded, from
the retrieval of stored data to the time that it
takes the operating system to finish any request
made of it.
 A less restrictive type of real-time system is a
soft real-time system, where a critical real-time
task gets priority over other tasks, and retains
that priority until it completes.
Operating System Concepts
1.28
Silberschatz, Galvin and Gagne 2002
Real-Time Systems (Cont.)
 Hard real-time:
 Secondary storage limited or absent, data
stored in short term memory, or read-only
memory (ROM) not supported by generalpurpose operating systems.
 Soft real-time
 Useful in applications (multimedia, virtual
reality) requiring advanced operating-system
features.
Operating System Concepts
1.29
Silberschatz, Galvin and Gagne 2002
Handheld Systems
 Personal Digital Assistants (PDAs)
 Cellular telephones
 Issues:
 Limited memory
 Slow processors
 Small display screens.
Operating System Concepts
1.30
Silberschatz, Galvin and Gagne 2002
Migration of Operating-System Concepts and Features
Operating System Concepts
1.31
Silberschatz, Galvin and Gagne 2002
Computing Environments
 Traditional computing
 Web-Based Computing
 Embedded Computing
Operating System Concepts
1.32
Silberschatz, Galvin and Gagne 2002