KEMBAR78
CA2 - Computer Software | PDF | Operating System | Programming
0% found this document useful (0 votes)
4 views38 pages

CA2 - Computer Software

Computers and computers illiterate people

Uploaded by

Tapiwa Edward
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
4 views38 pages

CA2 - Computer Software

Computers and computers illiterate people

Uploaded by

Tapiwa Edward
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 38

Computer software

Software consists of programs and enables a


computer to perform specific tasks, as opposed to
its physical components (hardware) which can only
do the tasks they are mechanically designed for.

It is loaded into a computer's storage (such as


a hard drive, a memory, or RAM). Once the
software is loaded, the computer is able to
execute the software in the Central Processing
Unit (CPU).
Computer software
This involves passing instructions from the
application software, through the system
software, to the hardware which ultimately
receives the instruction as a machine
code. Each instruction causes the computer to
carry out an operation – to move data, carry
out a computation, or alter the control flow of
instructions.
Computer software
 Data is typically moved from one place in the
memory to another. Sometimes it involves
moving data between memory and registers
which enables high-speed data access in the
CPU.

 Instructions may be performed sequentially,


conditionally, or iteratively.
Sequential instructions
Sequential instructions are
those operations that are
performed one after
another.
Conditional instructions
 They are performed in such a
way that different sets of
instructions are executed
depending on the value(s) of
some data. In some languages
this is known as an “if
statement“.
Iterative instructions
 They are performed repetitively and may
depend on some data value. This is sometimes
called a “loop.“ Often, one instruction may
“call“ another set of instructions that are
defined in some other program or module.
When more than one computer processor is
used, instructions may be executed
simultaneously.
Types of Software
System Software
Programming software
Application Software
Open source software (OSS)
Proprietary software
The major types of software
System Software

Application software Operating Systems


System software Schedules computer
events
Hardware Allocates computer
resources
Monitor events
Language translators
Interpreters
User
Compilers
s

Application Software Utility programs


