Professional Documents
Culture Documents
Department of IT
Created By: Ms. Kajol Rana
▰ Computer Software
▻ System software
▻ Operating System
▻ Language Processing
▻ Utilities
▻ Application software
▻ General-purpose
▻ Specific-purpose
Software
▰ In other words, software tells the computer what to do, some programs
exist primary for the computer’s use & help the computer perform &
manage its own task.
Types of Software
System Software
• System software is a set of one or more programs designed to control the operation and
extend the processing capability of a computer system.
• It acts as an intermediary between the computer hardware and application program, it also
provides interface between user and computer.
In general, a computer's system software performs one or more of the following
functions:
1. Operating Systems
▰ An operating system is a set of integrated programs that manages overall
▰ Performance and functioning of the computer system by controlling the resources such as CPU,
memory, I/O devices and overall flow of information within the system.
▰ It provides as an interface between machine and its users.
▰ Examples of operating system are Windows XP, Linux.Unix.
▰ Every computer has an operating system software that takes care of the effective and
efficient utilization of all the hardware and software components of the computer system.
Programming Language Translators/Language Processor
▰ 1)Compiler:
▰ Definition:. A compiler is a computer program (or set of programs) that
transforms source code written in a programming language (the source language)
into another computer language (the target language, often having a binary form
known as object code).
▰ The input to the compiler is the high-level language program (often referred to as a source program)
and its output is the machine language program (often referred to as an object program). The compiler
translates each high level language instruction into a set of machine language instructions rather than a
single machine language instruction.
▰ During the process of translation of a source program into its equivalent object program by the
compiler ,the source program is not being executed. It is only being converted into a form that can be
executed by the computer's processor.
▰ A compiler can translate only those source programs, which have been written in the language for
which the compiler is meant. For example, a C compiler is only capable of translating source programs,
which have been written in C. Therefore, each computer requires a separate compiler for each high-
level language that it supports.
How Does Complier Works?
Source program in
High Level language LOAD memory
program on disk
▰ Like compiler, interpreter also converts the source program written in high level
language program into machine language.
▰ Unlike compiler, interpreter scans each line of code of source program for
finding the error.
▰ If error found, it will display on screen.
▰ After rectifying the error, interpreter scans the next line of code in a program.
Difference between compiler and interpreter
▰ Compiler scan the whole program at once for finding the syntax error but interpreter
scan each line of program.
▰ Compiler is faster in execution while interpreter slow in execution.
▰ Compiler is slow in debugging while interpreter fast in debugging.
Assembler
▰ Assembler is a language translator that converts the assembly language program into
object code in machine language.
Assembly Object code
Language in Machine
Program Assembler Language
In assembly language we use mnemonic code like for addition we use ADD, for multiplication we use MULT and so on.
Assembler recognizes the character string that makes up the symbolic names of various machine operation and substitute
the required machine code for each instruction.
At the same time, it also calculate the required address in memory for each symbolic name or mnemonic code and
substitute those address for the names resulting in a machine language program that can run on its own at any time.
LINKER AND LOADER
▰ Linkers and loaders are utilities that function in the execution, or running, of programs.
▰ A linker, which can also be called a link editor or a binder, is a program that combines object modules
together to form a program that can then be executed.
▰ Modules are parts of programs. Until modules are combined, or linked, the program will not function. An
individual module can contain one or several routines, and so can be linked with other modules to support
programs of differing functionality.
▰ A linker performs an important function. Without it, programs would have to be written completely. The
presence of the linker allows a large program to be broken into small, more manageable pieces.
▰ In addition to the combining function, a linker can replace a so-called symbolic address with a real address.
Even a program consisting entirely of one module may need to be linked, if address replacement is done.
Depending on how they are packaged, hard disks are of three types:
▰ Allocation
▻ It allocates memory space for the program.
▰ Linking
▻ It combines two or more separate object program and supplies the
information needed to allow references between them.
▰ Relocation
▻ It prepares a program to execute properly from its storage area.
▰ Loading
▻ It places the data and machine instruction into memory.
Utilities
These are a set of programs that help users in system maintenance tasks and in performing tasks of routine
nature. Some of the tasks commonly performed by utility programs include the following:
1. Formatting hard disks or floppy disks.
2. Reorganizing files on a hard disk to conserve storage space.
3. Taking backup of files stored on hard disk on to a tape or floppy disk.
4. Searching a particular file from a directory of hundreds of files.
5. Checking the amount of available memory.
6. Checking the amount of available storage space on hard disk.
7. Reducing the file size for more efficient transmission over a data communication
link.
Application Software
1.Word-Processing Software
▰ Word-Processing is a term that describes the use of computers to create, edit, view, format, store, retrieve and print documents
(written material such as letters, reports, books, etc.). A word-processing software is an application software that enables the user to
do all these on a computer system.
2.Graphics Software
▰ A graphics software enables us to use a computer system for creating, editing, viewing, storing, retrieving and printing designs,
drawings, pictures, graphs and anything else that can be drawn in the traditional manner.
3. Entertainment Software
▰ Entertainment software allows computer systems to be used as an entertainment tool. A few examples of such applications are:
1. Video Games. Today thousands of video game applications are available on computer systems. Special audio and visual
effects are used in these applications to make the games thrilling and exciting for the users.
2. Interactive Television. These applications allow users to either use their computer systems as an interactive television or to
convert their conventional televisions into an interactive television.
Types of Application Software
a. Machine Language
b. Compiler
c. Interpreter
d. Assembler
Language Processor are also called as
a. Translators
b. Compilers
c. Interpreter
d. Assembler
Thank You !!