Professional Documents
Culture Documents
0 INTRODUCTION TO
OPERATING SYSTEMS
1.1 Operating System Environment
LEARNING OUTCOMES
Explain the Operating Systems Environment
1.1.1 OPERATING SYSTEM DEFINITION
Definition :
A program that acts as an intermediary between a user of a computer
and the computer hardware.
Simple word:
It is an interface between the user and the hardware.
It is the first software that runs when the computer boots up.
Its provides a platform for the user to run applications
Is a program that manages the computer hardware.
Purpose:
to provide an environment in which user can execute program in a
convenient & efficient manner.
Simple word ( primary concept):
Providing the system interface.
Operating system goals:
Execute user programs and make solving user problems easier.
Make the computer system convenient to use.
1.1.2 BASIC FUNCTIONS OF OPERATING
SYSTEM
Running applications
Disadvantage:
difficult to isolate the source of bugs and other errors
particularly susceptible to damage from errant or malicious code.
Fig 1: Monolithic Operating System kernel architecture
2. Microkernel
A microkernel operating system architecture provides only
a small number of services in an attempt to keep the kernel
small and scalable
These services typically include low-level memory
management, inter-process communication and basic process
synchronization to enable processes to cooperate
Operating system components outside the kernel can fail
without causing the operating system to fall over.
the downside is an increased level of inter-module
communication which can degrade system performance.
Eg: Linux and Windows XP
Advantage
high degree of modularity, making them extensible, portable and
scalable
Disadvantage
can degrade system performance.
Fig 2: Microkernel Operating system Architecture
3. Layered
To overcome the issue of monolithic architecture
by grouping components that performs similar
functions into layers
Each layer communicates with those above and
below it.
Lower-level layers provide services to higher-
level layer using interfaces that hide their
implementation
Layer OS are more flexible than monolithic OS
because the implementation of each layer can be
modified without requiring any modification to
other layers
Each component hides how it performs its job
and presents a standard interface that other
components can use to request its services
In a layer approach, a user processs request may
need to pass through many layers before it is
services
Early example of layer OS is THE (Technische
Hogeschool Eindhoven)
Advantage
o Increased throughput.
o Economy of scale
o Increased reliability
Clustered System
Share storage and are closely linked via LAN
Networking.
Provide high availability
i. Developer / Company
ii. Source Model
iii. License
iv. Official Website
v. Basic Function of Operating System
Present your outcomes in power point form for all your friend.
1.1.6 OS CONCEPT
o Multitasking
-allow more than one program to run at a time.
o Multiprogramming
-is a rudimentary form of parallel processing in which several
programs are run at the same time on a uniprocessor.
o Time sharing
-is the sharing of a computing resource among many users by means
of multiprogramming and multi-tasking.
-individuals and organizations to use a computer without owning
one
-schedule tasks for efficient use of the system and may also include
accounting for cost allocation of processor time, mass storage,
printing, and other resources.
o Buffering
-is a region of memory used to temporarily hold data while it is being
moved from one place to another.
o Spooling
-refers to putting jobs in a buffer, a special area in memory or on a
disk where a device can access them when it is ready.
Caching
is a component that transparently stores data so that future
requests for that data can be served faster.
Buffering Spooling
allows the I/O of a job to overlap allows the I/O of one job to
with its own computation overlap the computation of
another
CPU overlaps input , output and CPU Allows overlap of one Job
processing of a single Job with the computation and output
of other job
File System
Web Form:
Allow user to enter data that is
send to a server for processing
SYSTEM CALLS AND APPLICATION
PROGRAMMING INTERFACE (API)
File management
open, close, create, delete, read, write, get/set attributes...
Device management
request / release device, read, write, ...
Information maintenance
get / set time, date, system data, process / file attributes
Communications
create / delete connection, send, receive, ...