Sei sulla pagina 1di 61

OPERATING SYSTEM

TOPIC 1 : INTRODUCTION TO OPERATING


SYSTEM

POLISAS/JKE/EC503/Chapter1

System Computer Components


A computer system can be divided roughly into four

components :
The hardware
The operating system
The application programs
The users

POLISAS/JKE/EC503/Chapter1

User
1

User
2

User
3

Compiler assembler

text editor

User
n

database sys

System and Application programs


Operating System
Hardware

Figure 1 : Abstract view of the components of a computer system

POLISAS/JKE/EC503/Chapter1

The hardware CPU, memory, I/O devices


(provide the basic computing resources for the
system)
The operating system controls and
coordinates the use of the hardware among the

various application programs for the various users.


The application programs word processors,
spreadsheets, compilers and web browsers (defines

the ways in which these resources are used to solve


users computing problem.
The users human, computer, other machines.
POLISAS/JKE/EC503/Chapter1

Operating System
Definition
It

is the main programming to control


the computer. It provide user interface
to translate the task of user,
scheduling the tasks, organize the
storage and conduct the
communication with software.
POLISAS/JKE/EC503/Chapter1

The functions of operating system


1. Make sure all the user tasks can be done
2.
3.

4.
5.
6.

properly.
Translate users command.
Conduct the errors if occurred.
Conduct input/output.
Conduct interruption.
Organize the storage.

POLISAS/JKE/EC503/Chapter1

History Of OS
OPERATING
SYSTEM

FIRST
GENERATION
1945-1955
(vacuum tubes
&
Plug boards)

SECOND
GENERATION
1955-1965
(Transistors
&
Batch system)

THIRD
GENERATION
1965-1980
(ICs
&
Multiprogramming)

POLISAS/JKE/EC503/Chapter1

FOURTH
GENERATION
1980-present
(Personal Computer)

History of Operating Systems


First generation 1945 - 1955
Technology: vacuum tubes & plugboards
Programming: setting some switches
Programming language: machine language
OS: none

POLISAS/JKE/EC503/Chapter1

History of Operating Systems


Second generation 1955 1965
Technology: Transistors
Programming: Punched cards
Programming languages: FORTRAN & Assembly

Tasks: Scientific
Computer: Mainframes
OS: Batch system

POLISAS/JKE/EC503/Chapter1

The creation of

the UNIVAC
(UNIVersal
Automatic
Computer), the
first electronic
computer built
for commercial
use.

POLISAS/JKE/EC503/Chapter1

10

History of Operating Systems

Early batch system

bring cards to 1401


read cards to tape
put tape on 7094 which does computing
put tape on 1401 which prints output
POLISAS/JKE/EC503/Chapter1

11

History of Operating Systems


Third generation 1965 1980
Technology: Integrated circuits (ICs)
Programming: Punched cards
Programming languages: FORTRAN &
Assembly
Tasks: Scientific & commercial
Computers: IBM 360,
OS: Multiprogramming/timesharing

POLISAS/JKE/EC503/Chapter1

12

History of Operating Systems


Fourth generation 1980-Present
Technology: VLSI (Very large Scale Ingration)
Programming: High level

Programming languages: C/C++, Java


Computer: PC
OS: Windows, MacOS, Linux

POLISAS/JKE/EC503/Chapter1

13

Types Of OS
Batch Operating system
A batch system is one in which jobs are bundled
together with the instructions necessary to allow
them to be processed without intervention.
Data or programs are collected grouped and
processed at a later date.
Example of use :

Payroll, stock control and billing systems.


POLISAS/JKE/EC503/Chapter1

14

Batch operating system


Contains work for the system to perform without
interacting with users.
Jobs are grouped in batches by loading them one-byone onto tape or disk.
Enable the computer to move automatically from one
job to another, without the operator (user) having to
intervene.
The computer would then process the jobs one at a time
without further human intervention.
Batch processing is still used nowadays e.g. printing
thousands of mailing labels.

Memory Layout for a Simple Batch System

Figure 2

- The monitor is system software that is responsible for


interpreting and carrying out the instructions in the batch jobs.
- When the monitor starts a job, the entire computer is dedicated to the
job, which then controls the computer until it finishes.

POLISAS/JKE/EC503/Chapter1

16

Various Types of OS
Advantages
Can automate various

aspects of job-to-job

transition
Reduce the amount of wasted time between
jobs
Improve resource utilization

Types Of OS
Multiprogramming Operating System

Ability to run many programs apparently at the


same time.
Example of Use : Mainframe systems. Each job is
allocated a small amount of processing time (time
slice) in turn.

POLISAS/JKE/EC503/Chapter1

18

Various Types of OS
Multiprogramming Operating System
where more than one program can be execute at one time.
Is a feature of an OS which allows running multiple
programs simultaneously on one CPU.
Example:

You maybe typing in word, listening to music while in


background IE is downloading some file & antivirus
program is scanning.

Actual program dont run simultaneously, but OS

divides time for each program according to priorities.

Types of OS : Multiprogramming
As machines with more and more memory became
available, it was possible to extend the idea of
multiprogramming (or multiprocessing) as used in batch
systems.
This create a systems that would load several jobs into
memory at once and cycle through them in some order,
working on each one for a specified period of time.
The basic physical layout of a multiprogramming system is
as shown:

POLISAS/JKE/EC503/Chapter1

20

At this point the monitor is growing to the point


where it begins to resemble a modern operating

system.
It is responsible for:
1) Starting user jobs
2)Spooling operations
3)IO for user jobs
4) Switching between user jobs
5) Ensuring proper protection while doing the above

