Unit 1 - Software and Its Types
Unit 1 - Software and Its Types
Software is a collection of instructions, data, or computer programs that are used to run machines and
carry out particular activities. It is the antithesis of hardware, which refers to a computer’s external
components. A device’s running programs, scripts, and applications are collectively referred to as
“software” in this context.
What is a Software?
In a computer system, the software is basically a set of instructions or commands that tell a computer
what to do. In other words, the software is a computer program that provides a set of instructions to
execute a user’s commands and tell the computer what to do. For example like MS-Word, MS-
Excel, PowerPoint, etc.
Types of Software
It is a collection of data that is given to the computer to complete a particular task. The chart below
describes the types of software:
Above is the diagram of types of software. Now we will briefly describe each type and its subtypes:
1. System Software
Operating System
Language Processor
Device Driver
2. Application Software
General Purpose Software
Customize Software
Utility Software
System Software
System software is software that directly operates the computer hardware and provides the basic
functionality to the users as well as to the other software to operate smoothly. Or in other words,
system software basically controls a computer’s internal functioning and also controls hardware devices
such as monitors, printers, and storage devices, etc. It is like an interface between hardware and user
applications, it helps them to communicate with each other because hardware understands machine
language(i.e. 1 or 0) whereas user applications are work in human-readable languages like English,
Hindi, German, etc. so system software converts the human-readable language into machine language
and vice versa.
Types of System Software
It has two subtypes which are:
1. Operating System: It is the main program of a computer system. When the computer system ON it
is the first software that loads into the computer’s memory. Basically, it manages all the resources
such as computer memory, CPU, printer, hard disk, etc., and provides an interface to the user,
which helps the user to interact with the computer system. It also provides various services to other
computer software. Examples of operating systems are Linux, Apple macOS, Microsoft Windows,
etc.
2. Language Processor: As we know that system software converts the human-readable language
into a machine language and vice versa. So, the conversion is done by the language processor. It
converts programs written in high-level programming languages like Java, C, C++, Python,
etc(known as source code), into sets of instructions that are easily readable by machines(known as
object code or machine code).
3. Device Driver: A device driver is a program or software that controls a device and helps that
device to perform its functions. Every device like a printer, mouse, modem, etc. needs a driver to
connect with the computer system eternally. So, when you connect a new device with your
computer system, first you need to install the driver of that device so that your operating system
knows how to control or manage that device.
Features of System Software
Let us discuss some of the features of System Software:
System Software is closer to the computer system.
System Software is written in a low-level language in general.
System software is difficult to design and understand.
System software is fast in speed(working speed).
System software is less interactive for the users in comparison to application software.
Application Software
Software that performs special functions or provides functions that are much more than the basic
operation of the computer is known as application software. Or in other words, application software is
designed to perform a specific task for end-users. It is a product or a program that is designed only to
fulfill end-users’ requirements. It includes word processors, spreadsheets, database management,
inventory, payroll programs, etc.
Types of Application Software
There are different types of application software and those are:
1. General Purpose Software: This type of application software is used for a variety of tasks and it is
not limited to performing a specific task only. For example, MS-Word, MS-Excel, PowerPoint, etc.
2. Customized Software: This type of application software is used or designed to perform specific
tasks or functions or designed for specific organizations. For example, railway reservation system,
airline reservation system, invoice management system, etc.
3. Utility Software: This type of application software is used to support the computer infrastructure. It
is designed to analyze, configure, optimize and maintains the system, and take care of its
requirements as well. For example, antivirus, disk fragmenter, memory tester, disk repair, disk
cleaners, registry cleaners, disk space analyzer, etc.
Features of Application Software
Let us discuss some of the features of Application Software:
An important feature of application software is it performs more specialized tasks like word
processing, spreadsheets, email, etc.
Mostly, the size of the software is big, so it requires more storage space.
Application software is more interactive for the users, so it is easy to use and design.
The application software is easy to design and understand.
Application software is written in a high-level language in general.
Difference Between System Software and Application Software
Now, let us discuss some difference between system software and application software:
2. Assembler
The Assembler is used to translate the program written in Assembly language into machine code. The
source program is an input of an assembler that contains assembly language instructions. The output
generated by the assembler is the object code or machine code understandable by the computer.
Assembler is basically the 1st interface that is able to communicate humans with the machine. We
need an assembler to fill the gap between human and machine so that they can communicate with
each other. code written in assembly language is some sort of mnemonics(instructions) like ADD, MUL,
MUX, SUB, DIV, MOV and so on. and the assembler is basically able to convert these mnemonics in
binary code. Here, these mnemonics also depend upon the architecture of the machine. For example,
the architecture of intel 8085 and intel 8086 are different.
3. Interpreter
The translation of a single statement of the source program into machine code is done by a language
processor and executes immediately before moving on to the next line is called an interpreter. If there
is an error in the statement, the interpreter terminates its translating process at that statement and
displays an error message. The interpreter moves on to the next line for execution only after the
removal of the error. An Interpreter directly executes instructions written in a programming or scripting
language without previously converting them to an object code or machine code. An interpreter
translates one line at a time and then executes it.
LAN or Local Area Network connects network devices in such a way that personal computers and
workstations can share data, tools, and programs. The group of computers and devices are connected
together by a switch, or stack of switches, using a private addressing scheme as defined by the TCP/IP
protocol. Private addresses are unique in relation to other computers on the local network. Routers are
found at the boundary of a LAN, connecting them to the larger WAN.
Data transmits at a very fast rate as the number of computers linked is limited. By definition, the
connections must be high-speed and relatively inexpensive hardware (Such as hubs, network adapters,
and Ethernet cables). LANs cover a smaller geographical area (Size is limited to a few kilometres) and
are privately owned. One can use it for an office building, home, hospital, school, etc. LAN is easy to
design and maintain. A Communication medium used for LAN has twisted-pair cables and coaxial cables.
It covers a short distance, and so the error and noise are minimized.
Early LANs had data rates in the 4 to 16 Mbps range. Today, speeds are normally 100 or 1000 Mbps.
Propagation delay is very short in a LAN. The smallest LAN may only use two computers, while larger
LANs can accommodate thousands of computers. LAN has a range up to 2km. A LAN typically relies
mostly on wired connections for increased speed and security, but wireless connections can also be part
of a LAN. The fault tolerance of a LAN is more and there is less congestion in this network. For example
A bunch of students playing Counter-Strike in the same room (without internet).
Advantages:
Provides fast data transfer rates and high-speed communication.
Easy to set up and manage.
Can be used to share peripheral devices such as printers and scanners.
Provides increased security and fault tolerance compared to WANs.
Disadvantages:
Limited geographical coverage.
Limited scalability and may require significant infrastructure upgrades to accommodate growth.
May experience congestion and network performance issues with increased usage.
Metropolitan Area Network (MAN) –
MAN or Metropolitan area Network covers a larger area than that covered by a LAN and a smaller area
as compared to WAN. MAN has a range of 5-50km. It connects two or more computers that are apart but
reside in the same or different cities. It covers a large geographical area and may serve as an ISP
(Internet Service Provider). MAN is designed for customers who need high-speed connectivity. Speeds of
MAN range in terms of Mbps. It’s hard to design and maintain a Metropolitan Area Network.
The fault tolerance of a MAN is less and also there is more congestion in the network. It is costly and may
or may not be owned by a single organization. The data transfer rate and the propagation delay of MAN
are moderate. Devices used for transmission of data through MAN are Modem and Wire/Cable. Examples
of a MAN are part of the telephone company network that can provide a high-speed DSL line to the
customer or the cable TV network in a city.
Advantages:
Provides high-speed connectivity over a larger geographical area than LAN.
Can be used as an ISP for multiple customers.
Offers higher data transfer rates than WAN in some cases.
Disadvantages:
Can be expensive to set up and maintain.
May experience congestion and network performance issues with increased usage.
May have limited fault tolerance and security compared to LANs.
WAN or Wide Area Network is a computer network that extends over a large geographical area, although
it might be confined within the bounds of a state or country. WAN has a range of above 50 km. A WAN
could be a connection of LAN connecting to other LANs via telephone lines and radio waves and may be
limited to an enterprise (a corporation or an organization) or accessible to the public. The technology is
high-speed and relatively expensive.
There are two types of WAN: Switched WAN and Point-to-Point WAN. WAN is difficult to design and
maintain. Similar to a MAN, the fault tolerance of a WAN is less and there is more congestion in the
network. A Communication medium used for WAN is PSTN or Satellite Link. Due to long-distance
transmission, the noise and error tend to be more in WAN.
WAN’s data rate is slow about a 10th LAN’s speed since it involves increased distance and increased
number of servers and terminals etc. The speed of WAN ranges from a few kilobits per second (Kbps) to
megabits per second (Mbps). Propagation delay is one of the biggest problems faced here. Devices used
for the transmission of data through WAN are Optic wires, Microwaves, and Satellites. An example of a
Switched WAN is the asynchronous transfer mode (ATM) network and Point-to-Point WAN is a dial-up
line that connects a home computer to the Internet.
Advantages:
Covers large geographical areas and can connect remote locations.
Provides connectivity to the internet.
Offers remote access to resources and applications.
Can be used to support multiple users and applications simultaneously.
Disadvantages:
Can be expensive to set up and maintain.
Offers slower data transfer rates than LAN or MAN.
May experience higher latency and longer propagation delays due to longer distances and multiple
network hops.
May have lower fault tolerance and security compared to LANs.
Conclusion –
There are many advantages of LAN over MAN and WAN, such as LAN provide excellent reliability, a
high data transmission rate, and can easily be managed and shares peripheral devices too. Local Area
Network cannot cover cities or towns and for that Metropolitan Area Network is needed, which can
connect a city or a group of cities together. Further, for connecting a Country or a group of Countries
one requires a Wide Area Network.