0% found this document useful (0 votes)
20 views9 pages

The Operating System

An operating system (OS) is a set of programs that manage computer hardware and software resources, acting as a host for applications and providing a user interface. Modern OS objectives include creating hardware abstraction, resource management, and ensuring an effective user experience. There are various types of operating systems, including real-time, single-user, multi-user, and network operating systems, each designed to handle different computing needs and interactions.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
20 views9 pages

The Operating System

An operating system (OS) is a set of programs that manage computer hardware and software resources, acting as a host for applications and providing a user interface. Modern OS objectives include creating hardware abstraction, resource management, and ensuring an effective user experience. There are various types of operating systems, including real-time, single-user, multi-user, and network operating systems, each designed to handle different computing needs and interactions.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 9

Introduction To Problem Solving

1.0 OPERATING SYSTEM


An operating system (OS) can be defined as a set of
computer programs that manage the hardware and software
resources of a computer. An operating system maintains a
proper balance between the software and hardware present
in a computer system. It is also called the infrastructure
software component of a computer system due to the fact
that it is responsible for the management and coordination of
activities and the sharing of the limited resources of the
computer. The operating system acts as a host for applications
that are run on the machine. As a host, one of the purposes of
an operating system is to handle the details of the operation of
the hardware. This relieves application programs from having
to manage these details and makes it easier to write applications.
Operating Systems can be viewed from two points of views :
Resource manager and Extended machines. From Resource
manager point of view, Operating Systems manage the different
parts of the system efficiently and from extended machines point
of view, Operating Systems provide a virtual machine to a user that
is more convenient to use.

At the foundation of all system software, an operating system


performs basic tasks such as controlling and allocating memory,
prioritizing system requests, controlling input and output devices,
facilitating networking and managing file systems. The operating
system forms a platform for other system software and for
application software. Windows,Linux,and Mac OS are some of the
most popular OS's.

1.1 OBJECTIVES OF OPERATING SYSTEM

Modern Operating systems generally have following three major goals

1.1.1 To hide details of hardware by creating abstraction

An abstraction occurs when software hides lower level details


and provides a set of higher-level functions. An operating
system transforms the physical world of devices, instructions,
memory, and time into virtual world that is the result of

1
Introduction To Problem Solving

abstractions built by the operating system. There are


several reasons for abstraction.
First, the code needed to control peripheral devices is
not standardized. Operating systems provide subroutines
called device drivers that perform operations on behalf of
programs for example,input/output operations.
Second, the operating system introduces new functions as
it abstracts the hardware. For instance, operating system
introduces the file abstraction so that programs do not have
to deal with disks.
Third, the operating system transforms the computer
hardware into multiple virtual computers, each belonging to a
different program. Each program that is running is called a
process. Each process views the hardware through the lens of
abstraction. Fourth, the operating system can enforce
security through abstraction.

1.1.2 To allocate resources to processes (Resource management)

An operating system controls how processes (the active


agents) may access resources (passive entities).

1.1.3 Provide a pleasant and effective user interface


The user interacts with the operating systems through the
user interface and usually interested in the “look and feel” of
the operating system. The most important components of
the user interface are the command interpreter, the file system,
on-line help, and application integration. The recent trend
has been toward increasingly integrated graphical user
interfaces that encompass the activities of multiple processes
on networks of computers.
1.2 HOW AN OPERATING SYSTEM WORKS When the power of
computer is turned on, the first program that runs is usually a
set of instructions kept in the computer's read- only memory
(ROM). This code examines the system hardware to make sure
everything is functioning properly. This power-on self test (POST)
checks the CPU, memory and basic input-output system (BIOS)
for errors and stores the result in a special memory location.
Once the POST has successfully completed, the software

2
Introduction To Problem Solving

loaded in ROM (sometimes called the BIOS or firmware) will begin


to activate the computer's disk drives. In most modern computers,
when the computer activates the hard disk drive, it finds the first
piece of the operating system: the bootstrap loader. The bootstrap
loader is a small program that has a single function: It loads the
operating system into memory and allows it to begin operation. In
the most basic form, the bootstrap loader sets up the small driver
programs that interface with and control the various
hardware subsystems of the computer. It sets up the divisions
of memory that hold the operating system, user information
and applications. It establishes the data structures that will
hold the myriad signals, flags and semaphores that are used to
communicate within and between the subsystems and applications
of the computer. Then it turns control of the computer over to the
operating system.