POLISAS/JKE/EC503/Chapter1

21

Types of OS : Multiprogramming
Types of Multiprogramming Operating System:
1) Multitasking Operating System
A type of multiprogramming operating system which can perform several
process simultaneously.
The earliest multitasking OS available to home users was the AmigaOS.
All current major operating system support this feature.

2) Multi-user Operating System

A multi-user operating system allows for multiple users to use the same
computer at the same time and/or different times.
Linux, Unix,Windows OS are some example of multiuser operating
system.

POLISAS/JKE/EC503/Chapter1

22

Types of OS : Multiprogramming
3) Multiprocessing Operating System

An operating system capable of supporting and utilizing more than


one computer.

4) Real Time Operating System

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.
Well-defined fixed-time constraints.

POLISAS/JKE/EC503/Chapter1

23

Types Of OS
Distributed Operating System

Processing is carried out independently in more


than one location, but with shared and controlled
access to some common facilities.
Example of use : Databases e.g. libraries.

POLISAS/JKE/EC503/Chapter1

24

Distributed(cont)
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 highspeed
buses or telephone lines.
Advantages of distributed systems.
Resources Sharing
Computation speed up load sharing
Reliability
Communications
POLISAS/JKE/EC503/Chapter1

25

Distributed(cont)
Requires networking infrastructure.
Local area networks (LAN) or Wide area

networks (WAN)
May be either client-server or peer-to- peer systems.

POLISAS/JKE/EC503/Chapter1

26

Product Of OS
Product

Version

Windows

Window 3.x (1990), Window NT 3.1 (1993), window 95


(1995),
Windows NT workstation 4.0 (1996), Window Server 2000,
Window Millennium Edition (2000), Window XP(2001),
Window Vista(2006),Windows 7 (2009)

Linux

Red Hat Enterprise Linux

Mac

Mac OS X : Available only for computers manufactured by


Apple

Sun

Solaris (1992)
POLISAS/JKE/EC503/Chapter1

27

OS Products : Microsoft Windows

Microsoft Windows is a series of software operating systems


and graphical user interfaces produced by Microsoft.
Microsoft first introduced an operating environment named
Windows in November 1985 as an add-on to MS-DOS in
response to the growing interest in graphical user interfaces
(GUIs).
Microsoft Windows came to dominate the world's personal
computer market, overtaking Mac OS, which had been
introduced previously.
As of October 2009, Windows had approximately 91% of the
market share of the client operating systems for usage on the
Internet.
The most recent client version of Windows is Windows 7.

POLISAS/JKE/EC503/Chapter1

28

OS Products : Mac OS

Mac OS is the trademarked name for a series of graphical user


interface-based operating systems developed by Apple Inc.
(formerly Apple Computer, Inc.) for their Macintosh line of
computer systems.
The Macintosh user experience is credited with popularizing
the graphical user interface.
The original form of what Apple would later name the "Mac
OS" was the integral and unnamed system software first
introduced in 1984 with the original Macintosh, usually
referred to simply as the System software.
Mac OS X is the latest version which has superseded the
"Classic" Mac OS.
POLISAS/JKE/EC503/Chapter1

29

OS Products : Linux

Linux is an alternative operating system for personal computers


and servers.
It competes mainly against Microsoft's Windows.

It is based on the Unix operating system and was originally


created by Linus Torvalds.
Mascot/trademark: penguin
Linux is a free Open Source Operating System, based on Unix.
It is available from many vendors with optional paid for support .
POLISAS/JKE/EC503/Chapter1

30

Minimum Requirements
The minimum hardware requirements for Windows XP Home Edition

are:

Pentium 233-megahertz (MHz) processor or faster (300 MHz

is recommended)
At least 64 megabytes (MB) of RAM (128 MB is
recommended)
At least 1.5 gigabytes (GB) of available space on the hard disk
CD-ROM or DVD-ROM drive
Keyboard and a Microsoft Mouse or some other compatible
pointing device
Video adapter and monitor with Super VGA (800 x 600)or
higher resolution
Sound card
Speakers or headphones
POLISAS/JKE/EC503/Chapter1

