Operating System: By: Dr. Roben A. Juanatas
Operating System: By: Dr. Roben A. Juanatas
What is a software?
A collection of programs.
Types of Software
Application Software
System Software
Application Software
a software that is designed and created to
perform specific personal, business or scientific
processing tasks.
• Single user/single-tasking OS
• Single user/multi-tasking OS
• Multi-tasking OS (Pre-emptive)
• Multi-user OS
• Multi-processing OS
Single-user/single-tasking OS
Allows only one user to run one program at a
time.
PDA’s, smart phones and other small
computing devices, however, often used a
single-user/single-tasking OS.
Single-user/multi-tasking OS
Allows a single user to work on two or more
programs that reside in memory at the same
time.
Programs can run concurrently through
time-sharing.
The tasks share common processing
resources, such as a CPU and main memory.
Single-user/multi-tasking OS
Multitasking does not necessarily mean that
multiple tasks are executing at exactly the same
instant. In other words, multitasking does not
imply parallelism, but it does mean that more
than one task can be part-way through
execution at the same time, and more than one
task is advancing over a given period of time.
Multi-tasking OS (Pre-emptive)
Some OS used pre-emptive multitasking to prevent
anyone process from monopolizing the computer
resources.
With pre-emptive multi-tasking, the OS interrupt a
program that is executing and passes control to
another program waiting to be executed.
Advantage: The OS regains control if one program
stops operating properly.
Multi-user OS
Enables two or more users to run programs
simultaneously.
Networks, midrange servers, mainframes
and supercomputers allow hundreds to
thousands users connect at the same time.
Multi-processing OS
Supports two or more processor running
programs at the same time.
It involves the coordinated processing of
programs by more than one processor.
It increases a computer’s processing speed.
It can also serve as a fault-tolerance computer.
A fault-tolerant computer continues to operate when
one of its components fails, insuring that no data is
lost.
Fault-tolerant computers have duplicate components
and continue to operate.
4. Managing Memory
Purpose of Memory Management
To make optimize the use of RAM.
The OS allocates, or assigns data and instructions to
an area of memory while they are being processed.
Then, it carefully monitors the contents of memory.
Finally, the OS releases these items from being
monitored in memory even the processor no longer
requires them.
Virtual Memory
With virtual memory, the OS allocates a portion of
storage medium, usually that hard disk, to function
as additional RAM.
As you interrupt with a program, part of it may be in
physical RAM, while the rest of the program is on
the hard disk as virtual memory.
Because virtual memory is slower than RAM, users
may notice the computer slowing down while it uses
virtual memory.
The area of the hard disk used for virtual
memory is called as swap file because it
swaps (exchanges) data, information, and
instructions between memory and storage.
A page is the amount of data and program
instructions that can swap at a given time.
The technique of swapping items between
memory and storage, called paging, is a
time-consuming for the computer.
When an OS spends much time of its time
paging instead of executing application
software, it is said to be thrashing.
If application software, such as a web
browser, has stopped responding and the
hard disk’s LED blinks repeatedly, the OS
probably is thrashing.
How a computer might use
virtual memory
Step 1:
The OS transfers the least recently used data
and program instructions from RAM to the
hard disk because RAM is needed for other
functions.
Step 2:
The OS transfers data and program
instructions from the hard disk to RAM when
they are needed.
5. Scheduling Jobs
The OS determines the order in which the
jobs are processed.
A job is an operation the processor
manages.
Job includes the following:
Receiving data from an input device
Processing instructions
Sending an information to an output device and
transferring items from storage to memory and
from memory to storage.
A multi-user OS does not always process jobs on
a first-come, first-served basis.
Sometimes, one user may have a higher priority
than the other users.
In this case, the OS adjusts the schedule of jobs.
Sometimes, a device already maybe busy
processing one job when it receives a second job.
This occurs because the processor operates at a
much faster rate of speed than peripheral devices.
While waiting for devices to become idle, the
OS places items in buffers.
A buffer is a segment of memory or storage
in which items are placed while waiting to be
transferred from an input device or to an
output device.
The OS commonly uses buffers with print
jobs.
This process, called spooling, sends print
jobs to a buffer instead of sending them
immediately to the printer.
The buffer holds the information waiting to
print while the printer prints from the buffer at
its own rate of speed.
By spooling print jobs to a buffer, the
processor can continue interpreting and
executing instructions while the printer prints.
This allow users to work on the computer for
other tasks while a printer is printing.
Multiple print jobs line up in a queue in the
buffer.
A program, called a print spooler, intercepts
print jobs from the OS and places them in the
queue.
6. Configuring Devices
A driver, short for device driver, is a small program
that tells the OS how to communicate with specific
device.
Plug and Play means the OS automatically
configures new devices as you install them.
For devices that are not Plug and Play, Windows XP
provides a wizard to guide users through the
installation steps.
7. Monitoring Performance
OS typically contain a performance monitor.
A performance monitor is a program that assesses
and reports information about various computer
resources and devices.
The information in performance reports helps users
and administrators identify a problem with resources
so they can try to resolve any problems.
8. Establishing Internet
Connections
9. Providing File Management &
other Utilities
OS provides:
Managing files
Viewing images
Securing a computer from unauthorized access
Uninstalling programs
Scanning disks
Diagnosing problems
Backing up files and disks
Setting up screen savers
OS Utility Programs
Utility Programs
A utility program, also called utility, is a type
of system software that allows user to
perform maintenance-type tasks, usually
related to managing a computer, its devices,
or its programs.
Utility programs included with most operating systems
provide the ff. functions:
Managing files
Viewing images
Securing a computer from unauthorized access
Uninstalling programs
Scanning disks
Defragmenting disks
Diagnosing problems
Backing up files and disks
Setting up screen savers
File Manager