You are on page 1of 9

Operating System Functions

What is an Operating System

The operating system is the core software component of your computer. It performs many
functions and is, in very basic terms, an interface between your computer and the outside world.
In the section about hardware, a computer is described as consisting of several component parts
including your monitor, keyboard, mouse, and other parts. The operating system provides an
interface to these parts using what is referred to as "drivers". This is why sometimes when you
install a new printer or other piece of hardware, your system will ask you to install more
software called a driver.

What does a driver do?

A driver is a specially written program which understands the operation of the device it
interfaces to, such as a printer, video card, sound card or CD ROM drive. It translates commands
from the operating system or user into commands understood by the the component computer
part it interfaces with. It also translates responses from the component computer part back to
responses that can be understood by the operating system, application program, or user. The
below diagram gives a graphical depiction of the interfaces between the operating system and
the computer component.
Other Operating System Functions

The operating system provides for several other functions including:

• System tools (programs) used to monitor computer performance, debug


problems, or maintain parts of the system.
• A set of libraries or functions which programs may use to perform specific
tasks especially relating to interfacing with computer system components.

The operating system makes these interfacing functions along with its other functions
operate smoothly and these functions are mostly transparent to the user.

Operating System Concerns

As mentioned previously, an operating system is a computer program. 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 you may notice varying levels of quality from operating system to operating
system. Errors in operating systems cause three main types of problems:

• 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 will be explained later.
• Sometimes errors in the operating system will cause the computer not to work
correctly with some peripheral devices such as printers.

Operating System Types

There are many types of operating systems. The most common is the Microsoft suite
of operating systems. They include from most recent to the oldest:

• Windows XP Professional Edition - A version used by many businesses on


workstations. It has the ability to become a member of a corporate domain.
• Windows XP Home Edition - A lower cost version of Windows XP which is
for home use only and should not be used at a business.
• Windows 2000 - A better version of the Windows NT operating system which
works well both at home and as a workstation at a business. It includes
technologies which allow hardware to be automatically detected and other
enhancements over Windows NT.
• Windows ME - A upgraded version from windows 98 but it has been
historically plagued with programming errors which may be frustrating for
home users.
• Windows 98 - This was produced in two main versions. The first Windows 98
version was plagued with programming errors but the Windows 98 Second
Edition which came out later was much better with many errors resolved.
• Windows NT - A version of Windows made specifically for businesses offering
better control over workstation capabilities to help network administrators.
• Windows 95 - The first version of Windows after the older Windows 3.x
versions offering a better interface and better library functions for programs.
There are other worthwhile types of operating systems not made by Microsoft. The
greatest problem with these operating systems lies in the fact that not as many
application programs are written for them. However if you can get the type of
application programs you are looking for, one of the systems listed below may be a
good choice.

• Unix - A system that has been around for many years and it is very stable. It is
primary used to be a server rather than a workstation and should not be used by
anyone who does not understand the system. It can be difficult to learn. Unix
must normally run an a computer made by the same company that produces the
software.
• Linux - Linux is similar to Unix in operation but it is free. It also should not be
used by anyone who does not understand the system and can be difficult to
learn.
• Apple MacIntosh - Most recent versions are based on Unix but it has a good
graphical interface so it is both stable (does not crash often or have as many
software problems as other systems may have) and easy to learn. One drawback
to this system is that it can only be run on Apple produced hardware.

• Major Functions of Operating Systems


• Feb 26, 2009

• The major functions of an OS are:

-resource management,
-data management,
-job (task) management, and
-standard means of communication between user and computer.

The resource management function of an OS allocates computer resources such as CPU


time, main memory, secondary storage, and input and output devices for use.

The data management functions of an OS govern the input and output of the data and their
location, storage, and retrieval.

The job management function of an OS prepares, schedules, controls, and monitors jobs
submitted for execution to ensure the most efficient processing. A job is a collection of
one or more related programs and their data.

A job is a collection of one or more related programs and their data.

The OS establishes a standard means of communication between users and their


computer systems. It does this by providing a user interface and a standard set of
commands that control the hardware.

Typical Day-to-Day Uses of an Operating System

-Executing application programs.


-Formatting floppy diskettes.
-Setting up directories to organize your files.
-Displaying a list of files stored on a particular disk.
-Verifying that there is enough room on a disk to save a file.
-Protecting and backing up your files by copying them to other disks for safekeeping.

How Do Operating Systems Differ?

Operating systems for large computers are more complex and sophisticated than those
for microcomputers because the operating systems for large computers must address the
needs of a very large number of users, application programs, and hardware devices, as
well as supply a host of administrative and security features.

Operating system capabilities can be described in terms of

-the number of users they can accommodate at one time,


-how many tasks can be run at one time, and
-how they process those tasks.

Number of Users:
A single-user operating system allows only one user at a time to access a computer.

Most operating systems on microcomputers, such as DOS and Window 95, are single-user
access systems.

A multiuser operating system allows two or more users to access a computer at the same
time (UNIX).

The actual number of users depends on the hardware and the OS design.
Time sharing allows many users to access a single computer.
This capability is typically found on large computer operating systems where many users
need access at the same time.

Number of Tasks

An operating system can be designed for single tasking or multitasking.

A single tasking operating system allows only one program to execute at a time, and the
program must finish executing completely before the next program can begin.

A multitasking operating system allows a single CPU to execute what appears to be more
than one program at a time.