31

Network Operating System (NOS)


Short for Network operating system, NOS is the

software that allows multiple computers to


communicate, share files and hardware devices with
one another. Some examples of network operating
systems include Novell NetWare, Microsoft Windows
NT, Microsoft Windows 2000, Microsoft Windows XP,
Sun Solaris, Linux, etc...

POLISAS/JKE/EC503/Chapter1

32

Network Operating Systems


Examples of network

NetWare

operating systems

Designed for
client/server
networks

Windows
Server 2003

UNIX / Linux

Upgrade to Windows
2000 Server

Multi-purpose
operating system

Solaris

Version of UNIX
developed by Sun
Microsystems
Specifically for
e-commerce
applications
POLISAS/JKE/EC503/Chapter1

33

Open Source Vs. Closed Source Software


CSS

OSS

Developed by Companies and


developers work for economic
purposes.

Developed By Volunteers work for


peer recognition. People know
that recognition as a good
developer have great advantage

Users may suggest requirements


but they may or may not be
implemented

User suggests additional


features that often get
implemented.

Release is not too often. There


may be only yearly releases.

Software is released on a
daily or weekly basis

POLISAS/JKE/EC503/Chapter1

34

CSS

OSS

Market believes commercial CSS


is highly secure because it is
developed by a group of
professionals confined to one
geographical area under a strict
time schedule. But quite often this
is not the case, hiding information
does not make it secure, it only
hides its weaknesses

OSSD is not market driven; it is


quality driven. Community reaction
to bug reports is much faster
compared to CSSD which makes it
easier to fix bugs and make the
component highly secure

Security cannot be enhanced by


modifying the source code

The ability to modify the source


code could be a great advantage
if you want to deploy a highly
secure system

POLISAS/JKE/EC503/Chapter1

35

Components of operating system


What is a kernel?
The part of the operating system that resides in the

main memory at all times and performs the most


essential tasks, such as managing memory and
handling disk input and output.
In other words , kernel is a core feature of any
operating system, the kernel manages communication
between hardware and software.
Typically, the kernel is responsible for memory
management, process and task management,
and disk management.
Its like a human brain that control every movements of
human body POLISAS/JKE/EC503/Chapter1
36

POLISAS/JKE/EC503/Chapter1

37

What is Shell Program?


A shell is a command line interpreter that is

the interface between the user and the OS.


The name shell originates from shells being an
outer layer of interface between the user and the
internals of the operating system (the kernel).
The shell:
analyzes each command
determines what actions are to be performed
performs the actions
POLISAS/JKE/EC503/Chapter1

38

What is a shell?
INPUT

shell

OUTPUT
POLISAS/JKE/EC503/Chapter1

ERROR
39

Shell Program
Menu-Driven System

Fully GUI

No need to memorize

Also known as Windows

commands.
All available commands are
listed
Menus can be nested.
Low data requirements
Still used in many ATM
and Point-of-Sale systems

Interfaces
Mouse-driven and iconbased
Windows

POLISAS/JKE/EC503/Chapter1

Are allocated to the use of a

particular program or
process
Contain a title bar, menu
bar, and widgets
40

Some concept related to


Operating System
Multi-tasking

Same concept as multiprogramming


Allows 2 or more programs at the same time
Divide the programs into active and inactive. Active
application is called foreground application and inactive
application is background application
CPU does not run the programs simultaneously but manage
the resources i.e. memory based on active/inactive
applications

POLISAS/JKE/EC503/Chapter1

41

Terminology relation to OS
Cooperative Multi-tasking

Based on multi-tasking concept, whereby foreground


application controls CPU until program ends
But if program crashes/hang, OS needs to be rebooted

Preemptive Multi-tasking

Based on multi-tasking concept


But if program crashes/hang, OS is able to take over CPU so
other programs can be maintained

POLISAS/JKE/EC503/Chapter1

42

Terminology relation to OS
Multi programming and also called Multithreading

Executing many program concurrently


One program may execute more than one task
Example print and edit at the same time

Multiprocessing

Use of 2 or more processor at the same time


Programs run simultaneously
Each processor manage own resources
Hardware dependant esp. motherboard

POLISAS/JKE/EC503/Chapter1

43

Operating System Structure


Monolithic System
Layered System

Virtual Machines
Client-Server Model

POLISAS/JKE/EC503/Chapter1

44

Monolithic
The oldest architecture used for operating systems is

the Monolithic Kernel


All functions are linked together into one huge OS binary
A monolithic system is therefore characterized by
1 source code
1 program generated
but may contain concurrency

