[go: up one dir, main page]

0% found this document useful (0 votes)
131 views8 pages

Computer Software

The document discusses different types of computer software including system software and application software. System software manages hardware and allows other programs to function, including operating systems, utility software, and programming language translators. Application software directly assists users and can be general purpose, special purpose, or bespoke.
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)
131 views8 pages

Computer Software

The document discusses different types of computer software including system software and application software. System software manages hardware and allows other programs to function, including operating systems, utility software, and programming language translators. Application software directly assists users and can be general purpose, special purpose, or bespoke.
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/ 8

Computer Centre University of Jaffna

3. Computer Software
3.1. What is Software?
Software, also called a computer program or simply a program, is a series of instructions that
tells the hardware of a computer what to do. For example, some instructions direct the
computer to allow you to input data from the keyboard and store it in memory. Other
instructions cause data stored in memory to be used in calculations such as adding a series of
numbers to obtain a total.

Before a computer can perform or execute a program, the instructions in the program must
be loaded into the memory (RAM) of the computer. Usually, they are loaded into memory
from storage like hard disk.

When you purchase a program, you will receive one or more CD-ROMs or a single DVD-ROM
on which the software is stored. To use the software, you often need to install the software
on the computer’s hard disk. Sometimes, a program can be loaded in memory directly from a
CD-ROM or a DVD-ROM so that you do not have to install it on the hard disk to use it.

When you buy a computer, it usually has some software already installed in its hard disk. Thus
you can use the computer as soon as you receive it. Software is the key to productive use of
computers. With the correct software, a computer can become a valuable tool.

3.2. Categories of Software


The following diagram (Figure .1) shows the basic categories of software. This section will
give you a description on each category of software together with some examples.

Software

System Software Application Software

Operating system General Purpose

Utility Software Special Purpose

Library Programs Bespoke

Programming Language
Translaters

Figure 1 Classification of Computer Software

1
Computer Centre University of Jaffna

Figure 2 The interaction among User, Application Software, System Software and Hardware.

Normally, a user interacts with application software. This then controls the hardware by calling on
operating system routines. Sometimes the user interacts directly with the operating system. (E.g.
when moving a file between two folders.)

3.2.1 System Software

System software consists of the programs that control the


operations of the computer and its devices. Functions that
system software performs include starting up the computer;
opening, executing, running, applications; storing, retrieving,
and copying files; formatting disks; reducing file sizes; and
backing up the contents of a hard disk. Accordingly you can
see that the System Software will handle the smooth running
of all the components of the computer as well as providing
general functionality for other programs to use, tools to
speed up the computer, tools to develop new software and programs to keep you safe from
attacks.

As shown in the above figure 1 there are several types of system software. Next sections will look
at each type of system software together with examples.

3.2.1.1. Operating Systems (OS)

The Operating System contains instructions that co-ordinate all of the activities of hardware
devices of your computer. It also contains instructions that allow you to run any applications
software. One may define the Operating system as an interface between a user and all computer
resources.

When you start a computer, the operating system is loaded or copied into memory (RAM) from
the computer hard disk. It remains in memory while the computer is running and allows you to
communicate with the computer and other software. A computer cannot function without an
operating system. It is an important component of the computer system, because it sets the
standards for the application programs that run on it. All programs must “talk to” the OS.

2
Computer Centre University of Jaffna
Following are some examples of such OS:

Windows Windows 10, Windows 8, Windows 7, Windows XP, Windows Vista etc.

Open Source Linux (Ubuntu, Centos, Fedora etc.)

Apple Mac OS

Command Line DOS, Unix

Smart Phone Apple's iOS, Google's Android

Desktop OS vs. Server OS


The OS can also be categorized as Desktop OS and Server OS depending on whether the OS is to
be installed in a desktop computer or a server. For example, the Windows OS family can be
categorized as follows:
Desktop OS: Windows 10, Windows 8, Windows 7
Server OS: Windows Server

Services of an Operating System

There are two main services performed by an operating system. They are:
 Managing the hardware and other software of a computer
 Providing user interface
Managing the Hardware and other software of a computer
Hardware and other software of a computer are managed by using the following processes;
 Process Management - We can call a running computer program or part of the
program as a process. All the activities in a computer run as either a single process
or a multiple processes. Resource management activities such as allocation of CPU
time, allocation of memory, and allocation of input output devices of each process
are managed under the resource management of Operating System.
 Memory (RAM) Management - Systematic management of the memory is vital for
the proper functioning of a computer. Memory management process makes sure
that enough memory is allocated for each process and it also makes sure that the
memory is freed once a particular process ends.
 Input and Output Devices Management - The operating system is responsible for
the management of peripheral devices. Device controllers are used to control the
peripheral devices whereas device drivers are used to control software components.
 File Management - We can save data in files and we keep the files within the folders
