1. Foundation of Information
Systems
ITM 1153
Lesson 03
Components of Computer Systems
(Computer Software)
Amith Bandara
Department of Information Systems
Learning Outcomes
At the end of the lesson, you will be able to
§ Identify two different types of software
§ System Software (Operating Systems, Utility program, Library program,
Translator)
§ Application Software: word processing, spreadsheet, database software,
presentation software, communication software, groupware, integrated
software and suites, specialized software.
§ Understand the need & importance of software
2
3
Software
§ The computer component that contains the instructions that directs
computer hardware to carry out tasks or a set of instructions and its
documentations that tells a computer what to do or how to perform
a task
4
2. System Software vs. Application Software
§ System software consists of the operating system and utility
programs that control your computer and allow you to use
it.
§ Application software includes all the programs that allow
you to perform specific tasks on your computer, such as
writing a letter, preparing an invoice, viewing a Web page,
listening to a music file, checking the inventory of a
particular product, playing a game, preparing financial
statements, designing a home, and so forth.
5 6
Operating System (OS)
§ A computer’s operating system is a collection of programs
that manage and coordinate the activities taking place within
the computer and it is the most critical piece of software
installed on the computer.
§ The operating system boots the computer, launches
application software, and ensures that all actions requested
by a user are valid and processed in an orderly fashion.
§ In general, the operating system serves as an intermediary
between the user and the computer, as well as between
application programs and the computer system’s hardware
7
Operating System
8
3. Functions of Operation System
§ Interfacing with users (typically via a GUI)
§ Booting the computer
§ Configuring devices
§ Managing Network Connections
§ Managing and Monitoring Resources and Jobs
§ File management
§ Security
9
Processing Techniques for Increasing Efficiency
§ Multitasking: The ability of an operating system to work with
more than one program (task) at one time
• CPU rotates between tasks
• Switching is done quickly
• Appears as though all programs executing at the same time
§ Multithreading: A thread is a sequence of instructions within
a program that is independent of other threads.
• Examples might include spell checking, printing, and opening
documents in a word processing program.
• Operating systems that support multithreading have the ability
to rotate between multiple threads (similar to the way
multitasking can rotate between multiple programs).
10
Processing Techniques for Increasing Efficiency
§ Multiprocessing: Means the use of two or more
Central Processing Units (CPU) at the same time
• Used with personal computers, servers, and mainframe
computers that have multi-core CPUs and/or multiple CPUs.
§ Parallel processing: An approach where a single program is
divided during execution in such a way that all the smaller parts
can be processed
• Used most often with supercomputers
11
Processing Techniques for Increasing
Efficiency
12
4. Memory Management
§ Memory management
• Good memory management, which involves optimizing the use
of main memory (RAM), can help speed up processing.
• The operating system allocates RAM to programs as needed and
then reclaims that memory when the program is closed.
• One memory-management technique frequently used by
operating systems is virtual memory, which uses a portion of the
computer’s hard drive as additional RAM.
13
Memory Management
§ Buffer and spooling
• Some input and output devices are exceedingly slow, compared to
today’s CPUs.
• A buffer is an area in RAM or on the hard drive designated to hold
input and output on their way in or out of the system.
• For instance, a keyboard buffer stores characters as they are entered
via the keyboard, and a print buffer stores documents that are waiting
to be printed.
• Spooling: The process of placing items in a buffer so they can be
retrieved by the appropriate device when needed.
14
Differences among Operating Systems
§ Command line interface (CLI) Vs
Graphical User Interface (GUI)
‒The Command line interface requires users to
input commands using the keyboard;
‒Graphical user interfaces allow the user to issue
commands by selecting icons, buttons, menu
items, and other graphical objects-typically with
a mouse, stylus, or finger.
15
Command line Interface
•Difficult to use for new users
•Not user friendly
•Should have expert knowledge
•For example, MS dos.
16
5. Basic components – GUI
•Windows – you can divide the screen into different
areas
•Icons – small pictures that represent commands,
files or windows
•Menus – let you execute commands by selecting a
choice
•Pointer – a symbol that appears on the display
screen
17
Differences among Operating Systems
Types of Operating Systems
§ Personal operating systems
‒Operating systems used with personal computers are typically referred to as
personal operating systems (also called desktop operating systems) and they
are designed to be installed on a single computer.
§ Server operating systems
‒Also called network operating systems are designed to be installed on a
network server to grant multiple users access to a network and its resources.
§ Mobile operating systems
‒That are designed to be used with mobile phones and other mobile devices
§ Embedded operating systems
‒That are built into consumer kiosks, cash registers, cars, consumer electronics,
and other devices
18
Windows
§ Microsoft Windows has been the predominant personal
operating system for many years and still holds about 87 % of the
market. ‘
§ There have been many different versions of Windows over the
years
‒Windows 3
‒Widows 95
‒Windows XP
‒Windows Vista
‒Windows 7
‒Windows 8
‒Windows 8.1
‒Windows 10
‒Windows 13
19
Mac OS
§ Mac OS is the proprietary operating system for
Mac computers made by Apple Corporation.
§ It is based on the UNIX operating system and
originally set the standard for Graphical User
Interfaces.
20
6. UNIX
§ UNIX was originally developed in the late 1960s at
AT&T Bell Laboratories as an operating system for
midrange servers.
§ UNIX is a multiuser, multitasking operating
system.
§ Computer systems ranging from microcomputers
to mainframes can run UNIX
21
Linux
§ The operating system resembles UNIX but was developed
independently from it.
§ Linux was released to the public as an open source software;
that is, a program whose source code is available to the
public and can be modified to improve it or to customize it
to a particular application.
§ Linux originally used a command line interface, but most
recent versions of Linux programs use a graphical user
interface
22
Operating Systems for Handheld PCs and
Mobile Devices
§ PDA
‒ Palm top - Palm OS example: Palm TX, Palm Pilot
‒ Pocket PCs - based on Microsoft Windows Mobile OS
which uses Windows CE core
§ Laptop - Windows XP, Vista or 7, Mac OS, Ubuntu, etc.
§ Netbooks - Ubuntu, Android, Windows XP and Windows 7
§ Other Mobile OS
§ Symbian OS
§ Android
§ iOS
23
Operating Systems for Larger Computers
§ Larger computers (such as high-end servers, mainframes, and
supercomputers) sometimes use operating systems designed
solely for that type of system.
§ For instance, IBM’s z/OS is designed for IBM mainframes.
§ In addition, many servers and mainframes today run
conventional operating systems, such as Windows, UNIX, and
Linux.
24
7. Utility Software
§ Utility program: Type of software that performs a specific
task, usually related to managing or maintaining a computer
system
§ Many utilities are built into operating systems (finding files,
diagnosing and repairing system problems, cleaning up a
hard drive, viewing images, playing multimedia files, backing
up files etc.)
§ Utilities are also available as stand-alone products such as
security suites
Ex; Back up Software, Device Drivers, Anti-virus, File Compression,
Word-pad, Calculator, MS-Paint
25
Cont.
26
Library program
§ Library programs are collections of compiled routines which are
shared by multiple programs, such as the printing function. Library
programs contain code and data that provide services to other
programs such as interface (look and feel), printing, network
code and even the graphic engines of computer games.
§ If you have ever wondered why all Microsoft Office programs have
the same look and feel, that is because they are using the same
graphical user interface libraries. For computer games a developer
might not have the time and budget to write a new graphics
engine so they often buy graphical libraries to speed up
development, this will allow them to quickly develop a good
looking game that runs on the desired hardware
27
Driver Software
ØAlso known as device drivers, his software is often
considered a type of system software.
ØDevice drivers control the devices and peripherals
connected to a computer, enabling them to perform
their specific tasks.
Ø Every device that is connected to a computer
needs at least one device driver to function.
ØExamples include software that comes with any
nonstandard hardware, including special game
controllers, as well as the software that enables
standard hardware, such as USB storage devices,
keyboards, headphones and printers.
28
8. Middleware
ØThe term middleware describes software that
mediates between application and system software
or between two different kinds of application
software.
ØFor example, middleware enables Microsoft
Windows to talk to Excel and Word. It is also used to
send a remote work request from an application in
a computer that has one kind of OS, to an
application in a computer with a different OS. It also
enables newer applications to work with legacy
ones.
29
Application Software
§ Application software includes all the programs that allow you
to perform specific tasks on your computer
§ Examples;
• Word processing
• Spreadsheet
• Database software
• Presentation software
• Communication software
• Group ware
• Integrated software and suites
• Specialized software
30
31
Summary
§ Software definition
§ Types of Software
§ System software
§ Operating system
§ Utility programs
§ Library programs
§ Translator
§ Application software
32