Sie sind auf Seite 1von 28

Chapter 1: Introduction

Operating System Concepts 8th Edition,

Silberschatz, Galvin and Gagne 2009

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 8th Edition

1.2

Silberschatz, Galvin and Gagne 2009

Structure of Operating System:


Application Programs System Programs Software (Operating System) HARDWARE

Operating System Concepts 8th Edition

1.3

Silberschatz, Galvin and Gagne 2009

Computer System Structure


 Computer system can be divided into four components


Hardware provides basic computing resources




CPU, memory, I/O devices Controls and coordinates use of hardware among various applications and users

Operating system


Application programs define the ways in which the system resources are used to solve the computing problems of the users


Word processors, compilers, web browsers, database systems, video games People, machines, other computers

Users


Operating System Concepts 8th Edition

1.4

Silberschatz, Galvin and Gagne 2009

Four Components of a Computer System

Operating System Concepts 8th Edition

1.5

Silberschatz, Galvin and Gagne 2009

Definition
 An operating system is a program that manages the

computer hardware. It also provides a basis for application programs and act as intermediary between computer user and the computer hardware.

Operating System Concepts 8th Edition

1.6

Silberschatz, Galvin and Gagne 2009

Operating System Definition


 OS is a resource allocator
 

Manages all resources Decides between conflicting requests for efficient and fair resource use Controls execution of programs to prevent errors and improper use of the computer

 OS is a control program


Operating System Concepts 8th Edition

1.7

Silberschatz, Galvin and Gagne 2009

System Software
 System Software  Independent of applications, but common to all  Examples

C library functions A window system A database management system Resource management functions

Operating System Concepts 8th Edition

1.8

Silberschatz, Galvin and Gagne 2009

Wikipedia says
 System software is computer software designed to operate the computer hardware and to

provide a platform for running application software.[1][2]


 The most basic types of system software are:  Device drivers such as computer BIOS and device firmware, provides basic functionality to

operate and control the hardware connected to or built into the computer.
 The operating system (prominent examples being Microsoft Windows, Mac OS X and Linux),

which allows the parts of a computer to work together by performing tasks like transferring data between memory and disks or rendering output onto a display device. It also provides a platform to run high-level system software and application software.
 Servers, in this context, are computer programs running to serve the requests of other

programs, the "clients". The server performs some computational task on behalf of clients which may run on either the same computer or on other computers connected through a network.

Operating System Concepts 8th Edition

1.9

Silberschatz, Galvin and Gagne 2009

 Utility software, which helps to analyze, configure, optimize and maintain the computer.  Window systems are components of a graphical user interface (GUI), and more specifically

of a desktop environment, which supports the implementation of window managers, and provides basic support for graphics hardware, pointing devices such as mice, and keyboards. The mouse cursor is also generally drawn by the windowing system.
 In some publications, the term system software is also used to designate software

development tools (like a compiler, linker or debugger)

Operating System Concepts 8th Edition

1.10

Silberschatz, Galvin and Gagne 2009

Purpose of OS
 Purpose of an OS

(What is Resource Management?)


 Process: An executing program  Resource: Anything that is needed for a process to run

Memory Space on a disk The CPU An OS creates resource abstractions An OS manages resource sharing

Operating System Concepts 8th Edition

1.11

Silberschatz, Galvin and Gagne 2009

Objectives of Operating System


 To hide details of hardware by creating abstraction(Resource abstraction) 

An abstraction is software that hides lower level details and provides a set of higherlevel functions. An operating system transforms the physical world of devices, instructions, memory, and time into virtual world that is the result of abstractions built by the operating system. There are several reasons for abstraction.


First, the code needed to control peripheral devices is not standardized. Operating systems provide subroutines called device drivers that perform operations on behalf of programs for example, input/output operations. Second, the operating system introduces new functions as it abstracts the hardware. For instance, operating system introduces the file abstraction so that programs do not have to deal with disks.

Operating System Concepts 8th Edition

1.12

Silberschatz, Galvin and Gagne 2009

Ctd


Third, the operating system transforms the computer hardware into multiple virtual computers, each belonging to a different program. Each program that is running is called a process. Each process views the hardware through the lens of abstraction. Fourth, the operating system can enforce security through abstraction.

Operating System Concepts 8th Edition

1.13

Silberschatz, Galvin and Gagne 2009

Ctd
 To allocate resources to processes (Manage resources)

An operating system controls how processes (the active agents) may access resources (passive entities).
 Provide a pleasant and effective user interface

The user interacts with the operating systems through the user interface and usually interested in the look and feel of the operating system. The most important components of the user interface are the command interpreter, the file system, on-line help, and application integration. The recent trend has been toward increasingly integrated graphical user interfaces that encompass the activities of multiple processes on networks of computers

Operating System Concepts 8th Edition

1.14

