iv 1 intro to os
TRANSCRIPT
-
7/23/2019 IV 1 intro to OS
1/26
Silberschatz, Galvin and Gagne20021.1
Introduction to Operating Systems
Evolution of OS; various OS.
OS Concept; OS Structure.
Processes:
Process Creation, Termination, Process States.
Threads, Implementing Threads in User Space.
Inter Process Communication:Race Condition, Critical Region, Mutual Exclusion
IPC Problems:
Dining Philosopher, Readers & Writers, SleepingBarber Problem.
Resources:
Introduction to Deadlock, Ostrich algorithm.
Deadlock Detection and Recovery & otheraspects.
Operating System Concepts
-
7/23/2019 IV 1 intro to OS
2/26
Silberschatz, Galvin and Gagne20021.2Operating System Concepts
Chapter 1: Introduction
What is an Operating System?
Different Types of Operating System
Mainframe Systems
Desktop Systems
Multiprocessor SystemsDistributed Systems
Clustered System
Real -Time Systems
Handheld Systems
Computing Environments
-
7/23/2019 IV 1 intro to OS
3/26
Silberschatz, Galvin and Gagne20021.3Operating System Concepts
What is an Operating System?
A program that acts as an intermediary betweenauserof a computer andthe computer hardware.
Operating systemgoals:
Execute user programs and make solving user
problems easier.Make the computer system convenient to use.
Use the computer hardware in an efficient manner.
-
7/23/2019 IV 1 intro to OS
4/26
Silberschatz, Galvin and Gagne20021.4Operating System Concepts
Computer System Components
1.Hardware provides basic computing resources (CPU,memory, I/O devices).
2.Operating system controls and coordinates the useof the hardware among the various applicationprograms for the various users.
3.Applications programs define the ways in which thesystem resources are used to solve the computingproblems of the users (compilers, database systems,video games, business programs).
4.Users(people, machines, other computers).
-
7/23/2019 IV 1 intro to OS
5/26
Silberschatz, Galvin and Gagne20021.5Operating System Concepts
Abstract View of System Components
Boot Loader
Program
-
7/23/2019 IV 1 intro to OS
6/26
Silberschatz, Galvin and Gagne20021.6Operating System Concepts
Operating System Definitions
Resource allocator Manages and allocatesresources.
Control program Controls the execution ofuser programs and operations of I/O devices .
Kernel The one program running at all times(all else being application programs).
-
7/23/2019 IV 1 intro to OS
7/26Silberschatz, Galvin and Gagne20021.7Operating System Concepts
Mainframe Systems
Reducesetuptime bybatchingsimilar jobsAutomaticjob sequencing automaticallytransfers 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 back to
monitor
-
7/23/2019 IV 1 intro to OS
8/26Silberschatz, Galvin and Gagne20021.8Operating System Concepts
Memory Layout for a Simple Batch System
-
7/23/2019 IV 1 intro to OS
9/26Silberschatz, Galvin and Gagne20021.9Operating System Concepts
Multiprogrammed Batch Systems
Several jobsare kept in main memory at the sametime, and the CPU is multiplexed among them.
-
7/23/2019 IV 1 intro to OS
10/26Silberschatz, Galvin and Gagne20021.10Operating System Concepts
OS Features Needed for Multiprogramming
I/O routinesupplied by the system. Memory management the system mustallocate the memory to several jobs.
CPU scheduling the system must choose
among several jobs ready to run. Allocation of devices
-
7/23/2019 IV 1 intro to OS
11/26Silberschatz, Galvin and Gagne20021.11Operating System Concepts
Advantage of Multiprogramming
In Multiprogramming job switched toanother job and so on
CPU will never sit idle
OS has to make decision for the users
-
7/23/2019 IV 1 intro to OS
12/26Silberschatz, Galvin and Gagne20021.12Operating System Concepts
Time-Sharing SystemsInteractive Computing
TheCPU is multiplexed among several jobsthatare kept in memory and on disk (the CPU is allocatedto a job only if the job is in memory).
A job swappedin and out of memory to the disk.
On-line communication between the user and thesystem is provided;when the operating systemfinishes the execution of one command, it seeks thenext control statement from the users keyboard.
On-line system must be available for users to accessdata and code.
-
7/23/2019 IV 1 intro to OS
13/26Silberschatz, Galvin and Gagne20021.13Operating System Concepts
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 largeroperating system often individuals have sole useof computer and do not need advanced CPUutilization of protection features.
May run several different types of operatingsystems (Windows, Mac OS, UNIX, Linux)
-
7/23/2019 IV 1 intro to OS
14/26Silberschatz, Galvin and Gagne20021.14Operating System Concepts
Parallel Systems
Multiprocessor systemswith more than one
CPU in close communication. Tightly coupled system processors sharememory and a clock; communication usuallytakes place through the shared memory.
Advantages of parallel system: Increasedthroughput
Economical
Increased reliability
graceful degradationfail-soft systems
-
7/23/2019 IV 1 intro to OS
15/26
Silberschatz, Galvin and Gagne20021.15Operating System Concepts
Parallel Systems (Cont.)
Symmetric multiprocessing (SMP)
Each processor runs an identical copy of theoperating system.
Many processes can run at once withoutperformance deterioration.
Most modern operating systems support SMP
Asymmetric multiprocessingEach processor is assigned a specific task; masterprocessor schedules and allocate work to slaveprocessors.
More common in extremely large systems
-
7/23/2019 IV 1 intro to OS
16/26
Silberschatz, Galvin and Gagne20021.16Operating System Concepts
Symmetric Multiprocessing Architecture
-
7/23/2019 IV 1 intro to OS
17/26
Silberschatz, Galvin and Gagne20021.17Operating System Concepts
Real-Time Systems
Often used as a control device in a dedicatedapplication such as -- controlling scientificexperiments, medical imaging systems,industrial control systems, and some displaysystems.
Well-defined fixed-time constraints.
Real-Time systems may be eitherhardorsoftreal-time.
-
7/23/2019 IV 1 intro to OS
18/26
Silberschatz, Galvin and Gagne20021.18Operating System Concepts
Real-Time Systems (Cont.)
Hard real-time:
It guarantee that critical tasks be completed on time Secondarystorage limited or absent, data stored in short term memory,
or read-only memory (ROM)
Conflicts with time-sharing systems, not supported by general-purpose
operating systems.
Soft real-time
Critical real time task gets priority and
retains that priority until tasks completed Limited utility in industrial control of robotics
Useful in applications (multimedia, virtual reality) requiring advanced
operating-system features.
-
7/23/2019 IV 1 intro to OS
19/26
Silberschatz, Galvin and Gagne20021.19Operating System Concepts
Distributed Systems
Distributethe computation among several physicalprocessors.
Loosely coupled system each processor has itsown 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
-
7/23/2019 IV 1 intro to OS
20/26
Silberschatz, Galvin and Gagne20021.20Operating System Concepts
Distributed Systems (cont)
Requires networking infrastructure. Local area networks (LAN) or Wide areanetworks (WAN)
May be either client-server or peer-to-peer
systems.
-
7/23/2019 IV 1 intro to OS
21/26
Silberschatz, Galvin and Gagne20021.21Operating System Concepts
General Structure of Client-Server
-
7/23/2019 IV 1 intro to OS
22/26
Silberschatz, Galvin and Gagne20021.22Operating System Concepts
Clustered Systems
Clustering allowstwo or more systemstoshare storage.
Provideshigh reliability.
Asymmetric clustering:one server runs theapplication while other servers standby.
Symmetric clustering:all N hosts are runningthe application.
-
7/23/2019 IV 1 intro to OS
23/26
Silberschatz, Galvin and Gagne20021.23Operating System Concepts
Handheld Systems
Personal Digital Assistants (PDAs)
Cellular telephones
Issues:
Limited memory Slow processors
Small display screens.
-
7/23/2019 IV 1 intro to OS
24/26
Silberschatz, Galvin and Gagne20021.24Operating System Concepts
OS Evolution
MULTICS was developed from1965 to 1970 at MIT as
computingutility.
Many of idea are used by Bell Lab to develop UNIX.
UNIX OS developed by circa in 1970 for Microcomputer.
After that UNIX is basic OS to developed OS such as
Microsoft windows, IBM,OS/2
-
7/23/2019 IV 1 intro to OS
25/26
Silberschatz, Galvin and Gagne20021.25Operating System Concepts
Migration of Operating-System Concepts and Features
-
7/23/2019 IV 1 intro to OS
26/26
Silb ht Gli dG 2002126O ti S t C t
Computing Environments
Traditional computing
Web-Based Computing
Embedded Computing