Programming languages Routine operations (e.g. sor
Assembly language list, prin
FORTRAN, BASIC, PL/1 Manage data (e.g. create file
PASCAL, C merge file
“4th generation “
languages
System Software
 Manages the fundamental operations of the
computer, such as
- loading programs and data into memory,
executing programs, saving data to disks,
displaying information on the monitor, and
transmitting data through a port to a
peripheral device.
 System software: operating systems, utilities,
device drivers.
System Software:
It includes the Operating System and all the
utilities that enable the computer to function.

It refers to any computer software which manages


and controls the hardware so that application
software can perform a task.

Example: Operating Systems, Compiler, Loader,


Linker, Interpreter.
Responsibilities of an Operating
System
 Communicate with user, receive and execute
commands, show error messages.
 Manage allocation of memory, processor time and
other resources.
 Collect input from keyboard, mouse, and provide
data to running programs.
 Convey program output to screen, printer, or other
output device.
 Access data from secondary storage.
 Write data to secondary storage.
 Maintains security (checks user-name , password,
virus infection)
Operating System: Multiprogramming
Traditional system with Multiprogramming
no multiprogramming environment

Program 1
Program 1 Program 2
Operating Operating
System System
Program 3

Unused memory Unused memory

The first operating systems executed only one program at a time.When a


program read data from a tape or disk or wrote data to a printer, the entire
CPU came to a stop. This was a very inefficient way to use the computer.

In a multiprogramming environment, three programs were stored in primary


storage. The first program executes until an input/output statement occurs.
Then the operating system directs a channel to read the input and move the
output to output device.The CPU moves to the second program until an
input/output statement occurs. At this point, the CPU switches to the
execution of the third program.
Operating System: Multitasking

 Multitasking => The multiprogramming capability of


primarily single-user operating systems (PC).
 One person can run two or more programs
concurrently on a single computer.
 When you are writing a report using MS Word, you
can also search on the Internet.
 Multitasking allows you to display both programs
on the computer screen and work with them at the
same time.
Operating System:Virtual Storage
 Virtual storage => a way of handling programs more efficiently
 Virtual storage breaks a program into a number fixed- length
portions called pages or into variable-length portions called
segments.
 Only this small portion (2 to 4 kilobytes) of the program is stored
in primary memory at one time.
 All other program pages are stored on a peripheral disk until they
are ready for execution.
 Virtual storage provides a number of advantages:
- the central processor is utilized more fully.
- Many more programs can be in primary storage because
only one page of each program actually resides there.
- Programmers no longer have to worry about the size of the
primary storage. Programs can be of infinite length and small
machines can execute a program of any size.
Operating System: Virtual Storage
Primary memory Secondary storage (disk)

Program A
Lines 1, 2, 3
Program A

Program B
Lines 7, 8, 9
Program B

Program C
Lines 52-80 Program C

Virtual storage is based on the fact that. In general, only a few


statements in a program can be actually utilized at any given moment
Operating System: Time Sharing
 Time sharing => an operating system capability that allows
many users to share computer processing resources
simultaneously.
 It differs from multiprogramming in that the CPU spends a fixed
amount of time on one program before moving to another .
 In time sharing environment, thousands of users are each
allocated a tiny slice of computer time (2 milliseconds).
 In this time slot, each user is free to perform any required
operations.
 At the end of this period, another user is given a 2-millisecond
time slice of the CPU.
 This arrangement permits many users to be connected to a
CPU simultaneously.
 Because the CPU is operating at the nanosecond level, a CPU
can accomplish a great deal of work in 2 millisecond.
Operating System: Multiprocessing
 Multiprocessing => an operating system capability that links
together two or more CPU to work in parallel in a single
computer system.
 The operating system can assign multiple CPUs to execute
different instructions from the same program or from
different programs simultaneously, dividing the work
between the CPUs.
 Multiprogramming uses concurrent processing with one
CPU.
 Multiprocessing uses simultaneous processing with multiple
CPUs.
Utilities
 Another category of system software.
 Augments the OS by taking over some of its
responsibility for allocating hardware resources.
 Utility Program => System software consisting
of programs for routine, repetitive tasks ( e.g.
copying, clearing primary storage, computing a
square root, or sorting), which can be shared by
many users.
 Many utilities come with OS.
 Some independent software developers offer
utilities for sale separately.
E.g. Norton Utilities by Symantec.
Device driver
 A computer program that can establish
communication because it contains
information about the characteristics of
your computer and of the device.
 Each peripheral device requires a device
driver.
 Helps the computer communicate with
that particular device.
 When we add a device to an existing
computer, part of its installation includes
adding its device driver to the
configuration.
Compiler
 Software that translates a high-level
language program into machine language.
 Input to the compiler is a source file
(created by word processor or editor)
containing the text of a high-level
language program.
 If it is syntactically correct, compiler will
save in an object file which is a machine
language instructions for the same job.
Compiler:

Source Languages Target Languages


‘C’ language ‘C’ language
‘Pascal’ language Machine language
FORTRAN language
C++ language
ADA language
Loader:
It is the part of an operating system that is
responsible for loading programs into memory,
preparing them for execution and then
executing them.

The loader is usually a part of the operating


system's kernel and usually is loaded at system
boot time and stays in memory until the system
is rebooted, shut down, or powered off.

In Unix, the loader is the handler for the


system call execve().
Linker:
A linker or link editor is a program that takes
one or more objects generated by compilers
and assembles them into a single executable
program.

Linkers can take objects from a collection


called a library. The objects are program
modules containing machine code and
information for the linker.

The linker takes care of arranging the


objects in a program's address space.
Interpreter:
It is a computer program that translates and
executes instructions written in a computer
programming language line-by-line, unit by
unit etc.,

An interpreter needs to be able to analyze


instructions written in the source language.

Example: Lisp systems, etc.,


Integrated development
environment (IDE)
 Most high-level languages now include an
Integrated Development Environment
(IDE) consisting of a simple word
processor, compiler, linker and loader
tools for finding errors.
 This software package provides menus
from which user can select the next step.
 It leaves all versions of the program in
memory. For safety, we need to explicitly
save the source file to disk.
Program Execution
 Executing a program requires the CPU to
examine each program instruction in memory and
send out the command signals required to
perform each instruction.
 Although instructions are normally performed
consecutively (sequencing), they can be skipped
(branching) or repeated (looping) under program
control.
 During execution, data can be entered by the
operator, or from a saved file.
 After processing, the program output can be
displayed or printed as a result.
Command-line & Graphical User
Interfaces
 Command-line interface systems display a
command prompt, then expect the user to type the
desired commands.
 These systems include UNIX, MS-DOS and VMS.
 Graphical user interfaces (GUI) display pictures
(icons), menus, and text, which the user may point
to with a mouse or other pointing device, then click
to select the desired function.
 These systems (GUI) include Macintosh OS,
Windows 95/98, Windows NT, OS/2 Warp, and
Unix with X Windows interface.
Application Software:
Application Software includes programs that
do real work for a user.

Example:

Payroll systems, Inventory Control, Manage


student database, Word Processor,
Spreadsheet and Database Management
System etc.,
Word Processors:
It is a tool that helps user in creating, editing, and
printing documents. Word processors will normally have
the following capabilities built into them:

- Spell checking
- Standard layouts for normal documents
- Some characters appearing in bold print,
italics, or underlined
- Center lines, make text line up on the left
side of the paper, or the right side of the
paper
- Save the document so it can be used again
- Print the document.

Examples: WordPerfect and Microsoft Word


Spreadsheets:
The spreadsheet packages are designed to use
numbers and formulas to do calculations with
ease. Examples of spreadsheets include:
- Budgets
- Payrolls
- Grade Calculations
- Address Lists

The most commonly used spreadsheet programs


are Microsoft Excel and Lotus 123.
Graphic Presentations:
The presentation programs can make giving
presentations easier. Other uses include:

- Slide Shows
- Repeating Computer Presentations on a
computer monitor
- Using Sound and animation in slide shows

The most recognized graphic presentation


programs are Microsoft PowerPoint and Harvard
Graphics.
Database Management System(DBMS):

 A DBMS is a software tool that allows multiple


users to store, access, and process data into
useful information.
 Database programs are designed for these
types of applications:
- Membership lists
- Student lists
- Grade reports
- Instructor schedules
All of these have to be maintained so you can
find what you need quickly and accurately.

 Example:Microsoft Access, dBASE, Oracle.


Open Source Software:

 Open source software (OSS) is computer


software whose source code is available under
a license that permits users to use, change, and
improve the software, and to redistribute it in
modified or unmodified form.

 It is often developed in a public, collaborative


manner.

Well-known OSS products are Linux,


Netscape/Firefox, Apache , etc.,
Proprietary Software:
 Proprietary software (also called non-free
software) is software with restrictions on
using, copying and modifying as enforced by the
proprietor. Restriction on use, modification and
copying is achieved by either legal or technical
means and sometimes both.

 Proponents of proprietary software are


Microsoft.

 Examples: AutoCAD, Norton Antivirus etc.,


Integrated Software packages and software
suites
 Integrated software packages combine the functions of the most
important PC software packages, such as word processing,
spreadsheets, graphics, and data management.
 This integration provides a more general-purpose software tool and
eliminates redundant data entry and data maintenance.
 Integrated packages are a compromise.
 They can do many things, however, they generally do not have the
same power and depth as single-purpose packages.
 Integrated software packages are different from software suites.
 Software suites are collections of applications software sold as a unit
(e.g. Microsoft Office 97). It contains Word, Excel, Access,
PowerPoint, and Outlook.
 Software suites have some features of integrated packages, such as
the ability to share data among different applications, but they consist
of full-featured versions of each type of software.
Web Browsers
 Easy-to-use software tools for accessing the
World Wide Web and the Internet.
 It has a point-and click graphical user interface.
 Using this interface, you can access and display
information stored in computers at other Internet
sites.
 You can display graphics, audio, and video as well
as text.
 Examples: Netscape Navigator (along with
Netscape Communicator) and MS Internet
Explorer are two popular Web browsers.

You might also like