Context switching allows several programs to reside in memory but only one to be active
at a time. The active program is said to be in the foreground. The other programs in
memory are not active and are said to be in the background. Instead of having to quit a
program and load another, you can simply switch the active program in the foreground to
the background and bring a program from the background into the foreground with a few
keystrokes.

Cooperative multitasking in which a background program uses the CPU during idle time of
the foreground program. For example, the background program might sort data while the
foreground program waits for a keystroke.
Time-slice multitasking enables a CPU to switch its attention between the requested tasks
of two or more programs. Each task receives the attention of the CPU for a fraction of a
second before the CPU moves on to the next. Depending on the application, the order in
which tasks receive CPU attention may be determined sequentially (first come first served)
or by previously defined priority levels.

Multithreading supports several simultaneous tasks within the same application. For
example, with only one copy of a database management system in memory, one database
file can be sorted while data is simultaneously entered into another database file.

What is cache memory?

Cache (pronounced cash) memory is extremely fast memory that is built into a computer’s central
processing unit (CPU), or located next to it on a separate chip. The CPU uses cache memory to store
instructions that are repeatedly required to run programs, improving overall system speed. The advantage
of cache memory is that the CPU does not have to use the motherboard’s system bus for data transfer.
Whenever data must be passed through the system bus, the data transfer speed slows to the
motherboard’s capability. The CPU can process data much faster by avoiding the bottleneck created by
the system bus.

cache

)Pronounced cash, a special high-speed storage mechanism. It can be either a reserved section of main memory or
an independent high-speed storage device. Two types of caching are commonly used in personal computers:memory
caching and disk caching.
A memory cache, sometimes called a cache store or RAM cache, is a portion of memory made of high-speed static
RAM (SRAM) instead of the slower and cheaper dynamic RAM (DRAM) used for main memory. Memory caching is
effective because most programs access the same data or instructions over and over. By keeping as much of this
information as possible in SRAM, thecomputer avoids accessing the slower DRAM.
Some memory caches are built into the architecture of microprocessors. The Intel 80486 microprocessor, for
example, contains an 8K memory cache, and the Pentium has a 16K cache. Such internal caches are often
called Level 1 (L1) caches. Most modern PCs also come with external cache memory, calledLevel 2 (L2) caches.
These caches sit between the CPU and the DRAM. Like L1 caches, L2 caches are composed of SRAM but they are
much larger.
Disk caching works under the same principle as memory caching, but instead of using high-speed SRAM, a disk
cache uses conventional main memory. The most recently accessed data from the disk (as well as adjacent sectors)
is stored in a memory buffer. When a program needs to access data from the disk, it first checks the disk cache to
see if the data is there. Disk caching can dramatically improve the performance of applications, because accessing
abyte of data in RAM can be thousands of times faster than accessing a byte on a hard disk.
When data is found in the cache, it is called a cache hit, and the effectiveness of a cache is judged by its hit
rate. Many cache systems use a technique known as smart caching, in which the system can recognize certain types
of frequently used data. The strategies for determining which information should be kept in the cache constitute some
of the more interesting problems incomputer science.

Application software, also known as an application or an "app", is computer software designed to help
the user to perform singular or multiple related specific tasks. It helps to solve problems in the real world.
Examples include enterprise software,accounting software, office suites, graphics software, and media
players.

Application software is contrasted with system software and middleware, which manage and integrate a
computer's capabilities, but typically do not directly apply them in the performance of tasks that benefit the
user. A simple, if imperfect, analogy in the world of hardware would be the relationship of an electric light
bulb (an application) to an electric power generation plant (a system). The power plant merely generates
electricity, not itself of any real use until harnessed to an application like the electric light that performs a
service that benefits the user.

System software is computer software designed to operate the computer hardware and to provide a
platform for running application software.[1][2]

The most basic types of system software are:

 The computer BIOS and device firmware, which provide basic functionality to operate and control
the hardware connected to or built into the computer.
 The operating system (prominent examples being Microsoft Windows, Mac OS X and Linux),
which allows the parts of a computer to work together by performing tasks like
transferring data between memory and disks or rendering output onto a display device. It also
provides a platform to run high-level system software and application software.
 Utility software, which helps to analyze, configure, optimize and maintain the computer.

In some publications, the term system software is also used to designate software development tools (like
a compiler, linker or debugger).[3]

Computer purchasers seldom buy a computer primarily because of its system software (But purchasers of
devices like mobile phones because of there system software, as is the case with the iPhone, as the
system software of such devices is difficult for the end-user to modify). Rather, system software serves as
a useful (even necessary) level of infrastructure code, generally built-in or pre-installed.
In contrast to system software, software that allows users to do things like create text documents, play
games, listen to music, or surf the web is called application software.[4

Utility software is a kind of system software designed to help analyze, configure, optimize and maintain
the computer. A single piece of utility software is usually called a utility (abbr.util) or tool.

Utility software should be contrasted with application software, which allows users to do things like
creating text documents, playing games, listening to music or surfing the web. Rather than providing
these kinds of user-oriented or output-oriented functionality, utility software usually focuses on how the
computer infrastructure (including the computer hardware, operating system, application
software and data storage) operates. Due to this focus, utilities are often rather technical and targeted at
people with an advanced level of computer knowledge.

Most utilities are highly specialized and designed to perform only a single task or a small range of tasks.
However, there are also some utility suites that combine several features in one piece of software.

Most major operating systems come with several pre-installed utilities

You might also like