Professional Documents
Culture Documents
Unit 4 (Comp Science)
Unit 4 (Comp Science)
1
Computer Software
The computer hardware is an electronic device which
has the potential of performing the task of solving a
problem.
However one has to give precise instructions to the
hardware in order to solve a problem.
The finite set of instructions (steps) that the computer
follow to perform a given job is called a program.
Any program to be executed first it should reside /
loaded/ in the memory.
Software is the general term for a set of instructions that
controls a computer or communication network.
In other words, it is a series of instructions that tell the
hardware what to do.
It includes all sets of information processing
2
instructions.
In computer science and software engineering, computer
software is all information processed by computer systems,
programs and data.
In computers, software is loaded into RAM and executed in
the central processing unit.
At the lowest level, software consists of a machine language
specific to an individual processor.
Software is an ordered sequence of instructions for changing
the state of the computer hardware in a particular sequence.
It is generally written in high-level programming languages
that are easier and more efficient for humans to use (closer to
natural language) than machine language.
Software has historically been considered an intermediary
between electronic hardware and data, which later the
hardware processes according to the sequence of instructions
defined by the software 3
Software:- is a collection of programs and routines that
support the operations of performing a task using a
computer.
Software also includes documentations, rules and
operational procedures.
Software makes the interface between the user and the
electronic components of the computer.
USER
Software
Hardware
4
Computer software is divided in to two broad categories:
1. System Software
2. Application Software
1. System Software
System software consists of instructions or programs that are
used to manage the hardware resources of a computer and
perform required information processing tasks.
It provides the interface between the hardware and the users,
but does nothing directly serve the users needs.
System software helps to run the computer hardware and
computer system.
The purpose of systems software is to insulate the applications
programmer as much as possible from the details of the
particular computer complex being use, especially memory and
other hardware features, and such accessory devices as
communications, printers, readers, displays, keyboards, etc 5
System software includes:
Device drivers (sound driver, network interface card driver, modem card
driver, printer drivers and etc.) that are used to instruct the devices to
perform its required operations.
Server Software- are software's that manages a server computer to provide
a services to the other computers and other applications.
Utilities Software- are software's such as anti-virus that are used to protect
computers attacked by malicious programs.
System Development(Translating) Software
are tools to assist a programmer in writing computer programs and
software using different programming languages in a more convenient way.
The tools include text editors, compilers, interpreters, linkers, debuggers,
and so on.
An Integrated development environment (IDE) merges those tools into a
software bundle, and a programmer may not need to type multiple
commands for compiling, interpreter, debugging, tracing, and etc., because
the IDE usually has an advanced graphical user interface, or GUI
Operating System and more
6
Operating System
is a set of programs that controls and supervises the
overall activities of the computer.
The primary purpose of this software is:
To manage the hardware for the most efficient use of
computer resources and
To provide an interface between a user and an application
program and the hardware.
The operating system reside on secondary storage(hard
Disk) all the times.
As the computer runs, it will:
Manages the resources of the computer system
Control communication between peripherals
Manage memory
Scheduling jobs,
7
Allocating storage facilities,
Input/output facilities such as activating input/output devices
and many other tasks to ensure the proper and efficient use of
hardware by application programs.
Examples of OS- MS-DOS, UNIX and MS-Windows.
OS is the link between the hardware and the user.
This makes the user easy to use the computer without having
to understand bits and bytes.
The operating system sits between the hardware and the other
software.
Operating system typically include three main programs:
1. Supervisory
2. Job Management
3. Input/Output Management Programs 8
1. Supervisory Programs
are the heart of the operating system and are responsible
for managing computer resources.
Supervisory programs are also called monitor or
executive.
part of supervisory programs that are used often are
resident in main memory.
Such programs are called resident programs.
The other supervisory programs and other components of
the operating system are kept on a direct access storage
device and can be quickly transferred to main memory
when needed.
These programs are called transient programs.
2. Job management Programs
are designed to maximize the efficiency with which the
computer resources are used and the processing is
performed. 9
3. Input/output Management Programs
Assign input/output resources to programs and manage
the transfer of data between main memory and these
resources.
Function of an Operating System
The operating stem provides certain services to programs
and to the users of those programs in order to provide an
environment in which users can execute their programs
in a convenient and efficient manner.
The various functions of an operating system may be
loosely classified as:
1. Providing Services
2. Acting as an interface
10
1. Providing Services
There are many services that the operating system has to
provide. These include:
Program Loading and Execution
File System Manipulation
Time Allocation
Resource Control
Input/Output Operation
Error Handling and Protection
1.1 Program Loading and Execution
Application programs that are used on computers are
loaded by the operating system.
The operating system checks memory requirement and other
facilities needed by the program before it loads it and
transfers control to it.
The memory location given to the program depends on 11the
priority level that the program has.
1.2 File System Manipulation
Most programs read or write at least one file and users are
always aware of the existence of files and their properties.
It is the operating system that allows users to define named
objects called files which can hold anything the user wants.
The operating system provides operations to create and
destroy them, read and write them and manage them
properly.
1.3 Time Allocation
Time allocation involves the scheduling of all the various
activities going on in the computer.
This is accomplished on large computer systems by using a
scheduling policy known as time slicing.
Each program on the computer is allocated a short slice of
processing time.
If the program is not completed during its time slice, then it
returns to a queue of programs waiting their turn.
12
Some operating systems allocate levels of privilege to all
programs on the computer.
The nucleus of the operating system program itself has the
highest level of privilege, while application programs have the
lowest level.
The use of certain machine instructions, and access to main
memory and storage devices is governed by the level of
privilege of the program concerned.
1.4 Resource Control
The computer uses many resources.
The processing and the computer memory are just two of them.
Application programs when in use claim the use of these units
in a way that conflicts arise between them.
It is the operating system that closely:
Monitors the status of these units and
Decides how the different programs have to use for the better
efficiency.
13
1.5 Input/output operation
The problem with input and output is that different
input/output devices have different characteristics, and
run at different speeds.
For example, a line printer outputs characters one line at
a time, where as a keyboard accepts input one character
at a time.
A line printer transfers characters more than one
hundred times as fast as a keyboard.
Between these two jobs, the CPU becomes idle.
The operating system has to deal with such problems.
A very common technique that the operating system uses
to tackle this problem is spooling, short for simultaneous
peripheral operation one-line.
Spooling in essence uses the system buffer for reading as
far as ahead as possible on input devices and for storing
output files until the output devices are able to accept
them. 14
Spooling overlaps the I/O of one job with computations of
other jobs.
That is, the spooler may be reading the input of one job while
printing the output of a different job.
Thus, spooling can keep both the CPU and the I/O devices
working at much higher rates.
1.6 Error Handling and Protection
Protection is generally needed against two eventualities,
namely errors and deliberate abuse of the system.
Although it is impossible for the operating system to prevent
errors in application programs, it is essential to detect and
diagnose them as early as possible and to limit their effects.
Deliberate abuse of the system is rather more difficult to deal
with.
Although protection mechanisms are designed to prevent
unauthorized activities from succeeding, few operating
systems are regarded as fool proof. 15
2. Acting as an interface
The operating system is a bridge between a computer
operator and the hardware.
The operating system also serve as an interface between
application programs and the computers hardware.
All the other programs place their request for computer
resources with the operating system.
The operating system:
Either denies them of the resources or
Provides them depending on their availability and
priority orders.
16
Types of Operating System
Different types of operating systems are used for different
types tasks.
The kind of the computer on which the operating system
is required to give a service also matters.
An operating system used on a standalone desktop
computer has to be different from the one, which is used
on a mainframe computer.
The operating system used on a stand-alone computer
does not have many complicated tasks because it serves
only one user at a time and probably performs one task at
a time.
But in the case of mainframe computer, the operating
system is expected to serve many users at a time and
undertakes many tasks concurrently.
17
Operating systems can be classified by:
The number of programs they can handle at a time and
The number of users they serve at once or different stations
(i.e. terminals or micro-computers connected to a central
computer).
1. Single-user, single-tasking
2. Single-user, multi-tasking
3. Multi-user, multi-tasking
1. Single-user, single-tasking
is an operating system that is used on a stand alone computer.
it can only enable the user perform one task at a time.
For example, the user has to wait until the end of a print job
in order to continue working on say another document
edition.
Thus, a single-user, single-tasking operating system can serve
only one user and accept only one task at a time. 18
2. Single-user, multi-tasking
is and operating system that can serve only one user at a
time but enables the user to concurrently run multiple
programs or performs multiple tasks.
3. Multi-user, Multi-tasking
You can recall that a computer network is an
interconnection of many computers in which programs
and data may be served from one central machine.
Operating systems used in a network environment have to
be multi-user, multi-tasking.
That is, they have to enable the different users of the
network use the common resources and also be capable of
undertaking many tasks at a time.
The user can request use of another program without
existing the one he/she is currently using.
19
Operating Environment
The ease in which one can use an operating system is important.
Clearly easy to use operating systems allow users to save
learning and operating time.
The operating system features by which the user interacts with
the operating system is called the operating environment.
The two common operating environments, namely:
1. Command-line interface
2. Graphical user interface
1. Command-Line Operating Environment
In command line operating environment, you interact with the
operating system by typing commands on a line at a system
prompt.
A system prompt is a character, symbol, or combination of the
two that tells you that the system is ready to accept a
command.
20
2. Graphical-User Interface Environment
Learning, remembering, and using different keyboard
commands is not easy.
The graphical-user interface environment alleviates this
problem by providing an easier-to-use-interface.
A graphical-user interface environment uses dialog
boxes, drop-down menus, buttons, icons, scroll bars, and
pointers instead of requiring the user to type commands.
In a graphical user interface environment you move a
pointer around the screen with a mouse to activate
features.
Instead of keying in commands, you move a pointer to
an icon and click a mouse button.
21
2. Application Software
Application Software allows a user to accomplish one or
more specific tasks.
Typical applications software include office suites, business
software, educational software, databases and computer
games.
The following are examples of application software.
2. 1. Word Processor
It helps you to create professional looking documents
quickly and efficiently.
Using a word processor, you can enter a text, edit it as
necessarily, checks for spelling errors, save it and print it.
A Word processing program has the following features:
Word Wrapping
Adding and Deleting
Undo changes 22
Search and replace
Checking spelling and grammar
Formatting
Creating tables, news-paper style column
Creating graphics within the application or import from other
applications.
The following are some of the examples of Word processor
program:
Microsoft Word
Lotus Word Pro
WordPerfect
2.2 Spreadsheets
It enables you to enter and edit data, perform calculations, and
create graphs from the data.
Data in spreadsheet are organized in to rows and columns.
Each column and row has letters and numbers, respectively, to be
addressed by.
The box where a row and a column intersect is called a cell. 23
Spreadsheet has the following features:
Formulas(e.g. formula=C4*C5)
Functions(e.g. formula=sum(C1:C10)
Automatic recalculation(updates in the parameters of the
formula will automatically be made to signify the change in
values).
What if analysis
Formatting
Graphs and charts
The following are examples of Spreadsheets program:
Microsoft Excel
Lotus 1-2-3
2.3 Database
It helps you to manage large collection of data in rows.
Database application provide a variety of database objects that
are helpful in managing the database.
These include: 24
Tables to store data
Queries to ask questions and take actions
Forms to add, view and edit data
Reports to print data in a variety of ways
Macros to automate tasks
Modules to automate and customize databases
The following are examples of Database application programs:
Microsoft Access, MY-SQL, SQL, Oracle
Lotus Approach
2.4 Desktop Publishers
A desktop publishing application brings together output from a
word processing program, graphics programs and other
application to produce a publication, which is easy to read,
visually entertaining and informative.
PageMaker and Microsoft publisher are just two examples in the
category of desktop publishing application.
25
Most desktop publishing programs have the following features:
Ability to moving and sizing images
Working with various fonts
Flexibility to change the number and width of columns
Ability to continue a piece of an article any where in the document
Adjusting the spacing between characters and line
Payroll
Sage software
Presentation tools
Microsoft PowerPoint
Lotus Freelance
Desktop publishing
Abode Photoshop
Multimedia applications
Microsoft's Encarta CD-ROM based encyclopedias
26
Activity
1. What is the difference between Windows and Linux
operating system? Explain the difference between these
two types of operating system and identify the
advantages and disadvantages of one over the other.
27