Types of Operating Systems

Download as doc, pdf, or txt
Download as doc, pdf, or txt
You are on page 1of 7

Types of Operating Systems

Within the broad family of operating systems, there are generally four types, categorized based on the types
of computers they control and the sort of applications they support. The categories are:
• Real-time operating system (RTOS) - Real-time operating systems 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. A very 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.
• Single-user, single task - 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.
• Single-user, multi-tasking - This is the type of operating system most people use on their desktop
and laptop computers today. Microsoft's Windows and Apple's MacOS platforms are both examples
of operating systems that will let a single user have several programs in operation at the same
time. For example, it's entirely possible for a Windows user to be writing a note in a word processor
while downloading a file from the Internet while printing the text of an e-mail message.
• Multi-user - 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.

Photo courtesy Apple


Mac OS X Panther screen shot

It's important to differentiate 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 aren't true multi-user operating systems. The
system administrator is the only "user" for Windows 2000 or Netware. The network support and all of the
remote user logins the network enables are, in the overall plan of the operating system, a program being run
by the administrative user.

Operating System Functions


At the simplest level, an operating system does two things:
1. It manages the hardware and software resources of the system. In a desktop computer, these
resources include such things as the processor, memory, disk space and more (On a cell phone,
they include the keypad, the screen, the address book, the phone dialer, the battery and the
network connection).
2. It provides a stable, consistent way for applications to deal with the hardware without having to
know all the details of the hardware.
The first task, managing the hardware and software resources, is very important, as various programs and
input methods compete for the attention of the central processing unit (CPU) and demand memory,
storage and input/output (I/O) bandwidth for their own purposes. In this capacity, the operating system plays
the role of the good parent, making sure that each application gets the necessary resources while playing
nicely with all the other applications, as well as husbanding the limited capacity of the system to the greatest
good of all the users and applications.

©2008 HowStuffWorks
The operating system controls every task your computer
carries out and manages
system resources.
The second task, providing a consistent application interface, is especially important if there is to be more
than one of a particular type of computer using the operating system, or if the hardware making up the
computer is ever open to change. A consistent application program interface (API) allows a software
developer to write an application on one computer and have a high level of confidence that it will run on
another computer of the same type, even if the amount of memory or the quantity of storage is different on
the two machines.
Even if a particular computer is unique, an operating system can ensure that applications continue to run
when hardware upgrades and updates occur. This is because the operating system -- not the application --
is charged with managing the hardware and the distribution of its resources. One of the challenges facing
developers is keeping their operating systems flexible enough to run hardware from the thousands of
vendors manufacturing computer equipment. Today's systems can accommodate thousands of different
printers, disk drives and special peripherals in any possible combination.

TYPES OF OPERATING SYSTEM

An operating system is the single most important software when you run a computer, it is
what takes care of pretty much everything on a computer system, while the majority of
computers we see happen to be using one ‘type’ of operating system performing the same
functions, operating systems can be branched into several different types as well. It’s
been a while since I’ve shared a fairly technical post on Computer Realm so I guess today
would be a good day for one.
• Batch Processing Operating System

In a batch processing operating system interaction between the user and processor is
limited or there is no interaction at all during the execution of work. Data and programs
that need to be processed are bundled and collected as a ‘batch’ and executed together.

Batch processing operating systems are ideal in situations where:

- There are large amounts of data to be processed.

- Similar data needs to be processed.

- Similar processing is involved when executing the data.

The system is capable of identifying times when the processor is idle at which time
‘batches’ maybe processed. Processing is all performed automatically without any user
intervention.

• Real-time Operating System

A real-time operating system processes inputs simultaneously, fast enough to affect the
next input or process. Real-time systems are usually used to control complex systems that
require a lot of processing like machinery and industrial systems.

• Single User Operating System

A single user OS as the name suggests is designed for one user to effectively use a
computer at a time.

• Multi-Tasking Operating System