in order to manage methodically. The Operating System to manage the files and
folders.

3
Computer Centre University of Jaffna
Providing user interface
We need an interface to interact with the computer. An Operating System provides a user
interface to input commands and instructions in a user friendly manner. Using this interface, we
can perform tasks without using complex instructions.

There are two types of user interfaces provided by the Operating Systems. They are:

 Command Line Interface (CLI) - This kind of interface was used by all the Operating System
systems of the early days. This interface had a ‘prompt’ where the commands are keyed
in using a keyboard. In using command line interface, the correct syntax has to be used.
 Graphical User Interface (GUI) - This GUI provides the ability to use the mouse or finger
tips to navigate the commands. These Operating System with GUI uses four components
in order to make a friendly environment. These components are abbreviated as WIMP.
WIMP stand for:
W - Windows
I – Icons
M – Menus
P - Pointer

3.2.1.2. Utility Software

Utility software or utility programs are some small programs which performs specific task, usually
related to managing a computer, its devices, or its programs. Most operating systems include
several utility programs. Also, you can buy them as stand-alone software that offer improvements
over the ones supplied with the OS. Following are some of the specific tasks done by commonly
used utility programs:

 Backup Software - To copy files and take back up of hard drives


 Disk scanner - To check the errors in hard drive
 Disk defragmentation - Organizing the hard disk by rearranging clusters of small spaces
together and creating a larger free space. This increases the efficiency of the hard disk.
 File/data compression - Compression of larger files into smaller files
 Task Manager - to display information regarding the processes and programs in a
computer and the general status of the computer
 System diagnosis tools - to monitor errors in hardware and software of a computer or
network of computers and diagnosis of system errors.
 Anti-Virus Software - Protecting the computer by identifying and eliminating malicious
software
 Clipboard - temporary storage of data/files for cut/copy and paste operations Data
synchronization software - to establish consistency among data from a source to a target
data storage and vice versa
 Disk partitioning software - can divide an individual drive into multiple logical drives
 Screensavers - for blanking the screen or filling it with moving images or patterns when
the computer is not in use.
 System profilers - to provide detailed information about the software installed and
hardware attached to the computer.

4
Computer Centre University of Jaffna
 Network utilities - to analyze the computer's network connectivity, configure network
settings, check data transfer or log events.

3.2.1.3. Library Programs

Library programs are collections of some pre-written codes or resources that are used to develop
other programs. For an example, you might have noticed that all Microsoft Programs look like the
same or have the same look and feel in the interfaces though the application differs. The reason
for this consistent look is the using of same graphical user interface libraries when developing
different applications by the Microsoft. Another classical example is, the computer game
developers often buy and use pre-done graphical user interface libraries and develop new games
as they need to save time and cost of entire development process. This will allow them to quickly
develop a good looking game that runs on the desired hardware. In Windows, you can often
identify library programs by their extension .dll (dynamic link library).

3.2.1.4. Programming Language Translators

First of all you need to understand that computers and humans speak different languages. While
humans speak languages like English, French, Hindi, Tamil, Sinhala, Japanese, Arabic etc.;
computers speak only one language i.e. binary, also called as Machine language. Alphabet of
computers contains only two letters, namely zero and one. Computers are machines and for them
it is much easier to work using a simpler encoding of 0s and 1s.
The problem is that we are not comfortable with binary and computers find our languages too
difficult to understand. To get around this problem a middle path of an intermediate language is
used to convey human commands to the computers. This intermediate language is called —the
programming language.
Programming language is not plain English. It is essentially a predefined syntax of writing logical
computer instructions which humans can also understand.
We also need something to convert programming language into binary language for the
consumption by computer. In this point we need translators. There are three approaches of
program translating:
 Assembler
 Interpreter
 Compiler

Assembler:

An assembler translates the symbolic codes (mnemonics) of programs of an assembly language


(low-level language) into machine language instructions.

Compiler:

Compiler is a software that checks a computer program (called source code) and lists all the errors
found. When humans remove all these errors, compiler converts the program into binary code
(also known as machine code or object code). Computers can understand binary code and
therefore they can execute (Run) instructions written by humans using programming language.
Examples of programming languages that use compilers: C, C++, Java, COBOL

5
Computer Centre University of Jaffna
Interpreter:

Task of interpreter is also more or less the same but interpreter works in a different fashion.
Interpreter program works line-by-line. It takes one statement at a time as input and interpret
that line. If error occurs in that line it stops and reports the error. Rest of the program will not be
checked until the existing error is removed. If there is no error then the interpreted line will
execute (Run). Interpreted languages are less efficient but easier to debug. This makes such
languages an ideal choice for new students. Examples of programming languages that use
interpreters: BASIC, Visual Basic, Python, Ruby, PHP, Perl, MATLAB, Lisp

3.2.2 Application Software