1.3 Types of OS
A. Types of Operating Systems Based on the Types of
Computer they Control and the Sort of Applications they Support
Based on the types of computers they control and the sort of
applications they support, there are generally four types within the
broad family of operating systems. The broad categories are as
follows:

1. Real-Time Operating Systems (RTOS)

They are used to control machinery, scientific instruments and


industrial systems. An RTOS typically has very little user-interface
capability, and no end- user utilities,since the system will be a sealed box
when delivered for use. Avery important part of an RTOS is managing the
resources of the computer so that a particular operation executes in
precisely the same amount of time every time it occurs. In a complex
machine, having a part move more quickly just because system
resources are available may be just as catastrophic as having it not
move at all because the system is busy. RTOS can be hard or soft. A hard
RTOS guarantees that critical tasks are performed on time. However, soft
RTOS is less restrictive. Here, a critical real-time task gets priority over other
tasks and retains that priority until it completes.

3
Introduction To Problem Solving

2. Single-User,Single-Tasking Operating System

As the name implies, this operating system is designed to


manage the computer so that one user can effectively do
one thing at a time. The Palm OS for Palm handheld
computers is a good example of a modern single-user,
single-task operating system.

3. Single-User,Multi-Tasking Operating System

This is the type of operating system most people use on


their desktop and laptop computers today. Windows 98 and
the Mac O.S. are both examples of an operating system that
will let a single user have several programs in operation at the
same time.

4. Multi-User Operating Systems

A multi-user operating system allows many different users to


take advantage of the computer's resources simultaneously.
The operating system must make sure that the requirements
of the various users are balanced, and that each of the
programs they are using has sufficient and separate
resources so that a problem with one user doesn't affect the
entire community of users. Unix, VMS, and mainframe
operating systems, such as MVS, are examples of multi-user
operating systems. It's important to differentiate here
between multi-user operating systems and single-user
operating systems that support networking. Windows 2000
and Novell Netware can each support hundreds or thousands
of networked users, but the operating systems themselves are
not true multi-user operating systems. The system administrator
is the only user for Windows 2000 or Netware. The network
support and the entire remote user logins the network
enables are, in the overall plan of the operating system, a
program being run by the administrative user.

4
Introduction To Problem Solving

B. Types of OS based on the Nature of Interaction that takes


place between the Computer User and His/Her Program during
its Processing
Modern computer operating systems may be classified into three
groups, which are distinguished by the nature of interaction that
takes place between the computer user and his or her program
during its processing. The three groups are: called batch,
time-shared and real time operating systems.

1. Batch Processing OS

In a batch processing operating system environment, users


submit jobs to a central place where these jobs are
collected into a batch, and subsequently placed on an input
queue at the computer where they will be run. In this case, the
user has no interaction with the job during its processing,
and the computer’s response time is the turnaround time
(i.e. results are ready for return to the person who submitted
the job).

2. Time Sharing OS

Another mode for delivering computing services is provided


by time sharing operating systems. In this environment a
computer provides computing services to several or many users
concurrently on-line. Here, the various users are sharing the
central processor, the memory, and other resources of the
computer system in a manner facilitated, controlled, and
monitored by the operating system. The user, in this
environment, has nearly full interaction with the program
during its execution, and the computer’s response time may
be expected to be no more than a few second.

3. Real Time OS

The third class of operating systems, real time operating


systems, are designed to service those applications where
response time is of the essence in order to prevent error,
misrepresentation or even disaster. Examples of real time
operating systems are those which handle airlines
reservations, machine tool control, and monitoring of a nuclear
power station. The systems, in this case, are designed to be

5
Introduction To Problem Solving

interrupted by external signal that require the immediate


attention of the computer system. In fact, many computer
operating systems are hybrids, providing for more than one of
these types of computing service simultaneously. It is
especially common to have a background batch system
running in conjunction with one of the other two on the same
computer.

C. Other Types of OS based on the Definition of the System/Environment

A number of other definitions are important to gaining a better


