Computer Confluence 6/e

Download Report

Transcript Computer Confluence 6/e

Computer
Confluence 7/e
© 2006 Prentice-Hall, Inc.
Slide 1
Computer Confluence 7/e
Chapter 4
Software Basics: The Ghost in the
Machine
© 2006 Prentice-Hall, Inc.
Slide 2
Computer Confluence 7/e
Chapter 4
Objectives
 Describe three fundamental categories of software and their
relationship
 Explain the relationship of algorithms to software
 Discuss the factors that make a computer application a useful
tool
© 2006 Prentice-Hall, Inc.
Slide 3
Computer Confluence 7/e
Chapter 4
Objectives
 Describe the role of the operating system in a modern computer
system
 Outline the evolution of user interfaces from early machinelanguage programming to futuristic virtual-reality interfaces
 Explain why unauthorized copying of software is against the
law
© 2006 Prentice-Hall, Inc.
Slide 4
Computer Confluence 7/e
Chapter 4
Linus Torvalds and the Software Nobody
Owns
 Linus Torvalds
 Best known as the Linux creator
 The Linux operating system is the bestknown example of open source software
 Today Linux powers Web servers, film and
animation workstations, scientific
supercomputers, and a handful of
handhelds
© 2006 Prentice-Hall, Inc.
Slide 5
Computer Confluence 7/e
Chapter 4
Linus Torvalds and the Software Nobody
Owns
 The three major categories of software:
 Compilers and other translator programs:
enable programmers to create other
software
 Software applications: serve as
productivity tools to help computer users
solve problems
 System software: coordinates hardware
operations and does behind-the-scenes
work the computer user seldom sees
 OS vs. Application software
© 2006 Prentice-Hall, Inc.
Slide 6
Computer Confluence 7/e
Chapter 4
Processing with Programs
 Food for Thought
 The hardware in a computer system is equipped to produce
whatever output a user requests
© 2006 Prentice-Hall, Inc.
Slide 7
Computer Confluence 7/e
Chapter 4
Processing with Programs
 A Fast, Stupid Machine
 Programmers begin with an algorithm: a set of step-by-step instructions
 Written in a natural language, e.g., English
 Ambiguous, error-prone generalities
 Translated into the vocabulary of a programming language
© 2006 Prentice-Hall, Inc.
Slide 8
Computer Confluence 7/e
Chapter 4
Processing with Programs
 The Language of Computers
 Machine Language: numeric codes that
represent data
 High-level language: falls between
machine language and natural human
language
The programmer, like the poet, works
only slightly removed from pure thoughtstuff. He builds castles in the air, creating
by exertion of the imagination. Yet the
program construct, unlike the poet’s
words, is real in the sense that it moves
and works, producing visible outputs
separate from the construct itself.
—Frederick P. Brooks, Jr., in
The Mythical Man Month
Compilers translate high-level language
into machine language
 Natural Languages: resemble languages
spoken by humans
© 2006 Prentice-Hall, Inc.
Slide 9
Computer Confluence 7/e
Chapter 4
Software Applications: Tools for Users
 Consumer Applications
 Many software companies have replaced their printed
documentation with:




Tutorials
Reference materials
Help files
On-line help
 Upgrading: users can upgrade a program to the new version by
paying an upgrade fee to the software manufacturer
 Newer releases often have additional features and fewer bugs
© 2006 Prentice-Hall, Inc.
Slide 10
Computer Confluence 7/e
Chapter 4
Software Applications: Tools for Users
 Compatibility
 Allows software to function
properly with the hardware,
operating system, and peripherals
 Programs written for one type of
computer system may not work
on another
 Disclaimers
 Software manufacturers limit their
liability for software problems by
selling software “as is”
© 2006 Prentice-Hall, Inc.
Slide 11
Computer Confluence 7/e
Chapter 4
Software Applications: Tools for Users
 Licensing: commercial software is copyrighted so it can’t
be legally duplicated for distribution to others
 Software license
 Volume licenses
 Distribution: software is distributed via
 Direct sale
 Retail stores
 Mail-order catalogs
 Web sites
 Not all software is copyrighted
 Public domain software
 Shareware
© 2006 Prentice-Hall, Inc.
Slide 12
Computer Confluence 7/e
Chapter 4
Software Applications: Tools for Users
 Why We Use Applications: most successful software products share two
important characteristics:
 They are built around visual metaphors of real-world tools
 They extend human capabilities in some way
© 2006 Prentice-Hall, Inc.
Slide 13
Computer Confluence 7/e
Chapter 4
Integrated Applications and Suites:
Software Bundles
 Integrated software packages:
 Include several applications designed to work well
together
 Enable automatic transfer of data between modules
 Cost less than buying the applications individually
 Use the same type of commands in each module
© 2006 Prentice-Hall, Inc.
Slide 14
Computer Confluence 7/e
Chapter 4
Integrated Applications and Suites:
Software Bundles
 Popular integrated packages, like
AppleWorks and Microsoft Works,
generally include:






Word processing
Database
Spreadsheet
Graphics
Telecommunication
Personal information management
(PIM) modules
© 2006 Prentice-Hall, Inc.
Slide 15
Computer Confluence 7/e
Chapter 4
Integrated Applications and Suites:
Software Bundles
 Application suites: bundles containing several full application
programs that are also sold as separate programs
 The core applications of the Microsoft Office System (the most popular
application suite) include:





Word (a word processing program)
Excel (a spreadsheet program)
PowerPoint (a presentation graphics program)
Access (a database program)
Outlook (an email/personal-information management program)
© 2006 Prentice-Hall, Inc.
Slide 16
Computer Confluence 7/e
Chapter 4
Integrated Applications and Suites:
Software Bundles
 Vertical-Market and Custom Software
 Tends to cost far more than
mass-market applications
 Job-specific software:





Medical billings
Library cataloging
Legal reference software
Restaurant management
Single-client software needs
© 2006 Prentice-Hall, Inc.
Slide 17
Computer Confluence 7/e
Chapter 4
System Software: The Hardware-Software
Connection
What the Operating System Does
 System software
 A class of software that includes the operating system and utility programs,
handles these details, and hundreds of other tasks behind the scenes
Originally, operating systems were envisioned as a
way to handle one of the most complex input/output
operations: communicating with a variety of disk
drives. But, the operating system quickly evolved
into an all-encompassing bridge between your PC
and the software you run on it.
—Ron White, in How Computers Work
© 2006 Prentice-Hall, Inc.
Slide 18
Computer Confluence 7/e
Chapter 4
System Software: The Hardware-Software
Connection
 Operating system functions:
 Communicating with peripherals
 Coordinating concurrent processing of jobs
 Memory management
 Resource monitoring, accounting, and security
 Program and data management
 Coordinating network communications
© 2006 Prentice-Hall, Inc.
Slide 19
Computer Confluence 7/e
Chapter 4
System Software: The Hardware-Software
Connection
Utility Programs and Device Drivers
 Utility programs
 Serve as tools for doing system maintenance and repairs that aren’t
automatically handled by the operating system
 Make it easier for users to:




Copy files between storage devices
Repair damaged data files
Translate files so that different programs can read them
Guard against viruses and other potentially harmful programs (as described in the
chapter on computer security and risks)
 Compress files so they take up less disk space
 Perform other important, if unexciting, tasks
© 2006 Prentice-Hall, Inc.
Slide 20
Computer Confluence 7/e
Chapter 4
System Software: The Hardware-Software
Connection

Symantec Norton Utilities is a popular utility package that includes software
tools for recovering damaged files, repairing damaged disks, and improving
disk performance
© 2006 Prentice-Hall, Inc.
Slide 21
Computer Confluence 7/e
Chapter 4
System Software: The Hardware-Software
Connection
Device drivers
 Small programs that enable I/O devices—keyboard, mouse, printer, and
others—to communicate with the computer
 Included with the operating system or bundled with peripherals
© 2006 Prentice-Hall, Inc.
Slide 22
Computer Confluence 7/e
Chapter 4
System Software: The Hardware-Software
Connection
Where the Operating System Lives
 Some computers store their operating system in ROM
 Others include only part of it in ROM
 The remainder of the operating system is loaded into memory in a
process called booting, which occurs when you turn on the computer
© 2006 Prentice-Hall, Inc.
Slide 23
Computer Confluence 7/e
Chapter 4
System Software: The Hardware-Software
Connection
 Most of the time it works behind the scenes
 Interacting with the operating system, like interacting with an application,
can be intuitive or challenging and it depends on something called the user
interface
© 2006 Prentice-Hall, Inc.
Slide 24
Computer Confluence 7/e
Chapter 4
The User Interface: The Human–Machine
Connection
User interface
 The look and feel of the computing experience from a human
point of view
 Desktop Operating Systems
 MS-DOS is a disk operating system in which the user interacts using
characters
 Letters
 Numbers
 Symbols
© 2006 Prentice-Hall, Inc.
Slide 25
Computer Confluence 7/e
Chapter 4
The User Interface: The Human–Machine
Connection
 Features include:
 Command-line interface (commands are typed)
 Menu-driven interface (commands are chosen from on-screen lists)
© 2006 Prentice-Hall, Inc.
Slide 26
Computer Confluence 7/e
Chapter 4
The User Interface: The Human–Machine
Connection
 Graphical User Interfaces
 Mac OS
 This is a disk operating system in which the user interacts with the computer by using a
pointing device (e.g., a mouse)
© 2006 Prentice-Hall, Inc.
Slide 27
Computer Confluence 7/e
Chapter 4
The User Interface: The Human–Machine
Connection
 Microsoft Windows
 Originally, Microsoft Windows
(commonly called Windows) was a
type of program, known as a shell,
which put a graphical face on MSDOS
 With the introduction of Windows 95
in 1995, Microsoft began transitioning
Windows from an operating system
shell into a full operating system that
seldom showed its MS-DOS roots
 The latest Windows versions have no
ties at all to the DOS past
 The Windows XP GUI
© 2006 Prentice-Hall, Inc.
Slide 28
Computer Confluence 7/e
Chapter 4
The User Interface: The Human–Machine
Connection
File Management: Where’s My Stuff?
 Files can be scattered all over the system, which often makes data
