Jowel V.
Vista
Consists of the program that control the
operations of the computer and its device.
Function that system software performs
include starting up the computer; opening,
executing and running applications, storing,
retrieving and copying files, formatting disk,
reducing sizes and backing up the contents.
Systems software/os
Set of programs that coordinates activities and
functions of the hardware and various other
programs
Application software
Programs that help users solve particular
computing problems
Isa set of programs containing instruction
that coordinate all of the activities among
computer hardware resources.
Ex: OS recognize input from an input device
(keyboard, mouse, microphone).
A computer cannot function without an
operating software
Personal
Workgroup
Enterprise
Software licensing
Protection by software vendors to prevent
unauthorized use
Software upgrades
A revised version of software that usually
includes fixes of known problems, plus
enhancements to existing capabilities
Global software support
Software that is distributed around the globe
may require unique support mechanisms due to
local political and economic conditions
Freeware
Shareware
Public-domain software
Copyrighted software given away for free by the
author. Although it is available for free, the author
retains the copyright, which means that you cannot
do anything with it that is not expressly allowed by
the author. Usually, the author allows people to use
the software, but not sell it.
Software distributed on the basis of an honor system. Most
shareware is delivered free of charge, but the author
usually requests that you pay a small fee if you like the
program and use it regularly. By sending the small fee, you
become registered with the producer so that you can
receive service assistance and updates.
You can copy shareware and pass it along to friends and
colleagues, but they too are expected to pay a fee if they
use the product.
Shareware is inexpensive because it is usually produced by
a single programmer and is offered directly to customers.
Thus, there are
Refers to any program that is not copyrighted. Public-
domain software is free and can be used without
restrictions. The term public-domain software is often
used incorrectly to include freeware, free software that
is nevertheless copyrighted.
System software…
Is an interface or buffer between application
software and hardware
Controls the computer hardware and acts as an
interface with applications programs
Operating
Application and
software systems
software
Users
Hardware
Perform common computer hardware functions
Provide a user interface
Provide a degree of hardware independence
Manage system memory
Manage processing tasks
Provide networking capability
Control access to system resources
Manage files
User interface
A function of the operating system that allows
individuals to access and command the computer
Command-based user interface
A particular user interface that requires text
commands be given to the computer to perform basic
activities
E.g., unix, DOS
Graphical user interface (GUI)
A user interface that uses pictures (icons) and menus
displayed on the screen to send commands to the
computer system
E.g. Windows, MAC OS
List
and define at least 5 OS including
their different versions.
Hardware independence
Operating system (OS) provides hardware
independence for application software
Application software interfaces with the
operating system which interfaces with the
hardware
When the hardware is changed, the operating
system is changed so that the application
software is not required to be changed
Memory management
Virtual memory & paging
Multitasking
Multithreading
Timesharing
Memory management…
Controls how memory is accessed and maximizes
available memory and storage
Memory management
Virtual memory & paging
Multitasking
Multithreading
Timesharing
Virtual memory
Memory that allocates space in secondary storage
to supplement the immediate, functional
memory capacity of RAM
Paging
A function of virtual memory allowing the computer to
store currently needed pages in RAM while the rest of
the pages wait in secondary storage
Memory Disk
Program 1 (a few pages)
Program 2 (a few pages)
Program 3 (a few pages)
Operating
system and Programs
Program 4 (a few pages)
system and other
software software
Program 5 (a few pages)
Program 6 (a few pages)
Other memory requirements
An imaginary memory area supported by some operating systems
(for example, Windows but not DOS) in conjunction with the
hardware. You can think of virtual memory as an alternate set of
memory addresses. Programs use these virtual addresses rather
than real addresses to store instructions and data. When the
program is actually executed, the virtual addresses are converted
into real memory addresses.
The purpose of virtual memory is to enlarge the address space, the
set of addresses a program can utilize. For example, virtual
memory
might contain twice as many addresses as main memory. A program
using all of virtual memory, therefore, would not be able to fit in
main memory all at once. Nevertheless, the computer could
execute
such a program by copying into main memory those portions of the
program needed at any given point during execution.
To facilitate copying virtual memory into real memory, the
operating
system divides virtual memory into pages, each of which contains a
fixed number of addresses. Each page is stored on a disk until it is
needed. When the page is needed, the operating system copies it
from disk to main memory, translating the virtual addresses
into real
addresses.
The process of translating virtual addresses into real
addresses is
called mapping. The copying of virtual pages from disk to
main
memory is known as paging or swapping.
Memory management
Virtual memory & paging
Multitasking
Multithreading
Time-sharing
Multitasking
A processing activity that allows a user to run
more than one application at the same time
Multithreading
A processing activity that is basically
multitasking within a single application
Time-sharing
A processing activity that allows more than one
person to use a computer system at the same
time
Network capability
Aids in connecting the computer to a network
Access to system resources
Provides security for unauthorized access
File management
Ensures that files in secondary storage are
available when needed, and they are protected
against unauthorized usage
Utility programs…
Programs used to merge and sort sets of data,
keep track of computer jobs being run, compress
files of data before they are stored or
transmitted over a network, and perform other
important tasks
Proprietary
Designed to solve a unique and specific
problem
In-house
Development of application software using the
company’s resources
Contract
Developed for a particular company
Off-the-shelf
An existing software program that can be used
without considerable changes expected
Customized package
Blend of external and internal software
development
In-house customized
Contract customization
Schematic
Application
software
Off-the-
Proprietary
shelf
software
software
In-house Customized Standard
Contract
developed package package
In-house Contract
customized customization
Turbo Tax
Provides automated
assistance for tax
preparation and
submission.
(Figure 4.6)
24
Quicken
An off-the-shelf
software package that
provides assistance for
standard check writing
and personal
accounting.
(Figure 4.7)
25
Word Processing
Provides
assistance in
formulating,
formatting, and
printing
documents such as
letters, memos,
and papers. (Figure 4.8)
26
Spreadsheet
Provides a wide
range of built-in
functions for
statistical, financial,
logical, database,
graphics, and data
and time
calculations.
(Figure 4.9)
27
Database
Stores, manipulates,
and retrieves data.
(Figure 4.10)
28
Graphics Program
Helps make a
presentation;
develops brochures,
illustrations, etc.
Usually called
Presentation
Graphics
On-Line Services
Provide access to
various information
resources.
(Figure 4.12)
30
Software Suite
Collection of personal
productivity software
such as word processor,
spreadsheet, and
database.
31
OLE = Object Linking and Embedding
A software feature that allows you to copy text
from one document to another or embed
graphics from one program into another
program or document
Server Application
The application that supplies objects you place
into other applications
Client application
The application that accepts objects from
other applications
Copy
Copy data from one application and place it in
another
Link
Changes made to the server object to
automatically appear in all linked client
objects
Embed
An object to become part of the client
document Schematic
Graphics Program
Client Application
Server Application
Word Processing Program Spreadsheet
Program
Team photo Server Application
Actual vs. Budget
-------------
-------------
--------------
Copy
Team photo
Actual vs. budget Link
--- --- --- --- -
--- --- --- -- --
-- - - - --- --- -
--- --- --- --- --
Project
ProgramManagement
Chart Server Application
Chart
==== == ==
== == == = --- -------
=== == == ------- ---
--- --------
==== ==== =
Embed
Groupware
Software that helps groups of people work
together more efficiently and effectively
Collaborative computing software
Software that helps teams of people work
together toward a common goal
Enterprise application software…
Software that benefits the entire organization
Examples
Accounts receivable Sales ordering
Accounts payable Order entry
Cash-flow analysis Check processing
Manufacturing control Receiving
General Ledger Retail Operations
Integrated
Supply Chain
Management
Software
Programming languages…
Coding schemes used to write both systems and
application software
Machine Language
1st generation programming language
Considered a low-level language because it
involves basic coding using the binary symbols
1 and 0
Assembly Language
2nd generation language
Replaced binary digits with mnemonics (e.g.,
“ADD”) programmers could more easily
understand
Third Generation Languages
Continued trend to more symbolic code (e.g.
COBOL)
Fourth Generation Languages (4GLs)
Languages that are less procedural and even
more English-like than third-generation
languages (e.g. FOCUS)
Query languages
Used to ask the computer questions in English-
like sentences
Also known as database languages
Structured query language (SQL)
A standardized language often used to perform
database queries and manipulations
Object-oriented languages (OOL)
Languages that allow interaction of programming
objects, including data elements and the actions that
will be performed on them
Note: OOP = object-oriented programming
Encapsulation
The process of grouping items into an object
Polymorphism
A process allowing the programmer to develop one
routine or set of activities that will operate on
multiple objects
Inheritance
Property used to describe objects in a group of objects
taking on characteristics of other objects in the same
group or class of objects
Reusable code
The instruction code within an object that can be
reused in different programs for a variety of
applications
Examples
Smalltalk, C++, Java
Visual programming languages…
Languages that use a mouse, icons, or symbols on
the screen and pull-down menus to develop
programs
Examples
Visual Basic
Visual C++
PC COBOL
5th generation languages…
Combines rule-based code generation,
component management, visual programming
techniques, and reuse management
Knowledge-based management
An approach to the development of computer
programs in which you do not tell a computer how to
do a job, but what you want it to do
Language translator
Systems software that converts a programmer’s
source code into its equivalent in machine
language
Source code
High-level program code written by the
programmer
Object code
Another name for machine language code
Interpreter
A language translator that translates one program
statement at a time into machine code
Machine
Program language
Interpreter
statement statemen
t
Statement
execution
Compiler
A language translator that converts a complete program
into machine language to produce a program that the
computer can process in its entirety
Schematic
Step 1: Translate program
Machine
Computer
Compiler language
program
program
Step 2: Execute program
Machine
language
program
Program
execution
DOS (DISK OPERATING SYSTEM)
WINDOWS 3.x
WINDOWS CE
OS/2
UNIX
LINUX
NETWARE
Application
Software
Application software makes computer popular
and easy to use
Common application software:
◼ Microsoft Word, WordPerfect
◼ PowerPoint
◼ Netscape, Internet Explorer
◼ PhotoShop, Photo-Paint
◼ Quick Time
◼ Dreamweaver
computing ESSENTIALS
General-purpose application
Widely used software
Common tasks
Special-purpose application
Narrowly focused software
Specific tasks
computing ESSENTIALS
User Interface
Important part of software
Portion where the user interacts with the
software
Graphical User Interface (GUI)
–Windows –Toolbars
–Menus –Help
computing ESSENTIALS
Rectangular area
that displays
information
Multiple
applications in
different windows
Can be resized,
moved, and
closed
69
computing ESSENTIALS
Display commands
Present options
Drop down list
Held in menu bars
70
computing ESSENTIALS
Contain buttons and menus
Commonly used commands
Common to many applications
Formatting toolbar
Standard toolbar
computing ESSENTIALS
Containsuseful
information
Access methods
Table of Contents
Keyword index
Text search
72
computing ESSENTIALS
Click once to
access or F1
ASP – Application Service Provider
Provide access to different programs
Don’t need to upgrade
Store data files on the ASP site
Can access data from any location
Privacy and Security
Data may be compromised
Connect to the Web
Open and transfer files
Display text and images
Web site address
How a browser locates a web page
Uniform Resource Locator (URL)
Document file that contains
Text and Images
Hypertext Markup Language (HTML)
Commands that describe layout of page
Hyperlinks
Connections to other documents
Navigating the Web
76
computing ESSENTIALS
Searchservices provide databases of Web
pages and Internet sites
Topic Search
Successively select categories
Keyword Search
Specific word or phrase
computing ESSENTIALS
Organize related data for easy access
Database is a specially formatted file that
contains data
Structured
Most popular DBMS
Microsoft Access
Corel Paradox
Lotus Approach
78
computing ESSENTIALS
Relational
Most common, simple to create
Hierarchical
Older, more complex
Network (CODASYL)
Powerful, complex schemas
Object-oriented
Data stored as objects
computing ESSENTIALS
field names
table field value
record
Relational Database
computing ESSENTIALS
Capability to locate and display data
Sort and analyze data
Programming control language
Structure Query Language (SQL)
Used to create complex, sophisticated
applications
computing ESSENTIALS
Link tables using a
common (key) field
computing ESSENTIALS
Createinteresting, professional
presentations
Combine visual objects, audio/video, text
Most Widely Used
Microsoft PowerPoint
Corel Presentations
Lotus Freelance Graphics
computing ESSENTIALS
Layout files
Templates
Text layout
Background colors
and patterns
Borders
Animations
• Visual effects • Audio effects
84
computing ESSENTIALS
Single program
Multiple functionality
Word processor, spreadsheet, DBMS
Lower cost
Simpler
Capabilities not as extensive
Microsoft Works
computing ESSENTIALS
Web-based application software
Pay as you go
Access only when needed