In this type of OS several applications maybe simultaneously loaded and used in the
memory. While the processor handles only one application at a particular time it is
capable of switching between the applications effectively to apparently simultaneously
execute each application. This type of operating system is seen everywhere today and is
the most common type of OS, the Windows operating system would be an example.
• Multi-User Operating System

This type of OS allows multiple users to simultaneously use the system, while here as
well, the processor splits its resources and handles one user at a time, the speed and
efficiency at which it does this makes it apparent that users are simultaneously using the
system, some network systems utilize this kind of operating system.

• Distributed Operating System

In a distributed system, software and data maybe distributed around the system, programs
and files maybe stored on different storage devices which are located in different
geographical locations and maybe accessed from different computer terminals.

While we are mostly accustomed to seeing multi-tasking and multi-user operating


systems, the other operating systems are usually used in companies and firms to power
special systems.

Different Types of Operating Systems


An operating system is a software component of a computer system that is responsible for the
management of various activities of the computer and the sharing of computer resources. It hosts
the several applications that run on a computer and handles the operations of computer
hardware. Users and application programs access the services offered by the operating systems,
by means of system calls and application programming interfaces. Users interact with operating
systems through Command Line Interfaces (CLIs) or Graphical User Interfaces known as GUIs.
In short, operating system enables user interaction with computer systems by acting as an
interface between users or application programs and the computer hardware. Here is an overview
of the different types of operating systems.

Real-time Operating System: It is a multitasking operating system that aims at executing real-
time applications. Real-time operating systems often use specialized scheduling algorithms so
that they can achieve a deterministic nature of behavior. The main object of real-time operating
systems is their quick and predictable response to events. They either have an event-driven or a
time-sharing design. An event-driven system switches between tasks based of their priorities
while time-sharing operating systems switch tasks based on clock interrupts.

Multi-user and Single-user Operating Systems: The operating systems of this type allow a
multiple users to access a computer system concurrently. Time-sharing system can be classified
as multi-user systems as they enable a multiple user access to a computer through the sharing of
time. Single-user operating systems, as opposed to a multi-user operating system, are usable by
a single user at a time. Being able to have multiple accounts on a Windows operating system
does not make it a multi-user system. Rather, only the network administrator is the real user. But
for a Unix-like operating system, it is possible for two users to login at a time and this capability of
the OS makes it a multi-user operating system.

Multi-tasking and Single-tasking Operating Systems: When a single program is allowed to run
at a time, the system is grouped under a single-tasking system, while in case the operating
system allows the execution of multiple tasks at one time, it is classified as a multi-tasking
operating system. Multi-tasking can be of two types namely, pre-emptive or co-operative. In pre-
emptive multitasking, the operating system slices the CPU time and dedicates one slot to each of
the programs. Unix-like operating systems such as Solaris and Linux support pre-emptive
multitasking. Cooperative multitasking is achieved by relying on each process to give time to the
other processes in a defined manner. MS Windows prior to Windows 95 used to support
cooperative multitasking.

Distributed Operating System: An operating system that manages a group of independent


computers and makes them appear to be a single computer is known as a distributed operating
system. The development of networked computers that could be linked and communicate with
each other, gave rise to distributed computing. Distributed computations are carried out on more
than one machine. When computers in a group work in cooperation, they make a distributed
system.
Embedded System: The operating systems designed for being used in embedded computer
systems are known as embedded operating systems. They are designed to operate on small
machines like PDAs with less autonomy. They are able to operate with a limited number of
resources. They are very compact and extremely efficient by design. Windows CE, FreeBSD and
Minix 3 are some examples of embedded operating systems.

The operating systems thus contribute to the simplification of the human interaction with the
computer hardware. They are responsible for linking application programs with the hardware,
thus achieving an easy user access to the computers.

Operating system
Article Table of contents

Description of the operating system


For a computer to be able to operate a computer programme (sometimes known as
application or software), the machine must be able to perform a certain number of
preparatory operations to ensure exchange between the processor, the memory and the
physical resources (peripherals).
The operating system (sometimes referred to by its abbreviation OS), is responsible for
creating the link between the material resources, the user and the applications (word
processor, video game, etc.). When a programme wants to access a material resource, it
does not need to send specific information to the peripheral device but it simply sends the
information to the operating system, which conveys it to the relevant peripheral via its
driver. If there are no drivers, each programme has to recognise and take into account the
communication with each type of peripheral!

