1. COMPUTER SOFTWARE AND OPERATING SYSTEM
Software
A set of instructions given to computer to solve a problem is called software. Software is also known as
program. Computer software specify a sequence of operations to be performed by computer. A computer
works according to the instructions written in software.
Types of Software
Software can be divided into the following categories:
System software
Application software
SYSTEM SOFTWARE
System Software is set of programs to control and manage the operations of computer hardware. It
controls the usage and allocation of different hardware components. It enables application programs to
execute properly. It controls the basic operations as follows:
• Saving data on disk
• Making computer to work for us
• Printing a document etc.
Examples of System Software
Some examples of system software are as follows:
• Operating System
• Utility Programs
• Device Drivers
Application Software
Application software is used to perform various applications on the computer. It helps a computer user to
perform specific tasks. People use application software according to their needs. It is also known
as application package.
Categories of Application Software
The main categories of application software are as follows:
a) Customized Software
Customized software is a type of application software that is designed for a particular customer or
organization. It is developed to meet the exact requirements of a particular customer or organization. A
Customized software can be developed by single programmer or a team of programmers. The cost of
customized software is more than packaged software.
Example
2. A Software that is developed for a particular university is an example of customized software.
b) Package Software
Package software is a type of application software that is developed for sale to the general public. It is
also known as off – the – shelf software. It enables the people to perform daily activities. Package
software is normally developed by expert programmers.
Examples
Some examples of package software are as follows:
• Word processor such as MS word.
• Spreadsheet such as MS excel and Lotus 123 etc.
• Database software such as MS access and Oracle etc.
• Graphics software such as CorelDraw and Adobe Photoshop etc.
TRANSLATORS
A computer can only understand programs defined using machine code. Consequently a program written
for example in a high level language such as Java cannot be run directly. To execute a computer program
written in high or low level language, it must be first be translated. There are 3 types of system software
used for translating the code that a programmer writes into a form that the computer can execute (i.e.
machine code). These are:
Assemblers
Compilers
Interpreters
Assemblers
An Assembler converts an assembly program into machine code. Source code is the code that is input to
the translator. Executable code is the code that is output from the translators.
Compilers
A Compiler is a program that translates a high level language into machine code.
The Turbo Pascal compiler, for example, translates a program written in Pascal into
machine code that can be run on a PC.
3. Advantages of Compiler
Fast in execution
The object/executable code produced by a compiler can be distributed or executed without having
to have the compiler present
The object program can be used whenever required without the need of recompilation.
Disadvantages of Compiler
Debugging a program is much harder. Therefore not so god at finding errors
When an error is found, the whole program has to be recompiled.
Interpreters
An Interpreter is also a program that translates high-level source code into
executable code. However the difference between a compiler and an interpreter is
that an interpreter translates one line at a time and then executes it: no object
code is produced, and so the program has to be interpreted each time it is to be run.
If the program performs a section code 1000 times, then the section is translated into
machine code 1000 times since each line is interpreted and then executed.
Advantages of Interpreter
Good at locating errors in programs
Debugging is easier since the interpreter stops when it encounters an error
If an error is deducted there is no need to retranslate the whole program
Disadvantages of Interpreter
Rather slow
No object code is produced, so a translation has to be done every time the program is running
For the program to run, the interpreter must be present
4. OPERATING SYSTEM
The operating system basically runs the computer and allows other programs to run as well. The
operating system does all the basic things that a computer needs to do, such as recognizing inputs from
the mouse or the keyboard. It keeps track of where all the files are on the computer.
Functions of OS
Providing an interface to the user
Managing system resources
Managing security and access rights
Running applications
Memory management
Booting the computer
Performs basic computer tasks e.g. managing the various peripheral devices such as mouse,
keyboard etc.
Provides file management which refers to the way the operating system manipulates, stores,
retrieves and save data
Handle system resources such as computer memory and sharing of the CPU time by various
applications or peripheral devices.
Types of OS
Generally, there are four basic types, based on the type of computer they control and the sort of
applications they support:
Single User, Single Tasking
This type manages the computer so that one user can effectively do one function 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, Multitasking
This is the type of operating system that most desktops and laptops us today. Microsoft’s
Windows and Apple’s MacOS are both examples of operating systems that will let a single user
have several programs in operating 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.
Multiuser, Multitasking
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
5. 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.
Real Time Operating System
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. 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.