Download Computer Software

Document related concepts
Transcript
Computer Software
Bayram Güzer
Software
• Software is the planned, step-by-step set of instructions
required to turn data into information that makes the
computer useful.
• Generally software can be categorized as
– Application software
– System software
• Application software is used to solve a particular problem
or perform a particular task
• Examples;
–
–
–
–
Keeping track of store inventory
Designing a car engine
Draft the minutes of the meeting
Playing a game
2
Software
• System software is the all programs related
to coordinating computer operations
• Examples;
– Operating systems
– Language translators
• Convert program code to machine-readable form
– Utility programs
• Perform secondary tasks (everyday jobs)
3
Operating System
• A set of programs that lies
between application
programs and the hardware
– Manages computer’s
resources (CPU, peripheral
devices)
– Establishes a user interface
• Determines how user interacts
with operating system
– Provides and executes
services for applications
software
4
Kernel
• The most important program in the operating
system is the program that manages the
operating system which is called as supervisor
program or kernel.
– It is loaded from hard drive into memory when
computer is booted
• Booting refers to starting the computer
– Since it remains in memory permanently until
power loss it is also referred to as resident.
– It loads other operating system programs from disk
storage as needed that is referred to as nonresident.
5
Operating Systems for Personal
Computers
• Platform is combination of computer hardware
and operating system software
– Wintel (Microsoft Windows running on an Intel-based
PC) is most common
• Common Operating Systems
– Windows
– MAC OS
– Linux
6
MS-DOS
• Uses a command-line interface
– Screen provides prompts for user
– User types commands
• Largely replaced by graphical user interfaces
• Not user-friendly
7
Microsoft Windows
• Began as an operating environment for MS-DOS
– Not a full-blown operating system; required MS-DOS
• Uses a graphical user interface (GUI)
– Users can use DOS commands and interface
• Now a complete family of operating systems
8
Windows 3.1
• Windows 3.1 is also known as the MS-DOS
Operating Environment
• A layer added “on top” of DOS
– Separates operating system from user
– Makes operating system easier to use
• It is also called as a shell
– A shell is a piece of software that provides an
interface for users. Typically, the term refers to an
operating system shell which provides access to the
services of a kernel
9
Graphical User Interface (GUI)
• Graphical user interface is
the environment which
users work with on-screen
pictures called icons and
menus rather than keyedin commands.
• User clicks an icon to
perform tasks
• There is a start Menu in
lower left corner which
launches programs
• You can use menus to
activate commands
10
Windows Features
• Long file names (up to 255 characters)
• Plug and Play
– Makes installing hardware components easier
– A user can install it simply by plugging it in
and turning on the computer.
• Object Linking and Embedding (OLE)
– Allows user to embed or link one document to
another
• Embedding graphics into document and editing
graphic within a document.
11
The Windows Family
• Windows 9x
–
–
–
–
Windows 95
Windows 98
Windows Millennium Edition (ME)
Windows CE
• Corporate Market
– Windows NT
– Windows 2000
• Windows XP
• Windows Vista
• Windows 7
12
Windows 9x
• Serves home/consumer market
• No longer a shell, but a self-contained
operating system
• Began with Windows 95
– Next Generation:
• Windows 98
• Windows ME
• Many improvements over Windows 3.1
13
Windows 98 Improvement
• Internet/intranet browsing
capabilities have been
improved.
• Support for state-of-the-art
hardware, including DVD
and multimedia are
enriched.
• Support for huge disk
drives is provided.
• Wizards: step-by-step
software for installing,
configuring, and using
software easier.
14
Windows ME Enhancements
• Multimedia support: Media Player, video
editing
• Enhanced reliability features
• Home network support
15
Windows CE
• Scaled-back version of Windows 9x
– Designed to work on machines with small
screens and little storage
• Used in Pocket PCs
• Used in embedded systems
– Computer devices integrated into other
products; i.e., robots
• CE.NET supports .NET platform
16
Corporate Market
• Windows NT
– NT stands for “new technology”
• Windows 2000
17
Windows NT
• Desktop looks and acts like Windows 98
• Meant mostly for corporate, networked
environments
– Engineered for scalability (the ability to handle
many users)
– Stronger security features
– It requires much more memory and hard disk
space than Windows 98.
18
Windows 2000
• The latest generation of Windows NT
• Merges Windows NT 4.0’s stability with
Windows 98’s setup and hardware awareness.
• Dynamic layout features will detect what kind
of screen you are on (handheld, TV, PC).
• One computer “serves” many users
– You identify yourself and the system knows your
preferences
– You get “your” desktop and files, regardless of
which PC you use to log into the network
19
Windows XP
• Brings consumer and
corporate versions of
Windows together into a
single product
– Has Home and Professional
Editions
• Enhancements
20
Windows XP Enhancements
• Improved user interface
– Much clearer and uncluttered desktop
– More icons on redesigned Start Menu
• Improved multimedia support
• More personalization
• Multiple user support
– User can log off, leaving programs running, and allow
another user to log on
– Set up limited accounts for children to use; i.e., no
inappropriate games or no Internet access
• Internet support and protection
21
Windows Vista
• Windows Vista: Most recent version of Windows
• Features the Aero visual interface
– Transparency and animations
– Live Thumbnails
•
•
•
•
The Vista Start menu is more modernized
Built-in security features
Improved networking and multimedia
Additional features
– Sidebar, Instant Search, etc.
• Hardware requirements for Vista have increased over earlier versions
of Windows
• Four editions (Home Basic, Home Premium, Business, and Ultimate)
22
Windows 7
• Designed to fix the Vista debacle; sort of a
streamlined Vista under the hood
• Faster boot/shutdown times
• Some “improvements” to the UI, handling
media, Windows Explorer, IE8, wireless
networking and setting up home networks
23
MAC OS
• Designed for the Macintosh
computer
• It is also known as the first
commercially successful
GUI
– Has served as a model for
Windows and other GUI
products developed since
Mac OS
24
UNIX
• Developed in 1971 for use on the DEC minicomputer
• Character-based system with command-line interface
• Not tied to any family of processors
– Runs on just about every type of system (PC, mainframe,
workstation) from any manufacturer
• Primary operating system in use on Internet servers
– Handles many simultaneous users easily
• Look for SCO Unixware/SCO Open Server for
the latest version.
25
Linux
• Uses command-line interface
– Many companies have created a GUI to work with
Linux
• Open-source concept
– Source code is free
– Users can download, change, and distribute the
software
•
•
•
•
More stable than Windows
Applications relatively limited
Hardware compatibility is limited
It is mostly used by advanced users/IT professionals
26
Operating Systems for Networks
• A networking operating system is an operating
system that contains components and programs
that allow a computer on a network to serve
requests from other computer for data and provide
access to other resources such as printer and file
systems.
• Some of the NOS functions are;
– Handles network functions
– Make resources appear as though they were
running from client computers
27
Network Functions
• Common functions of the networks are
listed below;
–
–
–
–
Sharing resources (hard disks and printers)
Providing data security
Troubleshooting the network
Administrative control of the network
28
Network Operating Systems
•
•
•
•
Windows NT Server
Windows 2000 Server
Windows .NET Server (Windows Server 2003)
Novell Netware
– Novell Open Enterprise Server (OES)
• OES-Linux
• OES-Netware
• Unix
– SCO Unixware/SCO Open Server
29
Network Operating Systems
• Unix-like
– Minix
– Solaris
– Berkeley Software Distribution
• Free BSD
• Net BSD
– Open BSD
– Open Solaris
– Linux
30
Network Operating Systems
• Resource allocation is the process of
assigning computer resources to certain
programs and processes for their use
• Main issues related to resource allocation
–
–
–
–
Sharing the Central Processing Unit
Sharing memory
Sharing storage resources
Sharing printing resources
31
Sharing the CPU
• There are three ways for sharing the cpu;
– Multiprocessing
– Multiprogramming
– Time-Sharing
32
Multiprocessing
• Multiprocessing is the use of a computer with
multiple CPUs
• Symmetric multiprocessing
– treats all of the processing elements in the system
identically
• Asymmetric multiprocessing
– system assigns certain tasks only to certain
processors
• Reserving only one CPU to responding all hardware
interrupts
33
Multiprogramming
• Two or more programs executed
concurrently
– Programs take turns using the CPU
– Event-driven
• An interrupt suspends processing to allow another
program to run
• After the second program runs, the operating system
returns the CPU to another program
• Generally used for batch programs that do
not require user input
34
Time-Sharing
• Programs take turns using the CPU
• Time-driven
– Each user is given a slice of time (fraction of a second)
– CPU works only on that user’s tasks during its time slice
– Response time is the time between typed request and
computer’s reply
• Typically used in applications with many users
35
Sharing Memory
• Sharing memory is related to memory
management
• It divides memory into foreground and
background sections
• It also uses virtual storage which is also
called as virtual memory
36
Memory Management
• Divides memory into separate partitions
• Allocates memory to programs
• Keeps programs separate from one another
37
Foreground and Background
• Foreground is for programs with high
priority that will receive more CPU time.
• Background is for programs with lower
priority that will receive less CPU time
– Programs waiting to run are kept in queues
based on their priority
38
Virtual Storage
• Programs currently executed are stored on disk
– Portions of program brought into memory as needed
– Minimizes the amount of memory needed
• Can be implemented by paging
– Divide memory into small, fixed-size pages
– Page table keeps track of memory locations
39
Sharing Storage Resources
• Keeps track of location of files
• Responds to commands to manipulate files
on the main computer.
• Keeps track of input and output requests for
files
– Processes them in the order received
40
Sharing Printing Resources
• Spooling is the process in a program which
writes a line to a disk file rather than sending
directly to a printer
– When file is completed, it is placed in queue
– File is printed when printer becomes available
• Allows program to complete execution much
more quickly
– Writing to disk is much quicker than writing to
printer
41
Utility Programs
• Perform secondary tasks
• Examples
– File manager
– File compression
– Others
42
File Manager
• Stores files in a
hierarchical directory
structure
• Windows uses Windows
Explorer
43
File Compression
• Reduces amount of space
a file requires
– Makes file take up less
space on disk
– Takes less time to transmit
across communication
lines
44
Other Utility Programs
• Backup and Restore
– Backup: make copies of disks and store in a safe
place
– Restore: restore files from backups
• Disk defragmenter: reorganizes disk so all files
are stored in contiguous locations
• Device driver: handles commands for devices,
such as printers and storage devices
45
Applications Software
• Software used to solve a particular problem or
perform a particular task
46
Acquiring Software:
Traditional Ways
• Custom software
– Written by programmers hired by organization
• Packaged (commercial) software
– Purchased from a store, catalog, or Web site
47
Custom Software
• Specifically tailored to an organization’s
needs
– Organization hires computer programmers to
design, write, test, and implement software
• Can be extremely complex and take years to
write
48
Packaged Software
• Sold in stores, catalogs, or Web sites
– Sometimes downloaded from the Internet
• Package contains one or more CDs or
DVDs holding the software
– Typically contains software documentation
• Designed to be user-friendly
49
User-Friendly Software
• Easy to use
– Software should be sensitive for even a
beginning user
– Software can be used with minimum of training
and documentation
50
Acquiring Software:
New Ways
• Freeware
• Public Domain
• Open-Source software
• Shareware
51
Freeware
• Author provides it free for all to use
– Author keeps copyright
– May place restrictions on its use
– May not be altered or redistributed without
permission
52
Public Domain
• Software that is not copyrighted
– May be used and even altered without
permission
• Typically developed by universities and/or
research institutions using government
grants
53
Open-Source Software
• A variation of freeware
• Source code made available
– Source code: readable by humans
• Other programmers can modify and
redistribute the programs freely
– Helps identify bugs and create improvements
more easily
54
Shareware
• Copyrighted software, freely distributed for
a trial period
• If you like it, register it for a fee
– Most authors add free documentation,
enhancements, support, and updates to
encourage people to register
55
Buying Commercial Software
• 4 ways for buying a commercial software;
–
–
–
–
Individual copies for each computer
Site license
Electronic software distribution
Application Service Provider
56
Site License
• Software installed on some or all computers,
depending on license terms
– Customer keeps track of how many users
• Number of users cannot exceed number of licenses
– Customer copies and distributes software and manuals to
users
• Some organizations use network licenses
– Software installed on server
– License fee based on number of concurrent users
57
Electronic Software Distribution
• Get software from the Internet
– Typically freeware and shareware
– Some commercial software
• Typical scenario:
– Download software for trial period
– Software disables itself after trial period unless
you register (pay)
58
Application Service Provider
• Delivers applications to businesses via the
Internet
– ASP maintains software and data on its systems
• Customers access applications as needed over the
Internet
– Alternative to creating and maintaining custom
software or purchasing packaged software
• “Rent” software, paying based on usage
59
Task-Oriented Software
• Often called productivity software
• Common categories
–
–
–
–
–
–
Word processing/Desktop publishing
Electronic spreadsheets
Database management
Graphics
Communications
Others
60
Working with Words
• Word Processing
– Most widely used personal
computer software
– Create memos, reports, papers
– Incorporate graphics into
documents
• Desktop Publishing
– Used for high-level publishing
needs
• Newsletters
• Brochures, promotional materials
61
Electronic Spreadsheets
• Made up of rows and
columns of numbers
• Perform “what if” analysis
– Change a cell and have
spreadsheet recalculate
• Present data graphically
– Show expenses as a pie
chart
62
Database Management
• Handles the management of
a collection of interrelated
facts
– Software can store, retrieve,
update, and manipulate data
– Can report data in many ways
and print
• Turn large amounts of data
into information
63
Graphics
• Graphics software creates graphs
and charts from numeric data
– Spot trends and compare data more
easily
• Visual evidence more compelling
• Included in spreadsheet programs
• Presentation graphics creates “slide
show” presentations
– Combine high-quality graphics, audio,
and video
64
Communications
• The ability to hook the
computer up to phone
line or cable and
communicate with
another computer
• Typically connected
over the Internet
– Needs a browser to
access other locations on
the Internet
65
Other Task Software
• Personal Information Managers
– Keep track of activities
– Typically include appointment calendar, address book, and
task manager
• Office Suite
– A group of basic applications that work together
• Easy to share data among applications
• Similar look and feel among applications
– Integrated application
• A “stripped down” version of the office suite
66
Business Software
• Vertical Market software
• Software for Workgroups
• Small Business software
67
Vertical Market Software
• Written for a particular type of business
• Written by companies who have a
comprehensive knowledge of that industry
– Allows business to easily maintain information
on the business, customers, vendors
– Encompasses all of the business’s activities
68
Groupware
• Lets a group of people share or
track information together
– Also called collaborative software
– Often combines electronic mail,
networking, scheduling, and
database technology
– Data stored in one central location
• Often used by organizations with
remote employees
69
Software for a Small Business
• Small Office/Home Office (SOHO)
– Moderately priced software to perform
functions aimed at small business
– Examples:
•
•
•
•
•
Accounting software
Writing and advertising
Customer service
Keeping contacts
Making sales pitches
70
Ethics and Application Software
• Piracy: the acquisition and use of illegal
copies of software
• Counterfeiting: copying large numbers of
CD-ROMs or DVD-ROMs and packaging
them to look like the real thing
• Unauthorized copying of software is
stealing
71
Software Piracy
• Examples of piracy
– Copying software from a lab or from a friend
– Buying 2 or 3 copies of software and
distributing it to dozens or hundreds of
employees
– Buying 1 copy of software and installing it on
several computers at home
72
Computers and People
• Most organizations have some sort of
information technology department
– Made up of people who are responsible for the
organization’s computer resources
– Maintain data and provide services to end users
73
Computer People
• Data entry operators prepare data for processing
• Computer operators monitor systems, keep
peripherals running, and make backups
• Librarians catalog processed disks and tapes
• Programmers design, write, test, implement,
and maintain computer programs
74
Computer People
• Systems analysts plan and design entire systems
– Must have knowledge in programming, as well as
knowledge of the business
• Network managers implement and maintain
organization’s network(s)
• Chief Information Officer (CIO) makes key
technology decisions
– A key member of the organization’s strategic decisionmaking team
75
References
• Capron, H. L. (2000). Computers Tools for an Information
Age.(6th ed.). New Jersey, USA: Prentice Hall.
• Shell. (2009). Retrieved 30 December 2009 from
http://en.wikipedia.org/wiki/
Shell_(computing)
• Network Operating Systems. (2009). Retrieved 30 December
2009 from http://en.wikipedia.org/wiki/
Network_operating_system
• http://www2.raritanval.edu/departments/cis/fulltime/Schwarz/CCP/UnderstandingComputers/PowerPoint%20Pr
esentations/UC12_Chapter05.ppt
• http://www.k-state.edu/its/security/training/
roundtables/presentations/SIRT_RoundtableNew%20OSes_USB_drives-Sept09.ppt
76