* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Download 2008 Prentice-Hall, Inc.
Survey
Document related concepts
Transcript
© 2008 Prentice-Hall, Inc. Slide 1 Software Basics: The Ghost in the Machine © 2008 Prentice-Hall, Inc. Slide 2 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. Describe the role of the operating system in a modern computer system. © 2008 Prentice-Hall, Inc. Slide 3 Describe how file systems are organized. Outline the evolution of user interfaces from early machine- language programming to futuristic virtual-reality interfaces. Explain why unauthorized copying of software is against the law. © 2008 Prentice-Hall, Inc. Slide 4 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. © 2008 Prentice-Hall, Inc. Slide 5 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 © 2008 Prentice-Hall, Inc. Slide 6 Food for Thought The hardware in a computer system is equipped to produce whatever output a user requests. © 2008 Prentice-Hall, Inc. Slide 7 A Fast, Stupid Machine Programmers begin with an algorithm: a set of step-by-step instructions written in a natural language, e.g., English. The steps are often ambiguous, error-prone generalities. The steps are translated into the vocabulary of a programming language. © 2008 Prentice-Hall, Inc. Slide 8 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 © 2008 Prentice-Hall, Inc. Slide 9 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. © 2008 Prentice-Hall, Inc. Slide 10 Compatibility It 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.” © 2008 Prentice-Hall, Inc. Slide 11 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 © 2008 Prentice-Hall, Inc. Slide 12 Web applications fall into several categories: Some simple Web applications perform simple data-processing tasks that could also be performed by traditional programs running on stand-alone PCs. Most Web applications take advantage of the Web’s connectivity. Many Web applications leverage the Web’s strength as a huge repository of information. Some Web applications support online business transactions. News-oriented Web applications provide up-to-the-minute reports on a myriad of subjects. Other Web applications support a more traditional form of information broadcasting. © 2008 Prentice-Hall, Inc. Slide 13 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 © 2008 Prentice-Hall, Inc. Slide 14 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 © 2008 Prentice-Hall, Inc. Slide 15 Operating system functions: Supports multitasking Manages virtual memory Maintains file system Responsible for authentication and authorization © 2008 Prentice-Hall, Inc. Slide 16 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 © 2008 Prentice-Hall, Inc. Slide 17 Symantec Norton Utilities is a popular utility package that includes software tools for recovering damaged files, repairing damaged disks, and improving disk performance. © 2008 Prentice-Hall, Inc. Slide 18 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 © 2008 Prentice-Hall, Inc. Slide 19 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. © 2008 Prentice-Hall, Inc. Slide 20 Most of the time the operating system 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. © 2008 Prentice-Hall, Inc. Slide 21 User Interface The interface defines 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 © 2008 Prentice-Hall, Inc. Slide 22 Features include: Command-line interface (commands are typed) Menu-driven interface (commands are chosen from on-screen lists) © 2008 Prentice-Hall, Inc. Slide 23 Graphical User Interfaces (GUI) Mac OS was developed by Macintosh in 1984 using GUI. Microsoft Windows is now the most popular operating system. © 2008 Prentice-Hall, Inc. Slide 24 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. UNIX allows a timesharing computer to communicate with several other computers or terminals at once. © 2008 Prentice-Hall, Inc. Slide 25 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. © 2008 Prentice-Hall, Inc. Slide 26 Hardware and Software Platforms Windows Vista Windows Server 2003 Mac OS X (10) Windows XP Mac OS 9 Windows ME Linux, Sun Solaris, and other UNIX variations Microsoft Windows CE © 2008 Prentice-Hall, Inc. Slide 27 Cross-platform applications, such as Microsoft Office and Adobe Photoshop, are 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 © 2008 Prentice-Hall, Inc. Slide 28 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 © 2008 Prentice-Hall, Inc. Slide 29 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) © 2008 Prentice-Hall, Inc. Slide 30 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 © 2008 Prentice-Hall, Inc. Slide 31 Software Piracy—illegal duplication of copyrighted software The software industry is a $50 billion a year business sector. Billions of dollars are lost each year 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 the outdated and inconsistent intellectual property laws to be changed and adapted. © 2008 Prentice-Hall, Inc. Slide 32 The WIMP (windows, icons, menus, and pointing devices) interface is easier to learn and use than earlier character-based interfaces. The SILK interface incorporates many important emerging user interface software technologies: Speech and language Image Knowledge Our goal was bug-free. The new goal is resiliency. —Bob Frankston, in Beyond Calculation © 2008 Prentice-Hall, Inc. Slide 33 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 System software, which coordinates hardware operations and does behind the scenes work the user seldom sees. © 2008 Prentice-Hall, Inc. Slide 34 Popular operating systems include Windows, Mac OS X, UNIX, and Linux. The user interface is a critical communication component in operating systems, applications, programming languages, and utilities. Tomorrow’s interfaces are likely to rely on threedimensional graphics and animation to create virtual realities. Software piracy is a major concern in the computer industry. © 2008 Prentice-Hall, Inc. Slide 35 Slide 36