Software – Types: System software, Application
software and Utility Software
Software terminologies: Firmware, Liveware, Freeware,
Shareware, Commercial software, Proprietary software,
Semi-free software.
Lecture 2
Software
• Software is a set of programs
• It help us to use computer system and other electronic devices
efficiently and effectively.
System software
• It is a set of one or more programs designed to control the operations
of a computer.
• System software supports the running of other software, its
communication with other peripheral devices.
• Helps to manage resources of the computer.
• System software interfaces with user and hardware.
Operating system
• Operating system is a set of programs that acts as an
interface between the user and computer hardware.
• It provides an environment for user to execute programs. It
also helps to use the computer hardware in an efficient
manner.
• It acts as the resource manager of the computer system
• It is the first program to be loaded from hard disk in the
computer and it resides in the memory till the system is
shut down.
• It tries to prevent errors and the improper use of
computer.
Major functions of an operating system
Process management
• process we mean a program in execution.
• The process management module of an operating system takes
care of the allocation and de allocation of processes
• scheduling of various system resources to the different requesting
processes.
Ex. Printer – printing
Paintbrush - drawing
Memory management
• Handles or manages primary memory.
• It keeps track of each and every memory location to ensure whether it is
allocated to some process or free.
• It calculates how much memory is to be allocated to each process and
allocates it.
• It de-allocates memory if it is not needed further.
File management
• It takes care of file related activities such as organising, naming,
storing, retrieving, sharing, protection and recovery.
Device management
• Device management module of an operating system performs the
management of devices attached to the computer.
• It handles the devices by combining both hardware and software
techniques.
• The OS communicates with the hardware device via the device driver
software.
• Examples of various operating systems are DOS, Windows, Unix,
Linux, Mac OS X,etc.
Language processors
• To communicate with the computer, the user also
needs to have a language that should be understood
by the computer.
• Low level languages
• Machine language
• Assembly language
• High level languages.
Machine language
• Computer can understand only special signals, which are
represented by 1s and 0s.
• Two digits are called binary digits.
• The language, which uses binary digits, is called machine
language.
• Writing a program in machine language is definitely very difficult.
• It is not possible to memorise a long string of 0s and 1s for every
instruction.
Assembly language
• Assembly language is an intermediate-level programming language.
• Assembly languages use mnemonics.
• Mnemonic is a symbolic name given to an operation
High Level Languages (HLL)
• These are like English languages and are simpler to understand than
the assembly language or machine language.
• High level language is not understandable to the computer.
• A computer program written in a high level language is to be
converted into its equivalent machine language program.
• So these languages require a language translator (compilers or
interpreters) for conversion.
• Examples of high level programming languages are BASIC, C, C++,
Java, etc.
High Level Languages (HLL)
Language processors
• To convert such programs
into low level language, as
computer can only understand machine
language.
• Language processors are the system programs
that translate programs written in high level
language or assembly language into its
equivalent machine language.
Types of language processors
• Assembler
• Translating the program code written in assembly language to machine language.
• Assembler is highly machine dependent.
• Compiler
• Translates a program written in high level language into machine
language.
• It scans the entire program in a single run.
• If there is any error in the program, the compiler provides a list of error
messages along with the line number at the end of the compilation.
• If there are no syntax errors, the compiler will generate an object file.
• Translation using compiler is called compilation.
Types of language processors
• Interpreter
• HLL program into machine language line by line.
• If there is an error in one line, it reports and the execution of the program is
terminated.
• It will continue the translation only after correcting the error.
• BASIC is an interpreted language.
Compiler Interpreter Assembler
Application software
• Software developed for specific application
• It includes general purpose software packages and specific purpose
software.
• Example
• Payroll System, Airline Reservation System, Tally
General purpose software packages
• General purpose software are used to perform operations in a
particular application area.
• word processors, Spreadsheet software, presentation software,
database software and multimedia software.
General purpose software packages
• Word processing software:
• Word Processing software is designed for creating and modifying
documents.
• It helps to Spreadsheet software:
• Spreadsheet software:
• Spreadsheet software allows users to perform calculations using
spreadsheets. Create, edit, format and print textual matters easily.
• Presentation software:
• The software that is used to display information in the form of a
slide show is known as presentation software.
General purpose software packages
• Database Software:
• Database is an organised collection of data arranged in tabular form.
• Database Management System (DBMS) consists of a collection of
interrelated data and a set of programs to access those data.
• The primary goal of a DBMS is to provide an environment that is both
convenient and efficient to use in retrieving and storing database information.
General purpose software packages : Multimedia software:
• Multimedia is the integration of multiple forms of media.
• Multimedia software can process information in a number of media formats.
• It is capable of playing media files.
• Some multimedia software allows users to create and edit audio and video
files.
• Audio converters, audio players, and video editing software are some forms of
multimedia software.
• Examples are VLC Player, Adobe Flash, Real Player, Media Player, etc.
Free Multimedia Software
• VLC media player
• Windows movie maker:
• Media Monkey:
• MX Player
Specific purpose software
• Specific purpose software is a highly specialized
software designed to handle particular tasks.
• These are tailor-made software to satisfy the needs of
an organization or institution.
• It is also known as customized software.
• Customized software is developed for a single
customer, it can accommodate that customer's
particular preferences and expectations.
Specific purpose software Example
Utility software
• Utility software is a set of programs which help users in system maintenance
tasks and in performing tasks of routine nature.
• Compression tools:
• Large files can be compressed so that they take less storage area.
• These compressed files can be decompressed into its original form when needed.
• Compression of files is known as zipping and decompression is called unzipping.
• WinZip, WinRAR
• Disk defragmenter:
• Disk defragmenter is a program that rearranges files on a computer hard disk. R, etc. are
examples of compression tools.
• This enables the computer to work faster and more efficiently.
Utility software : Disk defragmenter
Backup software:
• Backup means duplicating the disk information so that in an event of
disk failure or in an event of accidental deletion, this backup may be
used.
• Backup utility programs facilitates the backing up of disk.
Antivirus software:
• A computer virus is a program that causes abnormality in the
functioning of a computer.
• Antivirus software is a utility program that scans the computer system
for viruses and removes them
Software terminologies:
a) Firmware
b) Liveware
c) Freeware and Shareware
d) Commercial software
e) Proprietary software
f) Semi-free software
Firmware
• It is a specific class of computer software that provides the low-level
control for a device's specific hardware.
• Firmware is held in non-volatile memory devices such
as ROM, EPROM, or flash memory.
• It was designed to be permanent.
• Eventually PROM chips could be updated and were called erasable
programmable read-only memory (EPROM).
• EPROM was expensive, time consuming to update and challenging to
use.
• Firmware eventually evolved from ROM to flash memory firmware;
thus, it became easier to update and user friendly.
The firmware monitors the buttons, controls the LEDs, and processes the button presses to send the data in a format the
receiving device, in this case, a television set, can understand and process. In fact, the television's motherboard has
complex firmware too.
Firmware
• Low Level Firmware:
• This is found in ROM, PROM.
• Low level firmware is often read-only memory and cannot be changed or
updated.
• High Level Firmware:
• This is used in flash memory for updates that is often considered as software.
Humanware or Liveware
• Humanware or liveware refers to humans who use computer.
Freeware and shareware
• Freeware refers to copyrighted computer software which is made
available for use free of charge for an unlimited period.
• The term shareware refers to commercial software that is
distributed on a trial basis.
• It is distributed without payment and with limited functionality.
• Shareware is commonly offered in a downloadable format on
the Internet.
• The distribution of this kind of software aims at giving the users
a chance to analyse the software before purchasing it.
Freeware and shareware
Commercial Software
• Commercial software is any software or program that is designed
and developed for licensing or sale to end users or that serves a
commercial purpose.
• Commercial software was once considered to be proprietary
software, but now a number of free and open-source software
applications are licensed or sold to end users.
• Example
• Microsoft products such as the Windows Operating System and MS
Office
• open-source software does not necessarily mean free software.
Proprietary software
• Proprietary software is a computer program that is an exclusive
property of its developer or publisher and cannot be copied or
distributed without licensing agreements.
• It is sold without any access to source code and is
therefore not possible to change or improve by the
user.
• Some examples of proprietary software are Microsoft Windows
Operating System, MS Office, Mac OS, etc.
Free and open source software
• It gives the user the freedom to use, copy, distribute, examine, change
and improve the software.
• Nowadays free and open source software is widely used throughout the
world because of adaptable functionality, less overall costs, vendor
independency, adherence to open standards, interoperability and
security.
• The Free Software Foundation (FSF) defines the four freedoms for free
and open source software:
• Freedom 0 - The freedom to run program for any purpose.
• Freedom 1 - The freedom to study how the program works and adapt it to your
needs. Access to source code should be provided.
• Freedom 2 - The freedom to distribute copies of the software.
• Freedom 3 - The freedom to improve the program and release your
improvements to the public, so that the whole community
benefits.
Questions
• Define Software
• Explain types of Software.
• Explain the following terms
• Firmware
• Liveware
• Freeware
• Shareware
• Commercial software
• Proprietary software
• Semi-free software