In a monolithic architecture all components are interwoven)


data is read into application memory
data is manipulated
reports may be output
data may be saved back to the same source or different
EXAMPLE : Mainframe computer success, Linux, Windows
While DOS and early Windows worked poorly with multiple user
POLISAS/JKE/EC503/Chapter1

45

POLISAS/JKE/EC503/Chapter1

46

Layered Structure
A technique used in designing computer software,
hardware, and communications.
In this case, system or network components are
isolated in layers
so that changes can be made in one layer without

affecting the others.


It is not always easy to have a truly layered
architecture since some functionalities are
naturally described as mutually dependent.

POLISAS/JKE/EC503/Chapter1

47

POLISAS/JKE/EC503/Chapter1

48

Virtual Machines
Virtual machine (VM) is a software
implementation of a machine (i.e. a computer)
that executes programs like a physical machine.
A system virtual machine provides a complete
system platform which supports the execution of a
complete operating system(OS).

POLISAS/JKE/EC503/Chapter1

49

Virtual Machines
A virtual machine takes the layered approach to its
logical conclusion. It treats hardware and the
operating system kernel as though they were all
hardware.

A virtual machine provides an interface identical to


the underlying bare hardware.
The operating system creates the illusion of

multiple processes, each executing on its own


processor with its own (virtual) memory.
POLISAS/JKE/EC503/Chapter1

50

Client-Server Model
The Client/Server Model is a form of distributed

computing where one program (the Client)


communicates with another program (the Server) for
the purpose of exchanging information.

POLISAS/JKE/EC503/Chapter1

51

Client/Server Model
The Client Server Model
Client

Server

Internet

POLISAS/JKE/EC503/Chapter1

52

Subsystem of OS
Major subsystem
of OS

Process
Management

File
Management

POLISAS/JKE/EC503/Chapter1

Memory
Management

53

Process Management
A process is a program in execution: (A program is passive, a

process active.) A process has resources (CPU time, files) and


attributes that must be managed.
Management of processes includes:

Process Scheduling (priority, time management, . . . )


Creation/termination
Block/Unblock (suspension/resumption )
Synchronization
Communication
Deadlock handling
Debugging

POLISAS/JKE/EC503/Chapter1

54

File Management
A file is a collection of related information defined by its

creator. Commonly, files represent programs (both source


and object forms) and data.
The operating system is responsible for the following
activities in connections with file management:
File creation and deletion.
Directory creation and deletion.
Support of primitives for manipulating files and
directories.
Mapping files onto secondary storage.
File backup on stable (nonvolatile) storage media.
POLISAS/JKE/EC503/Chapter1

55

Memory Management
Allocation/de-allocation

for

processes,

files, I/O.
Maintenance of several processes at a time
Keep track of who's using what memory
Movement of process memory to/from
secondary storage

POLISAS/JKE/EC503/Chapter1

56

System Calls
System calls provide the interface between a running

program and the operating system


In other words, it is a mechanism use by an application
program to request service from operating system
These calls are generally available as assemblylanguage instructions.
Usually listed in the manuals used by assemblylanguage programmers.

POLISAS/JKE/EC503/Chapter1

57

Continue Chapter 1

System Calls
System calls provide the interface between a running

program and the operating system


In other words, it is a mechanism use by an application
program to request service from operating system
These calls are generally available as assemblylanguage instructions.
Usually listed in the manuals used by assemblylanguage programmers.

POLISAS/JKE/EC503/Chapter1

58

System Calls
Process Management
Signaling
Directory Management
Protection
Time Management
Multicore Management
Multithreading

POLISAS/JKE/EC503/Chapter1

59

a) Process management
load, execute, end, abort, create, terminate, wait ...
memory allocation and reallocation
b) Signaling
Use signals to keep track of events which must follow the same path of
execution as depicted in figure below regardless of their type being
synchronous or asynchronous.
c) File management
Common systems calls dealing with files and directories:
1) create file, delete file
2) open, close
3) read, write, reposition
4) get file attributes, set file attributes
d) Device Management
Similarity between files and I/O devices results in similar device system
calls (some OS even merges two into a combined file device structure):
1) request device, release device
2) read, write, reposition
3) get device attributes, set device attributes
4) logically attach or detach devices
POLISAS/JKE/EC503/Chapter1

60

e) Information Maintenance
System calls for transferring information between the user program and
OS:
1) get time or date, set time or date
2) get system data, set system data
3) get process, file, or device attributes
4) set process, file or device attributes
f) Communication
System calls for transferring information between the user program and
OS:
1) create, delete communication connection
2) send, receive message
3) transfer status information
4) attach or detach remote devices

THANK YOU!!!

POLISAS/JKE/EC503/Chapter1

61

Potrebbero piacerti anche