Re-call the classification of software given in Figure 1.


Accordingly, the second major class of Software is the
Application Software. Application software consists of programs
designed to perform specific tasks of users. Application
Software, also called a software application or an application,
can be used for the following purposes, among others:

 As a productivity/business tool
 To assist with graphics and multimedia projects
 To support household activities, for personal business, or for education
 To facilitate communications

A variety of application software is available that you can buy from software vendors in retail
stores or on the Web. A specific software product, such as Microsoft Word, often is called a
Software Package.

Based on the purposes as listed above, the application software is three-fold namely General
Purpose, Special purpose, and Bespoke. Let us look at each type of applications software briefly.

3.2.2.1. General Purpose Application Software

A general purpose application is also called “off-the-shelf” applications. These are the software
you use at home, university, or at work place to make you more effective and efficient while
performing daily activities. These include applications such as word processors, spreadsheets,
databases, desktop publishing packages, presentation packages, graphics packages, text editors,
etc. Following table gives example uses of different general purpose applications.

General Purpose Application Example Uses


Word Processor Writing reports, memos, letters to customers
E.g.: Microsoft Word 2013
Spreadsheet application Keeping simple company accounts, calculating
employee payments, simple stock control systems,
modeling
E.g.: Microsoft Excel 2013

6
Computer Centre University of Jaffna

Database application Keeping student data of a university, Keeping customer


records, sales records, appointments system
E.g.: Microsoft Access 2013
Desktop Publishing application Creating leaflets, posters, business cards, etc.
E.g.: PageMaker
Presentation software Creating presentations to be used for an audience of
customers/staff.
E.g.: Microsoft PowerPoint 2013
Graphics application Manipulating images that can be used at home,
university, or a business
E.g.: Adobe Photoshop, CorelDraw
Web Design application Creating personal or business web sites
E.g.: Dreamweaver

3.2.2.2. Special Purpose Application Software

Special Purpose Application Software is the software created for execution of a single specific task.
Some examples are Chess game, calculator, camera application in your mobile phone which allows
you only to capture and share pictures, web browsers, media players, calendar programs.

3.2.2.3. Bespoke Application Software

Some organizations may feel that the general purpose software are not suitable for their task and
it does not exactly what they want or it does not tallying with the current system in the
organization. In this type of situation, they decide on designing and developing software
specifically for them. These software are also called as the “tailor-made software” or “Bespoke
software” as they are made to a specific user and customized for a specific task only. Following
are the advantages and disadvantages of bespoke software:

Advantages:

 The organization will get the exact system that they need
 The software will work exactly how they want it to work
 The software will only have the features that they specifically need in their job or
business feeling them comfortable to use

Disadvantages:

 It takes more time to develop such systems. The development duration several months
or years
 Developmental cost is very high
 Sometimes it is required to employ a team of people at different stages of the
development process such as analysts, programmers, testers, etc.

7
Computer Centre University of Jaffna
Following are some examples for bespoke software:

 Content Management System (CMS)


 Customer Relationship Management (CRM)
 Business Process Automation System
 Automated Invoicing
 Ecommerce software solutions

3.3. Software Terminologies


Public Domain Software
Public domain software refers to any program that is not copyrighted. This software is free and can be
used without restrictions, that is, the user can copy, distribute, and even modify the software without
obtaining permissions from the software developer.

Freeware
The term freeware is commonly used for copyrighted software that is given free by its owner. Though
it is available free, the owner retains the copyright, which means that a user does not have the right
to modify anything in the software. Thus freeware software carries a license that permits redistribution
but not modification.

Shareware
Shareware is a software that is distributed free on a trial basis. It allows People to redistribute copies
for a limited period. Anyone who continues to use a copy of this required to pay a license fee. Therefore
the free use of the software is limited to a certain period. WinZip software is an example of shareware,
which is distributed with a 30-day trial period.

Commercial software
Commercial software represent the majority of software purchased from software publishers. This
software comes pre-packaged, is available in software stores, and can be obtained through the
internet. It is developed by business organizations, which aims to earn profit from its use. It is always
copyrighted. It is generally more expensive than competing shareware products. For example
Microsoft windows.

Open source software


Open source software is created by generous programmers and released into the public domain for
public use. The underlying programming code is available to the users so that they may read it, make
changes to it, and build new versions of the software incorporating their changes for software. Usually
these software are distributed under an open-source license-GPL. Such a license requires that the
source code should be distributed along with the software, and that the source code is freely
modifiable, with least restrictions, such as the requirement to preserves the author’s names and
copyright statement in the code. The Linux operating system is an example of open-source software.

Firmware
Firmware is a program or data that has been written onto read-only memory (ROM). For example, the
BIOS (Which is installed inside a computer on a chip) checks different parts of the system before
loading the operating system into memory.

You might also like