Operating System
Operating System
Distributed systems.
The most
important
type of
system
s/w is the
OS
The figure shows a sample PnP hardware configuration for a USB joystick.
PES Modern college of Engg.,MCA Departm
ent
Illustration of WDM (Windows Driver Model) Driver Layers
In this figure, the USB joystick plugs into a port on a USB hub. The USB hub in
this example resides on the USB Host Controller board and is plugged into the
single port on the USB host controller board. The USB host controller plugs into
a PCI bus. From a PnP perspective, the USB hub, the USB host controller, and
the PCI bus are all bus devices because they each provide ports. The joystick is
not a bus device.
• Maintains information about the files that are available on the system
• Where files are located in mass storage, their size and type and their
protections, what part of mass storage is available.
• Files usually allowed to be grouped in directories or folders. Allows
hierarchical organization.
OS Memory Manager
• Responsible for coordinating the use of the machine’s main memory.
• Decides what area of memory is to be allocated for a program and its data.
• Allocates and deallocates memory for different programs and always knows
what areas are free.
OS Scheduler
• Maintains a record of processes that are present, adds new processes, removes
completed processes
– memory area(s) assigned
PES Modern college of Engg.,MCA Departm
ent
– priority
– state of readiness to execute (ready/wait)
OS Dispatcher
Ensures that processes that are ready to run are actually executed.
Time is divided into small (50 ms) segments called a time slice
When the time slice is over, the dispatcher allows scheduler to update process
state for each process, then selects the next process to run.
OS Summary
Shell -- Interface to user.
Memory Management
Operating System also manages the memory of the Computer System means
provide the memory to the process .
Also de-allocate the memory from the Process if a Process gets completed .
O/S
Users
Users
shell
(Greedy/List/Event Driven)
– Processor never left idle when there are ready tasks
– Processor allocated to processes according to priorities
– Priorities Static - at design time
Dynamic - at runtime
• Earliest Deadline First (EDF)
– Process with earliest deadline given highest priority
• Least Slack Time First (LSF)
– slack = relative deadline – execution left
• Rate Monotonic Scheduling (RMS)
– For periodic tasks
– Tasks priority inversely proportional
PES Modern
ent
to it’sDepartm
college of Engg.,MCA period
a)–(b) A distributed system.
(c) A parallel system.
PES Modern college of Engg.,MCA Departm
ent
A distributed system is a collection of autonomous computers linked by a
computer network that appear to the users of the system as a single computer.
Definition : A distributed system consists of a collection of autonomous
computers, connected through a network and distribution middleware, which
enables computers to coordinate their activities and to share the resources of the
system, so that users perceive the system as a single, integrated computing
facility.
By running a distributed system software the computers are enabled to:
- coordinate their activities
- share resources: hardware, software, data.
ent
PES Modern college of Engg.,MCA Departm
Inconsistent analysis.
Scalability Fault Tolerance
Adaption of distributed systems to Hardware, software and networks fail!
• accommodate more users. Distributed systems must maintain
• respond faster (this is the hard one) availability even at low levels of
Usually done by adding more and/or hardware/software/network reliability.
faster processors. Fault tolerance is achieved by
Components should not need to be • recovery
changed when scale of a system • redundancy
increases.
Design components to be scalable!
Scaling Transparency
Allows the system and applications to
expand in scale without change to the
system structure or the application
algorithms.
e.g. World-Wide-Web , Distributed
Database
PES Modern college of Engg.,MCA Departm
ent