Vous êtes sur la page 1sur 21

FP202 : FUNDAMENTAL OF OPERATING SYSTEM

Operating System Concepts

1.1

Silberschatz, Galvin and Gagne 2002

CHAPTER 1: INTRODUCTION TO OPERATING SYSTEM

Operating System Concepts

1.2

Silberschatz, Galvin and Gagne 2002

What is an Operating System ?

An operating system is a software program that provides

an interface between the user and the computer and manages thousands of applications. The operating system is stored on disk, but it needs to be loaded into memory (RAM) once the computer is switched on and before any other program can be run. The operating system is automatically loaded into memory as soon as you turn on, or boot, the computer. The term booting refers to the process of loading an operating system into a computers memory. This process is done by a program (called the bootstrap loader) that is stored permanently in the computers electronic circuitry (usually on a ROM chip).

1.3

Silberschatz, Galvin and Gagne 2002

FUNCTION OF OPERATING SYSTEM

Managing Resources These programs coordinate all the computers device resources including keyboard, mouse, printer, monitor, storage devices and memory. An operating system creates a file structure on the computer hard drive where user data can be stored and retrieved. When a file is saved, the operating system saves it, attaches a name to it, and remembers where it put the file for future use.

1.4

Silberschatz, Galvin and Gagne 2002

Providing a user interface Users interact with application programs and computer hardware through a user interface. Almost all operating systems today provide a windows-like Graphical User Interface (GUI) in which graphic objects called icons are used to represent commonly used features.

1.5

Silberschatz, Galvin and Gagne 2002

Running applications These programs load and run applications such as word processors and spreadsheets. Most operating systems support multitasking, or the ability to run more than one application at a time. When a user requests a program, the operating system locates the application and loads it into the primary memory or RAM of the computer. As more programs are loaded, the operating system must allocate the computer resources

1.6

Silberschatz, Galvin and Gagne 2002

Support for built-in utility programs The operating system uses utility programs for maintenance and repairs. Utility programs help identify problems, locate lost files, repair damaged files, and backup data.

1.7

Silberschatz, Galvin and Gagne 2002

Control to the computer hardware The operating system sits between the programs and the Basic Input Output System (BIOS). The BIOS controls the hardware. All programs that need hardware resources must go through the operating system. The operating system can either access the hardware through the BIOS or through the device drivers.

1.8

Silberschatz, Galvin and Gagne 2002

Operating System Structure

Monolithic
Layered Microkernel Networked and distributed

Operating System Concepts

1.9

Silberschatz, Galvin and Gagne 2002

Operating System Structure

Monolithic / Simple structure

Operating System Concepts

1.10

Silberschatz, Galvin and Gagne 2002

Various Type of Operating System

Batch System
Multiprogramming System Distributed System

Operating System Concepts

1.11

Silberschatz, Galvin and Gagne 2002

Batch processing system

Batch processing was the very first method of processing

which was adapted. The main purpose of this system was to enable the computer to move automatically from one job to another, without the operator having to intervene. The computer would then process the jobs one at a time without further human intervention.

1.12

Silberschatz, Galvin and Gagne 2002

MULTIPROGRAMMING
How it works?

The OS keeps several job in memory simultaneously


The OS picks and begin to execute on of the jobs in the

memory. Job may have to wait for some task, such as an I/O operation to complete. In multiprogramming system, the operating system simply switch to and execute another job. When that job need to wait, the CPU is switched to the another job and so on. At least one job needs to execute, the CPU is never idle.

OS Job 1

Job 2
Job 3

Operating System Concepts

1.13

Silberschatz, Galvin and Gagne 2002

Distributed System
Communication path between two or more system. Distributed system depend on networking for their functionality. For being able to communicate , distributed system are able to share

computational task and provide a rich of features to users. OS system support all type of protocol.

Operating System Concepts

1.14

Silberschatz, Galvin and Gagne 2002

Concepts Operating System

Multitasking
Multiprogramming Time sharing Buffering

Spooling

1.15

Silberschatz, Galvin and Gagne 2002

Multitasking

An operating system that gives you the perception of 2 or

more tasks/jobs/processes running at the same time. It does this by dividing system resources amongst these tasks/jobs/processes. And switching between the tasks/jobs/processes while they are executing very fast over and over again.

1.16

Silberschatz, Galvin and Gagne 2002

Multiprogramming

Single user cannot keep CPU and I/O

devices busy at all time 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
1.17

Silberschatz, Galvin and Gagne 2002

Time sharing

A multi-tasking os allows multiple jobs to be executed

simultaneously by switching among them. Usually CPU process only one task at a time but the switching is so fast that it looks like CPU is executing multiple processes at a time. Multitasking OS is a OS that allows a user to simultaneously run various tasks at the same time...actually it is not so because there is only one CPU..the concept behind this is time sharing...operating system divides CPU time among various tasks but this time is very small(nanosecond) that user feel that all programs or tasks are running simultaneously......

1.18

Silberschatz, Galvin and Gagne 2002

Buffering

Buffering is a method of overlapping the computation of a

job with its execution. It temporarily stores input or output data in an attempt to better match the speeds of two devices such as a fast CPU and a slow disk drive If, for example, the CPU writes information to the buffer, it can continue in its computation while the disk drive stores the information A temporary storage area, usually in RAM. The purpose of most buffers is to act as a holding area, enabling the CPU to manipulate data before transferring it to a device.

1.19

Silberschatz, Galvin and Gagne 2002

Spooling

Spooling refers to a process of transferring data by

placing it in a temporary working area where another program may access it for processing at a later point in time. With spooling, the disk is used as a very large buffer. Usually complete jobs are queued on disk to be completed later. A typical example is the spooler for a printer. When a print job is issued, the spooler takes care of it, sending it to the printer if it is not busy, or storing it on disk otherwise.

1.20

Silberschatz, Galvin and Gagne 2002

Homework

1.
2.

Identify various product of Operating System : Windows, Linux, Mac, Unix. Explain the features of Windows, Linux, Mac, Unix

1.21

Silberschatz, Galvin and Gagne 2002