understanding and subsequently classifying operating systems:

1. Multiprogramming Operating System

A multiprogramming operating system is a system that allows


more than one active user program (or part of user
program) to be stored in main memory simultaneously.
Thus, it is evident that a time-sharing system is a
multiprogramming system, but note that a multiprogramming
system is not necessarily a time-sharing system. A batch or
real time operating system could, and indeed usually
does,have more than one active user program simultaneously
in main storage. Another important, and all too similar, term is
‘multiprocessing’. A multiprocessing system is a computer
hardware configuration that includes more than one
independent processing unit. The term multiprocessing is
generally used to refer to large computer hardware
complexes found in major scientific or commercial
applications.

2. Network Operating Systems

A networked computing system is a collection of physical


interconnected computers. The operating system of each of the
interconnected computers must contain, in addition to its own
stand-alone functionality, provisions for handling communication
and transfer of programs and data among the other
computers with which it is connected. In a network operating

6
Introduction To Problem Solving

system, the users are aware of the existence of multiple


computers,and can log in to remote machines and copy files
from one machine to another. Each machine runs its own
local operating system and has its own user (or users). Network
operating systems are designed with more complex functional
capabilities. Network operating systems are not fundamentally
different from single processor operating systems. They
obviously need a network interface controller and some
low-level software to drive it, as well as programs to achieve
remote login and remote files access, but these additions do
not change the essentialstructure of the operating systems.

3. Distributed Operating Systems

A distributed computing system consists of a number of


computers that are connected and managed so that they
automatically share the job processing load among the
constituent computers, or separate the job load as
appropriate particularly configured processors. Such a system
requires an operating system which,in addition to the typical
stand-alone functionality,provides coordination of the
operations and information flow among the component
computers. The distributed computing environment and its
operating systems, like networking environment, are designed
with more complex functional capabilities. However, a distributed
operating system, in contrast to a network operating system, is
one that appears to its users as a traditional uniprocessor
system, even though it is actually composed of multiple
processors. In a true distributed system, users should not be
aware of where their programs are being run or where their files
are located; that should all be handled automatically and
efficiently by the operating system.

1.4 FUNCTIONS OF OPERATING SYSTEM


The major functions of operating systems are;
• Processor management: An operating system deals with
the assignment of processor to different tasks being
performed by the computer system.

7
Introduction To Problem Solving

• Memory management: An operating system deals with the


allocation of main memory and other storage areas to
the system programs as well as user programs and data.

• Input/output management: An operating system deals with


the co-ordination and assignment of the different output
and input device while one or more programs are being
executed.

• File management: An operating system deals with the


storage of file of various storage devices to another. It
also allows all files to be easily changed and modified
through the use of text editors or some other files
manipulation routines.

Other functions of the operating systems are;


• Establishment and enforcement of a priority system: The
operating system determines and maintains the order in
which jobs are to be executed in the computer system.

• Automatic transition from job to job as directed by special control


statements.

• Interpretation of commands and instructions.

• Coordination and assignment of compilers, assemblers,


utility programs, and other software to the various user of
the computer system.

• Facilitates easy communication between the computer


system and the computer operator (human). It also
establishes data security and integrity.

1.5 OPERATING SYSTEMS FLAWS


Operating systems are written by human programmers who
make mistakes. Therefore there can be errors in the code even
though there may be some testing before the product is
released. Some companies have better software quality control
and testing than others so one may notice varying levels of
quality from operating system to operating system. Errors in
operating systems cause three main types of problems:

8
Introduction To Problem Solving

• System crashes and instabilities - These can happen due to a


software bug

typically in the operating system, although computer


programs being run on the operating system can make the
system more unstable or may even crash the system by
themselves. This varies depending on the type of
operating system. A system crash is the act of a system
freezing and becoming unresponsive which would cause
the user to need to reboot.
• Security flaws - Some software errors leave a door open for
the system to be broken into by unauthorized intruders.
As these flaws are discovered, unauthorized intruders
may try to use these to gain illegal access to your
system. Patching these flaws often will help keep your
computer system secure. How this is done willbe explained
later.

• Sometimes errors in the operating system will cause the


computer not to work correctly with some
peripheraldevices such as printers.

You might also like