Silberschatz, Galvin and Gagne 2009

Computer Startup
 bootstrap program is loaded at power-up or reboot
  

Typically stored in ROM or EPROM, generally known as firmware Initializes all aspects of system Loads operating system kernel and starts execution

Operating System Concepts 8th Edition

1.15

Silberschatz, Galvin and Gagne 2009

Operating System Structure


 Multiprogramming needed for efficiency
    

Single user cannot keep CPU and I/O devices busy at all times Multiprogramming organizes jobs (code and data) so CPU always has one to execute A subset of total jobs in system is kept in memory One job selected and run via job scheduling When it has to wait (for I/O for example), OS switches to another job

 Timesharing (multitasking) is logical extension in which CPU switches jobs so frequently that users can interact with each job while it is running, creating interactive computing

  

Response time should be < 1 second


Each user has at least one program executing in memory >process If several jobs ready to run at the same time > CPU scheduling If processes dont fit in memory, swapping moves them in and out to run

Virtual memory allows execution of processes not completely in memory

Operating System Concepts 8th Edition

1.16

Silberschatz, Galvin and Gagne 2009

Memory Layout for Multiprogrammed System

Operating System Concepts 8th Edition

1.17

Silberschatz, Galvin and Gagne 2009

Batch Processing:
 In Batch processing same type of jobs batch (BATCH- a set of jobs

with similar needs) together and execute at a time.


 The OS was simple, its major task was to transfer control from one

job to the next.


 The job was submitted to the computer operator in form of punch

cards. At some later time the output appeared.


 The OS was always resident in memory. (Ref. Fig. next slide)  Common Input devices were card readers and tape drives.

Operating System Concepts 8th Edition

1.18

Silberschatz, Galvin and Gagne 2009

Batch Processing (Contd):


 Common output devices were line printers, tape drives, and card

punches.
 Users did not interact directly with the computer systems, but he

prepared a job (comprising of the program, the data, & some control information).
OS

User progra m area

Operating System Concepts 8th Edition

1.19

Silberschatz, Galvin and Gagne 2009

Multiprogramming:
 Multiprogramming is a technique to execute number of programs

simultaneously by a single processor.


 In Multiprogramming, number of processes reside in main memory at

a time.
 The OS picks and begins to executes one of the jobs in the main

memory.
 If any I/O wait happened in a process, then CPU switches from that

job to another job.


 Hence CPU in not idle at any time.

Operating System Concepts 8th Edition

1.20

Silberschatz, Galvin and Gagne 2009

Multiprogramming (Contd):
OS Job 1 Job 2 Job 3 Job 4 Job 5
Figure depicts the layout of multiprogramming system.

The main memory consists of 5 jobs at a time, the CPU executes one by one. Advantages: Efficient memory utilization Throughput increases CPU is never idle, so performance increases.

Operating System Concepts 8th Edition

1.21

Silberschatz, Galvin and Gagne 2009

Time Sharing Systems:


 Time sharing, or multitasking, is a logical extension of

multiprogramming.
 Multiple jobs are executed by switching the CPU between them.  In this, the CPU time is shared by different processes, so it is called

as Time sharing Systems.


 Time slice is defined by the OS, for sharing CPU time between

processes.
 Examples: Multics, Unix, etc.,

Operating System Concepts 8th Edition

1.22

Silberschatz, Galvin and Gagne 2009

Real Time Operating System


 An operating system is said to be Real Time if it is required to complete its work & deliver

its services on time.


 Example Flight Control System


All tasks in that system must execute on time.

 Non Example PC system

Operating System Concepts 8th Edition

1.23

Silberschatz, Galvin and Gagne 2009

Hard and Soft Real Time Systems


 Hard Real Time System  Failure to meet deadlines is fatal  example : Flight Control System  Soft Real Time System  Late completion of jobs is undesirable but not fatal.  System performance degrades as more & more jobs miss deadlines  Online Databases  Qualitative Definition.

Operating System Concepts 8th Edition

1.24

Silberschatz, Galvin and Gagne 2009

Operating Systems functions:




The main functions of operating systems are:


1. Program creation 2. Program execution 3. Input/Output operations 4. Error detection 5. Resource allocation 6. Accounting 7. protection

Operating System Concepts 8th Edition

1.25

Silberschatz, Galvin and Gagne 2009

Operating System Concepts 8th Edition

1.26

Silberschatz, Galvin and Gagne 2009

Process

 A process is a program in execution.  The components of a process are:


   

the program to be executed, the data on which the program will execute, the resources required by the programsuch as memory and file(s)and the status of the execution.

Operating System Concepts 8th Edition

1.27

Silberschatz, Galvin and Gagne 2009

End of Chapter 1

Operating System Concepts 8th Edition,

Silberschatz, Galvin and Gagne 2009

Das könnte Ihnen auch gefallen