INTRODUCTION TO COMPUTER
Chapter 5
Computer Software
Ansar Javed
Govt. Graduate College Shorkot City, Jhang.
1
Computer Software
Chapter 5 – Computer Software
2
Computer Software
• A set of instructions given to the computer to solve a particular problem (or to
perform a specific task) is called software
• Software is also called a computer program
• A computer cannot do anything without software
• Software tells the computer what to do and how to do
• Hardware operates under the control of a given set of instructions
• Therefore, a computer performs different operations according to the given
instructions
• Software is developed in a particular computer programming language
• Types of Software
3
Application Software
• A program or set of programs that are specially designed to perform a specific
task or to solve a specific problem is called application software
• Today, various application software are available for different purposes
• Some application software are developed for a particular organization or
customer such as software developed to maintain the records of students of a
particular college
• Similarly, some application software are developed by software development
organizations (or any programmer) to solve some common problem of many
people or users such as word processing software
• Kinds of application software are given in next slides
4
Application Software
Productivity Software
• Software which is used for creating documents, worksheets, presentations,
and graphs, etc. is called productivity software
• It is used to solve some common problems of many people or users
• Examples of productivity software
• Word Processing Software
• This software is used for creating and editing documents such as letters, memos, reports, essays,
etc.
• Example 🡪 Microsoft Word
• Spreadsheet Software
• Spreadsheet software is used to organize data into an electronic sheet in the form of rows and
columns and to perform calculations on the data
• Columns and rows collectively are called a worksheet
• Spreadsheet software also provides the facility to create various types of charts for displaying data
graphically
5
• Example 🡪 MS Excel
Application Software
Productivity Software
• Database Management Software
• A database is a collection of related data or records on any subject such as records of the books in a
library, and information about the students of the college
• Data in a database can be accessed very easily
• Database management software is used to create, access, and manage databases
• Examples 🡪 Microsoft Access, Oracle, and MySQL
• Presentation Software
• Presentation software is used to create slides for making presentations to communicate ideas,
messages, and other information to a group
• Example 🡪 Microsoft PowerPoint
• Software Suite
• A software suite is a collection of individual-related applications available as a single package
• It is also called an application suite or productivity suite
• Example 🡪 Microsoft Office 6
Application Software
Graphics and Media Software
• Graphics software is used to create, manipulate, and print graphics
• Graphics can be any drawing, sketch, picture, or photograph
• Mostly engineers, architects, desktop publishers, and graphics artists use graphics and media
software
• Computer-Aided Design (CAD)
• CAD software is a type of 3-D graphics application
• It is mostly used by engineers, architects, and scientists for creating engineering, architectural, scientific designs and
models
• Engineers use CAD software to create designs of vehicles, electronic devices, roadways, bridges, and designs of
security systems, etc.
• Similarly, architects use CAD software to design the structures of buildings
• Scientists use them to create designs of molecular structures
• Examples 🡪 AutoCAD and Chief Architect
• Desktop Publishing Software
• Desktop Publishing (DTP) software is used to design high-quality commercial documents that contain text and graphics
and different combinations of colors
• DTP software is ideal for designing or producing high-quality textbooks, brochures, newsletters, marketing literature,
advertisements, postcards, greeting cards, letterheads, business cards, banners, calendars, logos, product catalogs,
and annual reports
• Examples 🡪 Adobe InDesign, Adobe PageMaker, Microsoft Publisher, and QuarkXPress 7
Application Software
Graphics and Media Software
• Paint Software
• Paint software is used to create and modify graphics
• Paint software is also called Illustration software
• This software allows users to draw pictures, shapes, and many other graphical images
• Example 🡪 MS Paint
• Image Editing Software
• Image editing software also provides the same capabilities as Paint software but it has additional
capabilities that are used for editing or modifying the existing images
• Examples 🡪 Coral Draw and Macromedia Free-hand
• Photo Editing Software
• Photo editing software is a type of image editing software
• It is used to edit and customize digital photos
• This software provides features to improve the quality of photos by modifying contrast & brightness
and adding special effects such as shadows and glows
• Examples 🡪 Adobe Illustrator, Adobe Photoshop and Microsoft Office Picture Manager 8
Application Software
Graphics and Media Software
• Video & Audio Editing Software
• Video consists of full-motion images played at various speeds
• Video Editing software is used to modify a section or part of a video, called a clip
• For example, it can be used to change (reduce) the length of a video clip, reorder a series of clips, or
add special effects to clips such as words that move horizontally across the screen
• Example 🡪 Adobe Premiere
• Web Page Authoring Software
• Web page authoring software is used to create web pages that include graphical images, videos,
audios, animations, and other special effects
• This software also allows users to organize, manage, and maintain their websites
• Examples 🡪 WordPress, Dreamweaver, and Microsoft FrontPage
9
Application Software
Software for Communication
• Software for communication is used by the people for exchanging information
electronically among each other
• Computer files can also be transferred from one computer to another through
communication software
• Many communication applications/software are available
• Email Software
• Email stands for electronic mail
• Email software is used to exchange messages and files through a computer network (such as the
Internet)
• Example 🡪 Microsoft Outlook
• Browsing Software
• Browsing software is used to access and view web pages on the Internet
• Browsing software is called the web browser or simply browser
• Example 🡪 Google Chrome, Firefox, Safari, and Internet Explorer
10
Application Software
Software for Communication
• Chat Software
• A chat is a real-time online typed conversation with one or more online users
• Chat client software is used to chat with others who are online at the same time
• Chat client programs are built-in in some operating systems, websites, and most browsers
• These programs are also available for free on the web
• Example 🡪 ICQ
• Video Conferencing Software
• Video conferencing software is used for conducting live conferences between two or more
participants at different sites through a computer network
• Examples 🡪 Zoom, CU-SeeMe, GoToMeeting, iMeet, and WebRTC
11
Application Software
Entertainment Software
• Software which is used for the entertainment of people (users) is called
entertainment software
• Computer games are the most popular types of entertainment software
• Similarly, some entertainment software are available to watch the movie and
listen to music, etc.
• Examples 🡪 Windows Media Player and Real Player
12
System Software
• Software which controls and coordinates different operations of a computer
system or mobile device is called system software
• It controls the working of different parts of the computer (computer
hardware)
• It also helps to run application programs on the computer
• System software is an essential part of the computer system
• Examples
• Operating system
• Device driver
• Utility software
• Language processors
13
Operating System
• An operating system is a set of system programs that controls and coordinates the
overall operations of a computer system or mobile device
• A computer needs an operating system to do work
• We cannot operate a computer (or mobile device) without an OS
• Without an OS, a computer or mobile device is like a car with no fuel
• OS acts as an interface between the user and the computer system or mobile device
• Users interact with computer (or mobile device) through OS
• Examples of OS 🡪 Microsoft Windows, Linux, UNIX, Mac OS, Chrome OS, and
Android
• Most OS perform similar functions i.e.
• Providing a user interface
• Managing application programs
• Managing memory
• Coordinating tasks
• Managing files on the storage devices
• Managing and controlling I/O devices, etc. 14
Operating System
• Operating systems are developed to run on specific types of computers or
mobile devices
• For example, desktop computers or laptops use Windows or Mac OS
• While smartphones use Android, iOS, or Windows Phone
• Same types of computers, such as desktop computers, may use different
operating systems (such as Windows and Linux)
15
Operating System Functions
• When the computer is turned on, OS is loaded into the main memory from the disk
• Most of the operating systems perform similar functions
Booting
• Operating system starts the computer or mobile device and makes it ready to work
• Process of starting or restarting a computer or mobile device is called booting
Providing a User-Interface
• User interface means how user interacts with computer to perform various tasks
• User runs application programs, opens the document, enters the data, prints the output
reports, etc.
• Types of user interfaces
• Command-line User Interface
• In command-line user interface, OS provides a prompt line on computer screen
• The command is typed manually from the keyboard to perform a specific task, Example 🡪 operating system DOS
• Graphical User Interface (GUI)
• In a graphical user interface, OS provides graphical images on computer screen
• These images are known as icons or command buttons
• User clicks the icon to open the document or to execute the command
16
Operating System Functions
Memory Management
• Memory management is an important function of an operating system
• Data and programs are loaded from the storage device i.e. hard disk into
RAM
• Different programs and data can be loaded into the main memory at the
same time
17
Operating System Functions
Memory Management
• Data and programs are loaded from the storage device i.e. hard disk into RAM
• Different programs and data can be loaded into the main memory at the same time
Resource Management
• A computer consists of different types of hardware resources
• Examples of these resources are input/output devices, memory, processor, and disks, etc.
• Different programs or applications try to use memory, storage device, and processor at the same
time
• Operating system is responsible for allocating and managing various resources for different
applications
• It shares the time of processor between various applications or input/output devices
File Management
• Operating system manages the storage devices of a computer
• Data and programs are stored permanently on storage devices such as hard disk or USB flash
drive for later use
• Files of data and programs are placed or stored in folders
• A folder may contain many files or sub-folders
• Operating system keeps track of all the folders and files and sub-folders 18
Operating System Functions
Job Scheduling
• A job or task is an activity or operation that a processor performs
• It may be receiving data from an input device, sending output to an output device or loading data
from disk into RAM, etc.
• There may be many jobs to execute at the same time
• OS determines the order in which the jobs are to be processed
• An operating system may use different scheduling mechanisms to execute these jobs
Configuring Devices
• OS controls all devices connected with the computer
• The functions of devices are controlled by the special system software called device drivers
• Device driver tells the operating system how to communicate with a specific device
• Each device has its own device driver
• Today, most devices and operating systems support plug and play
• It means that OS automatically configures new devices as they are connected with the computer
• Usually, modern OS has built-in device drivers for commonly used input/output devices
• When a new hardware device is attached to the computer, OS automatically detects the device
and installs its driver (if available in OS)
19
Operating System Functions
Monitoring Performance
• OS also monitors the performance of the computer system
• It checks and reports information about various computer resources and devices
• For example, users can monitor the performance of the processor, memory usage, drives, and
network, etc.
• Information in the performance reports helps the users or administrators to identify the
problems with resources or devices so that they can try to resolve them
Providing Services to Programs
• OS also provides the interface between the programs and the user
• Through the program, the user accesses other computer resources such as a printer, backing
storages, or other application programs
• Actually, in the program, the built-in instructions are known as “system calls” are used that
request services from the operating system
• For example, in word processing program when the Save command is applied to save a document, the “Save
As” dialog box appears. In this way, the program requests services from OS
• Application program sends the request to OS and OS gives a response to the application program
20
Operating System Functions
Providing Services to Programs
• Main services that an operating system provides to programs are as follows:
• Saving data from memory in files on the disk
• Loading files from disk into memory
• Sending the document on the printer
• Copying or moving data from one document to another or from one program to
another
Controlling Network
• Some operating systems are specially developed for networking
• These operating systems are called network operating systems or NOSs
• A network operating system organizes and coordinates multiple users and
makes it possible to access and share resources on the network
• These resources include files, programs, and hardware devices such as
printers and drives, etc.
21
Categories of Operating System
Server Operating Systems
• UNIX
• UNIX is also used as a server operating system
• It can handle a high volume of transactions in a multiuser environment
• It can work with multiple processors
• It is widely used on web servers because it has powerful security features
• Linux
• Linux is also used on network servers because it provides a secure, stable multiuser
environment
• Linux is mostly used on web servers and on supercomputers
• Solaris
• Solaris is a version of UNIX
• It was developed by Sun Microsystems
• It is a server operating system designed specifically for e-commerce applications
• It has very advanced security features
• It is used for online transaction systems
22
Resource Management
challenges
Deadlocks
23
Resources
• Examples of computer resources
• printers
• tape drives
• tables
• Processes need access to resources in reasonable order
• Suppose a process holds resource A and requests resource B
• at same time another process holds B and requests A
• both are blocked and remain so
24
Resources (1)
• Deadlocks occur when …
• processes are granted exclusive access to devices
• we refer to these devices generally as resources
• Preemptable resources
• can be taken away from a process with no ill effects
• Nonpreemptable resources
• will cause the process to fail if taken away
25
Resources (2)
• Sequence of events required to use a resource
1. request the resource
2. use the resource
3. release the resource
• Must wait if request is denied
• requesting process may be blocked
• may fail with error code
26
Introduction to Deadlocks
• Formal definition :
A set of processes is deadlocked if each process in the set is waiting for an event
that only another process in the set can cause
• Usually the event is release of a currently held resource
• None of the processes can …
• run
• release resources
• be awakened
27
Four Conditions for Deadlock
1. Mutual exclusion condition
• each resource assigned to 1 process or is available
2. Hold and wait condition
• process holding resources can request additional
3. No preemption condition
• previously granted resources cannot forcibly taken away
4. Circular wait condition
• must be a circular chain of 2 or more processes
• each is waiting for resource held by next member of the chain
28
Deadlock Modeling (2)
• Modeled with directed graphs
• resource R assigned to process A
• process B is requesting/waiting for resource S
• process C and D are in deadlock over resources T and U
29
Recovery from Deadlock (1)
• Recovery through preemption
• take a resource from some other process
• depends on nature of the resource
• Recovery through rollback
• checkpoint a process periodically
• use this saved state
• restart the process if it is found deadlocked
30
Recovery from Deadlock (2)
• Recovery through killing processes
• crudest but simplest way to break a deadlock
• kill one of the processes in the deadlock cycle
• the other processes get its resources
• choose process that can be rerun from the beginning
31
Deadlock Prevention
Attacking the Mutual Exclusion Condition
• Some devices (such as printer) can be spooled
• only the printer daemon uses printer resource
• thus deadlock for printer eliminated
• Not all devices can be spooled
• Principle:
• avoid assigning resource when not absolutely necessary
• as few processes as possible actually claim the resource
32
Attacking the Hold and Wait Condition
• Require processes to request resources before starting
• a process never has to wait for what it needs
• Problems
• may not know required resources at start of run
• also ties up resources other processes could be using
• Variation:
• process must give up all resources
• then request all immediately needed
33
Attacking the No Preemption Condition
• This is not a viable option
• Consider a process given the printer
• halfway through its job
• now forcibly take away printer
• !!??
34
Attacking the Circular Wait Condition (1)
• Normally ordered resources
• A resource graph
(a) (b)
35
Attacking the Circular Wait Condition (1)
Summary of approaches to deadlock prevention
36
Starvation
• Algorithm to allocate a resource
• may be to give to shortest job first
• Works great for multiple short jobs in a system
• May cause long job to be postponed indefinitely
• even though not blocked
• Solution:
• First-come, first-serve policy
37
Categories of Operating System
Server Operating Systems
• UNIX
• UNIX is also used as a server operating system
• It can handle a high volume of transactions in a multiuser environment
• It can work with multiple processors
• It is widely used on web servers because it has powerful security features
• Linux
• Linux is also used on network servers because it provides a secure, stable multiuser
environment
• Linux is mostly used on web servers and on supercomputers
• Solaris
• Solaris is a version of UNIX
• It was developed by Sun Microsystems
• It is a server operating system designed specifically for e-commerce applications
• It has very advanced security features
• It is used for online transaction systems
38
Utility Programs
Chapter 5 – Computer Software
39
Utility Programs
• A software that helps user to solve the specific problems related to hardware
or software or computer files is called a utility program
• A large number of utility programs are available for the service of hardware
and software
• Most operating systems include various utility programs
• Many other utility programs are available on CDs or can be downloaded from
the Internet
• Examples are
• File Manager
• Disk Cleanup
• Uninstaller
• File Compression
• Backup and Restore
• Antivirus
• Device Drivers
40
Device Drivers
• Programs that control the operations of hardware devices are called device
drivers
• Each device requires a device driver
• When we attach any type of device to a computer such as a printer, scanner,
network card, or digital camera, etc., it will not work without a device driver
• We have to first install the driver of a device on our computer before using it
• Device drivers are provided by device manufacturers
• Some devices like mouse, keyboard, monitor, USB flash drive, etc. are “Plug
and Play” devices
• These drivers are built-in with Windows
• When a “Plug and Play” device is attached to the computer, its driver is
automatically installed
41
Some Important long Questions
1. What is software and why we need it? Describe its categories.
2. Describe categories of application software.
3. What is system software? Why we need it? List its types.
4. What functions are performed by Operating System?
5. Explain Utility Programs.
6. Write a note on Device Drivers.
*note: Please don’t limit yourselves to these long questions only,
examiner can ask you about same material in different context.
You can extract several short questions as subset of these questions.
42
For more details, refers to
PM Series
Introduction to Computer
by
CM Aslam, Aqsa Aslam, Mussadiq Fida, & Mudassir
Ahmad
Publisher: Majeed Sons
22- Urdu Bazar, Lahore
43