The operating system thus allows the "dissociation" of programmes and hardware, mainly
to simplify resource management and offer the user a simplified Man-machine interface
(MMI) to overcome the complexity of the actual machine.

Roles of the operating system


The operating system has various roles:

• Management of the processor: the operating system is responsible for managing


allocation of the processor between the different programmes using a scheduling
algorithm. The type of scheduler is totally dependent on the operating system,
according to the desired objective.
• Management of the random access memory: the operating system is
responsible for managing the memory space allocated to each application and,
where relevant, to each user. If there is insufficient physical memory, the
operating system can create a memory zone on the hard drive, known as "virtual
memory". The virtual memory lets you run applications requiring more memory
than there is available RAM on the system. However, this memory is a great deal
slower.
• Management of input/output: the operating system allows unification and
control of access of programmes to material resources via drivers (also known as
peripheral administrators or input/output administrators).
• Management of execution of applications: the operating system is responsible
for smooth execution of applications by allocating the resources required for them
to operate. This means an application that is not responding correctly can be
"killed".
• Management of authorisations: the operating system is responsible for security
relating to execution of programmes by guaranteeing that the resources are used
only by programmes and users with the relevent authorisations.
• File management: the operating system manages reading and writing in the file
system and the user and application file access authorisations.
• Information management: the operating system provides a certain number of
indicators that can be used to diagnose the correct operation of the machine.

Components of the operating system


The operating system comprises a set of software packages that can be used to manage
interactions with the hardware. The following elements are generally included in this set
of software:

• The kernel, which represents the operating system's basic functions such as
management of memory, processes, files, main inputs/outputs and communication
functionalities.
• The shell, allowing communication with the operating system via a control
language, letting the user control the peripherals without knowing the
characteristics of the hardware used, management of physical addresses, etc.
• The file system, allowing files to be recorded in a tree structure.

Multi-threaded systems
An operating system is known as multi-threaded when several "tasks" (also known as
processes) may be run at the same time.
The applications consist of a sequence of instructions known as "threads". These threads
will be alternately active, on standby, suspended or destroyed, according to the priority
accorded to them or may be run simultaneously.
A system is known as pre-emptive when it has a scheduler (also called planner), which,
according to priority criteria, allocates the machine time between the various processes
requesting it.
The system is called a shared time system when a time quota is allocated to each process
by the scheduler. This is the case of multi-user systems which allow several users to use
different or similar applications on the same machine at the same time. the system is then
referred to as a "transactional system". To do this, the system allocates a period of time
to each user.

Multi-processor systems
Multi-processing is a technique that involves operating several processors in parallel to
obtain a higher calculation power than that obtained using a high-end processor or to
increase the availability of the system (in the event of processor breakdown).
The term SMP (Symmetric Multiprocessing or Symmetric Multiprocessor) refers to an
architecture in which all processors access the same shared memory.
A multiprocessor system must be able to manage memory sharing between several
processors but also to distribute the work load.

Embedded systems
Embedded systems are operating systems designed to operate on small machines, such
as PDAs (personal digital assistants) or autonomous electronic devices (spatial probes,
robot, on-board vehicle computer, etc.) with reduced autonomy. Thus an essential feature
of embedded systems is their advanced energy management and ability to operate with
limited resources.
The main "general use" embedded systems for PDAs are as follows:

• PalmOS
• Windows CE / Windows Mobile / Window Smartphone

Real time systems


Real time systems, used mainly in industry, are systems designed to operate in a time-
constrained environment. A real time system must also operate reliably according to
specific time constraints; in other words, it must be able to properly process information
received at clearly-defined intervals (regular or otherwise).
Here are some examples of real time operating systems:

• OS-9;
• RTLinux (RealTime Linux);
• QNX;
• VxWorks.

You might also like