management difficult
 One solution to this problem is to organize data files logically
 Both Windows and the Mac support the notion of common system
folders with self-explanatory names:
 My Documents (Documents)
 My Pictures (Pictures)
 My Music (Music)
© 2006 Prentice-Hall, Inc.
Slide 29
Computer Confluence 7/e
Chapter 4
The User Interface: The Human–Machine
Connection
File Management: Where’s My Stuff?
 File-Management Utilities




View, rename, copy, move, and delete files and folders
Hierarchies help with organization
Help with locating a file
Get size, file type, and last modification date
 Managing Files from Applications
 Operations: Open, Save As, Save and Close
 Defragmentation
© 2006 Prentice-Hall, Inc.
Slide 30
Computer Confluence 7/e
Chapter 4
The User Interface: The Human–Machine
Connection
 Multiple User Operating Systems: UNIX and Linux
 UNIX was developed at Bell Labs before personal computers
were available
 Linux was created by Linus Torvalds and continues to be a
work-in-progress
 Allow a timesharing computer to communicate with
several other computers or terminals at once
© 2006 Prentice-Hall, Inc.
Slide 31
Computer Confluence 7/e
Chapter 4
The User Interface: The Human–Machine
Connection
 Linux is free for anyone to use or improve
 UNIX remains the dominant operating
system for Internet servers
 Some form of UNIX is available for
personal computers, workstations, servers,
mainframes, and supercomputers
© 2006 Prentice-Hall, Inc.
Slide 32
Computer Confluence 7/e
Chapter 4
The User Interface: The Human–Machine
Connection
Hardware and Software Platforms
Windows XP
Windows Sever 2006
Windows ME
Windows 2000
Microsoft Windows CE .NET
© 2006 Prentice-Hall, Inc.
Palm OS
Mac OS X (10).
Mac OS 9
Linux, Sun Solaris, and other
UNIX variations
Slide 33
Computer Confluence 7/e
Chapter 4
The User Interface: The Human–Machine
Connection
 Cross-platform applications, such as Microsoft Office and Adobe Photoshop
 Programs that are available in similar versions for multiple platforms
 Mac users can buy software emulation programs that:
 Create a simulated Windows machine in the Mac
 Translate all Windows-related instructions Mac equivalents
 Future applications may be more tied to networks than to desktop computer
platforms
 Microsoft .NET strategy
 Java, a platform-neutral computer language developed by Sun Microsystems for
use on multiplatform networks
© 2006 Prentice-Hall, Inc.
Slide 34
Computer Confluence 7/e
Chapter 4
Software Piracy and Intellectual Property Laws
 Software Piracy = illegal duplication of copyrighted software
 Software industry is a $50 billion a year sector
 Billions of dollars are lost each each to software pirates
 One-third of all software is illegally copied
 Intellectual Property and the Law
 Intellectual property includes the results of intellectual activities in the
arts, science, and industry
 Laws ensure that mental labor is justly rewarded and encourage
innovation
 The information age requires for the outdated and inconsistent
intellectual property laws to be changed and adapted
© 2006 Prentice-Hall, Inc.
Slide 35
Computer Confluence 7/e
Chapter 4
Rules of Thumb: Green Computing
 Tips to choose and use computer hardware and software
in an environmentally responsible way:









Buy green equipment
Use a notebook
Take advantage of energy-saving features
Turn it off when you’re away
Save energy, not screens
Print only once
Recycle your waste products
Pass it on
Send bits, not atoms
© 2006 Prentice-Hall, Inc.
Slide 36
Computer Confluence 7/e
Chapter 4
The User Interface: The Human–Machine
Connection
Tomorrow’s User Interfaces: future user interfaces will be built
around emerging development technologies such as:
 The end of applications
 Natural-language interfaces
 Agents
 Virtual realities
© 2006 Prentice-Hall, Inc.
Slide 37
Computer Confluence 7/e
Chapter 4
Inventing the Future Tomorrow’s Evolving
Applications and Interfaces
 WIMP (windows, icons, menus, and pointing devices)
interface
 Easier to learn and use than earlier character-based interfaces
 SILK interface incorporates many important emerging user
interface software technologies:
 Speech and language
 Image
 Knowledge
© 2006 Prentice-Hall, Inc.
Our goal was bug-free. The
new goal is resiliency.
—Bob Frankston, in Beyond
Calculation
Slide 38
Computer Confluence 7/e
Chapter 4
Lesson Summary
 This chapter provides some general answers to the
“What is software” question, along with details about
each of the three major categories of software:
 Compilers and other translator programs, which enable
programmers to create other software
 Software applications, which serve as productivity tools to
help computer users solve problems
© 2006 Prentice-Hall, Inc.
Slide 39
Computer Confluence 7/e
Chapter 4
Lesson Summary (continued)
 Offers tips to choose and use the best environmental
computer hardware and software
 Introduces emerging technologies that offer promise for
future improved Applications and Interfaces
 System software, which coordinates hardware operations
and does behind-the-scenes work the computer user seldom
sees
© 2006 Prentice-Hall, Inc.
Slide 40