csci-100 introduction to computing software. gross anatomy hardware equipment associated with the...

49
CSCI-100 CSCI-100 Introduction to Introduction to Computing Computing Software Software

Upload: ralf-thomas

Post on 02-Jan-2016

215 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: CSCI-100 Introduction to Computing Software. Gross Anatomy  Hardware Equipment associated with the computer Equipment associated with the computer Input

CSCI-100CSCI-100Introduction to ComputingIntroduction to Computing

SoftwareSoftware

Page 2: CSCI-100 Introduction to Computing Software. Gross Anatomy  Hardware Equipment associated with the computer Equipment associated with the computer Input

Gross AnatomyGross Anatomy

HardwareHardware Equipment associated with the computerEquipment associated with the computer

• Input devices, processor, output devices, storageInput devices, processor, output devices, storage

SoftwareSoftware Instructions that tell the hardware what to doInstructions that tell the hardware what to do Two categories of software:Two categories of software:

• System softwareSystem software• Application softwareApplication software

Page 3: CSCI-100 Introduction to Computing Software. Gross Anatomy  Hardware Equipment associated with the computer Equipment associated with the computer Input

© Prentice-Hall, Inc

System SoftwareSystem Software

System softwareSystem software includes all of the programs includes all of the programs needed to keep a computer and its peripheral needed to keep a computer and its peripheral devices running smoothlydevices running smoothly

Two major categories of system software are:Two major categories of system software are: Operating systems Operating systems System utilitiesSystem utilities

Page 4: CSCI-100 Introduction to Computing Software. Gross Anatomy  Hardware Equipment associated with the computer Equipment associated with the computer Input

© Prentice-Hall, Inc

The Operating SystemThe Operating System

The The operating system (OS) is a set of programs (OS) is a set of programs that perform certain basic functions with a that perform certain basic functions with a specific type of hardwarespecific type of hardware

The functions of the OS are:The functions of the OS are: Starting the computerStarting the computer Managing programsManaging programs Managing memoryManaging memory Handling messages from input and output devicesHandling messages from input and output devices Enabling user interaction with the computerEnabling user interaction with the computer

Page 5: CSCI-100 Introduction to Computing Software. Gross Anatomy  Hardware Equipment associated with the computer Equipment associated with the computer Input

© Prentice-Hall, Inc

The Operating SystemThe Operating System

OS stays behind the scenesOS stays behind the scenes All software depends on the OSAll software depends on the OS

OperatingOperatingSystemSystem

GUI

Page 6: CSCI-100 Introduction to Computing Software. Gross Anatomy  Hardware Equipment associated with the computer Equipment associated with the computer Input

© Prentice-Hall, Inc

Operating Systems for Large Operating Systems for Large ComputersComputers

Resource allocationResource allocation Assigning computer resources to certain Assigning computer resources to certain

programs and processes for their useprograms and processes for their use

Main issues related to resource allocationMain issues related to resource allocation Sharing the Central Processing Unit (CPU)Sharing the Central Processing Unit (CPU) Sharing memorySharing memory Sharing storage resourcesSharing storage resources Sharing printing resourcesSharing printing resources

Page 7: CSCI-100 Introduction to Computing Software. Gross Anatomy  Hardware Equipment associated with the computer Equipment associated with the computer Input

© Prentice-Hall, Inc

MultiprocessingMultiprocessing

The use of a powerful computer with The use of a powerful computer with multiple CPUsmultiple CPUs

Multiple programs run simultaneouslyMultiple programs run simultaneously Each runs on its own processorEach runs on its own processor

Page 8: CSCI-100 Introduction to Computing Software. Gross Anatomy  Hardware Equipment associated with the computer Equipment associated with the computer Input

© Prentice-Hall, Inc

MultiprogrammingMultiprogramming

Two or more programs executed Two or more programs executed concurrentlyconcurrently Programs take turns using the CPUPrograms take turns using the CPU Event-drivenEvent-driven

• AnAn interrupt interrupt suspends processing to allow another suspends processing to allow another program to runprogram to run

• After the second program runs, the OS returns the After the second program runs, the OS returns the CPU to another programCPU to another program

Page 9: CSCI-100 Introduction to Computing Software. Gross Anatomy  Hardware Equipment associated with the computer Equipment associated with the computer Input

© Prentice-Hall, Inc

Time-SharingTime-Sharing

Programs take turns using the CPUPrograms take turns using the CPU Time-drivenTime-driven

Each user is given a slice of time (fraction of a second)Each user is given a slice of time (fraction of a second) CPU works only on that user’s tasks during his/her time CPU works only on that user’s tasks during his/her time

sliceslice

Typically used in applications with many usersTypically used in applications with many users

Page 10: CSCI-100 Introduction to Computing Software. Gross Anatomy  Hardware Equipment associated with the computer Equipment associated with the computer Input

© Prentice-Hall, Inc

Starting the ComputerStarting the Computer

BootingBooting – The process of loading or – The process of loading or reloading the OS into the computer’s reloading the OS into the computer’s memorymemory

Page 11: CSCI-100 Introduction to Computing Software. Gross Anatomy  Hardware Equipment associated with the computer Equipment associated with the computer Input

© Prentice-Hall, Inc

Starting the ComputerStarting the Computer

The computer copies the The computer copies the kernelkernel from the from the hard drive into the computer’s memoryhard drive into the computer’s memory The kernelThe kernel

• Is the central part of the OSIs the central part of the OS• Starts all applicationsStarts all applications• Manages devices and memoryManages devices and memory• Resides in memory at all timesResides in memory at all times• Performs other essential functionsPerforms other essential functions

Page 12: CSCI-100 Introduction to Computing Software. Gross Anatomy  Hardware Equipment associated with the computer Equipment associated with the computer Input

© Prentice-Hall, Inc

Managing ProgramsManaging Programs Single-taskingSingle-tasking systems run one application systems run one application

program at a timeprogram at a time

MultitaskingMultitasking OSs have the ability to run more OSs have the ability to run more than one application program at a timethan one application program at a time

Multitasking is accomplished byMultitasking is accomplished by

A A foregroundforeground application application

• The active program or program in useThe active program or program in use

One or more One or more backgroundbackground applications applications

• Inactive program(s) or program(s) not in useInactive program(s) or program(s) not in use

Page 13: CSCI-100 Introduction to Computing Software. Gross Anatomy  Hardware Equipment associated with the computer Equipment associated with the computer Input

© Prentice-Hall, Inc

Example of MultitaskingExample of Multitasking

Background Background applicationapplication

Foreground Foreground applicationapplication

Page 14: CSCI-100 Introduction to Computing Software. Gross Anatomy  Hardware Equipment associated with the computer Equipment associated with the computer Input

Storage StructureStorage Structure Programs must be in main memory (RAM) to executePrograms must be in main memory (RAM) to execute Von-NeumannVon-Neumann architecture architecture

Load instruction from memory into Load instruction from memory into instruction register (IR)instruction register (IR) Operands fetched from memory to internal registersOperands fetched from memory to internal registers

START

Fetch next instruction fromMemory to IR

Increment Program Counter

Decode and ExecuteInstruction in IR

STOP ?NO YES

Page 15: CSCI-100 Introduction to Computing Software. Gross Anatomy  Hardware Equipment associated with the computer Equipment associated with the computer Input

© Prentice-Hall, Inc

Storage StructureStorage Structure Ideally, we want programs and data to reside in main Ideally, we want programs and data to reside in main

memory permanentlymemory permanently Main memory is usually too smallMain memory is usually too small Main memory is Main memory is volatilevolatile – loses contents on power loss – loses contents on power loss

Secondary storageSecondary storage holds large quantities of data, holds large quantities of data, permanentlypermanently Magnetic disk is the most common secondary-storage Magnetic disk is the most common secondary-storage

devicedevice

Actually, a Actually, a hierarchy of storagehierarchy of storage varying by varying by speedspeed, , costcost, , sizesize and and volatilityvolatility

Page 16: CSCI-100 Introduction to Computing Software. Gross Anatomy  Hardware Equipment associated with the computer Equipment associated with the computer Input

Storage-Device HierarchyStorage-Device HierarchyFAST AND EXPENSIVE

SLOW AND CHEAP

Page 17: CSCI-100 Introduction to Computing Software. Gross Anatomy  Hardware Equipment associated with the computer Equipment associated with the computer Input

© Prentice-Hall, Inc

Managing MemoryManaging Memory

The operating system allocates memory The operating system allocates memory areas for each running program; it keeps areas for each running program; it keeps programs from interfering with each otherprograms from interfering with each other

The operating system uses The operating system uses virtual memoryvirtual memory as an extension of random access as an extension of random access memory (RAM)memory (RAM)

Page 18: CSCI-100 Introduction to Computing Software. Gross Anatomy  Hardware Equipment associated with the computer Equipment associated with the computer Input

© Prentice-Hall, Inc

ManagingManaging Virtual MemoryVirtual Memory

least recentlyused data or

program instructions

dataswapped

out

swap file

Virtual memorymanagement

hard diskdata

swapped in

most recentlytransferred data or

program instructions

memory

Page 19: CSCI-100 Introduction to Computing Software. Gross Anatomy  Hardware Equipment associated with the computer Equipment associated with the computer Input

© Prentice-Hall, Inc

Cache: AnalogyCache: Analogy You are going to do some research on a particular You are going to do some research on a particular

topic. Thus, you go to the library and look for the a topic. Thus, you go to the library and look for the a shelve that contains books on that particular topicshelve that contains books on that particular topic

You pick up a book from the shelve, find a chair, seat You pick up a book from the shelve, find a chair, seat and start readingand start reading

Page 20: CSCI-100 Introduction to Computing Software. Gross Anatomy  Hardware Equipment associated with the computer Equipment associated with the computer Input

© Prentice-Hall, Inc

Cache: AnalogyCache: Analogy You find a reference to another book on the same topic You find a reference to another book on the same topic

that you are also interested in reading. Thus, you stand that you are also interested in reading. Thus, you stand up, go to the same shelve, leave the first book and pick up, go to the same shelve, leave the first book and pick up the other bookup the other book

Then, you go back to the chair and start reading the Then, you go back to the chair and start reading the second booksecond book

Later on you realize that you want to read the first book Later on you realize that you want to read the first book once again (or another related book). Thus, you repeat once again (or another related book). Thus, you repeat the same process (i.e., go to the shelve to find it)the same process (i.e., go to the shelve to find it)

Page 21: CSCI-100 Introduction to Computing Software. Gross Anatomy  Hardware Equipment associated with the computer Equipment associated with the computer Input

© Prentice-Hall, Inc

Cache: AnalogyCache: Analogy Suppose that instead of taking just one book from the shelve, Suppose that instead of taking just one book from the shelve,

you take 10 books on the same topic. Then, you find a table you take 10 books on the same topic. Then, you find a table with a chair, put the 10 books on the table, sit there and start with a chair, put the 10 books on the table, sit there and start reading one of the booksreading one of the books

If you need another related book, there is a good chance that it If you need another related book, there is a good chance that it is on your table so you don’t have to go to the shelve to get it. is on your table so you don’t have to go to the shelve to get it. Also, you can leave the first book on the table and there is a Also, you can leave the first book on the table and there is a good chance that you will be needing it again latergood chance that you will be needing it again later

Page 22: CSCI-100 Introduction to Computing Software. Gross Anatomy  Hardware Equipment associated with the computer Equipment associated with the computer Input

© Prentice-Hall, Inc

Handling Input and OutputHandling Input and Output Input and output devices generate Input and output devices generate

interruptsinterrupts, or signals, that tell the operating , or signals, that tell the operating system that something has happenedsystem that something has happened

The OS provides The OS provides interrupt handlersinterrupt handlers or mini- or mini-programs that begin when an interrupt programs that begin when an interrupt occursoccurs

Page 23: CSCI-100 Introduction to Computing Software. Gross Anatomy  Hardware Equipment associated with the computer Equipment associated with the computer Input

© Prentice-Hall, Inc

Providing the User InterfaceProviding the User Interface

The The user interfaceuser interface is that part of the OS is that part of the OS with which the user interacts with a with which the user interacts with a computercomputer

Page 24: CSCI-100 Introduction to Computing Software. Gross Anatomy  Hardware Equipment associated with the computer Equipment associated with the computer Input

© Prentice-Hall, Inc

Types of User InterfacesTypes of User Interfaces Graphical user interface (GUI)Graphical user interface (GUI)

Uses graphics to create a desktop environmentUses graphics to create a desktop environment Icons (small pictures) represent computer resourcesIcons (small pictures) represent computer resources Programs run within on-screen windowsPrograms run within on-screen windows

Menu-drivenMenu-driven Text-based menus are used to show all of the Text-based menus are used to show all of the

options available to the useroptions available to the user

Command-lineCommand-line The user is required to type keywords or commands The user is required to type keywords or commands

in order to enter data or give instructionsin order to enter data or give instructions

Page 25: CSCI-100 Introduction to Computing Software. Gross Anatomy  Hardware Equipment associated with the computer Equipment associated with the computer Input

© Prentice-Hall, Inc

Graphical User Interface (GUI)Graphical User Interface (GUI)

Page 26: CSCI-100 Introduction to Computing Software. Gross Anatomy  Hardware Equipment associated with the computer Equipment associated with the computer Input

© Prentice-Hall, Inc

Menu-driven User InterfaceMenu-driven User Interface

Page 27: CSCI-100 Introduction to Computing Software. Gross Anatomy  Hardware Equipment associated with the computer Equipment associated with the computer Input

© Prentice-Hall, Inc

Command-Line InterfaceCommand-Line Interface

Page 28: CSCI-100 Introduction to Computing Software. Gross Anatomy  Hardware Equipment associated with the computer Equipment associated with the computer Input

© Prentice-Hall, Inc

MS-DOS

WINDOWS XP MAC OS

LINUXUNIX

Popular Operating SystemsPopular Operating Systems

Page 29: CSCI-100 Introduction to Computing Software. Gross Anatomy  Hardware Equipment associated with the computer Equipment associated with the computer Input

© Prentice-Hall, Inc

Microsoft WindowsMicrosoft WindowsClick to view each Windows version (1985-2001)Click to view each Windows version (1985-2001)

Windows 1.0 (1985)Windows 2.0 (1987)Windows 3.x (1990-1992)Windows NT (1993)Windows 95 (1995)Windows 98 (1998)Windows 2000 (2000)Windows ME (2000)Windows XP (2001)

Page 30: CSCI-100 Introduction to Computing Software. Gross Anatomy  Hardware Equipment associated with the computer Equipment associated with the computer Input

© Prentice-Hall, Inc

MAC OSMAC OS Created in 1984 Created in 1984

First OS to use First OS to use graphical user graphical user interfaceinterface

Easiest operating Easiest operating system for system for beginnersbeginners

A new version, A new version, Mac OS X, was Mac OS X, was released in 2000released in 2000

Page 31: CSCI-100 Introduction to Computing Software. Gross Anatomy  Hardware Equipment associated with the computer Equipment associated with the computer Input

© Prentice-Hall, Inc

MS-DOSMS-DOS

Developed for IBM PCs in Developed for IBM PCs in 19811981

Uses command-line Uses command-line interfaceinterface

Use is diminishingUse is diminishing

Page 32: CSCI-100 Introduction to Computing Software. Gross Anatomy  Hardware Equipment associated with the computer Equipment associated with the computer Input

© Prentice-Hall, Inc

UNIXUNIX

Developed by AT&T Developed by AT&T in 1970sin 1970s

Developed concepts Developed concepts of file management of file management and path namesand path names

Widely used by Widely used by corporationscorporations

Page 33: CSCI-100 Introduction to Computing Software. Gross Anatomy  Hardware Equipment associated with the computer Equipment associated with the computer Input

© Prentice-Hall, Inc

LinuxLinux Developed in Developed in 1991 by UNIX1991 by UNIX

Open-source Open-source codecode – –Available Available for all to see and for all to see and useuse

More stable than More stable than WindowsWindows

Powerful and freePowerful and free

Growing Growing acceptanceacceptance

Page 34: CSCI-100 Introduction to Computing Software. Gross Anatomy  Hardware Equipment associated with the computer Equipment associated with the computer Input

Applications SoftwareApplications Software

Word ProcessingWord Processing Software for creating standard text Software for creating standard text

documents, such as reports, books, etc.documents, such as reports, books, etc. examples are Microsoft Word, WordPerfect, examples are Microsoft Word, WordPerfect,

and Write. and Write.

Page 35: CSCI-100 Introduction to Computing Software. Gross Anatomy  Hardware Equipment associated with the computer Equipment associated with the computer Input

Applications SoftwareApplications Software

Word processors are distinguished from Word processors are distinguished from the simpler text editors, by the simpler text editors, by the inclusion of more advanced features the inclusion of more advanced features

(word wrap, headers & footers, etc.), and (word wrap, headers & footers, etc.), and more complex proprietary data formats. Text more complex proprietary data formats. Text

editors have limited functionally.editors have limited functionally.

Page 36: CSCI-100 Introduction to Computing Software. Gross Anatomy  Hardware Equipment associated with the computer Equipment associated with the computer Input

Application SoftwareApplication Software

Desktop publishing software:Desktop publishing software: more sophisticated programs for creating more sophisticated programs for creating

large documents (e.g. books), or documents large documents (e.g. books), or documents with a lot of graphic (newsletters, brochures, with a lot of graphic (newsletters, brochures, etc.) etc.)

examples are Pagemaker and Ventura. examples are Pagemaker and Ventura.

Page 37: CSCI-100 Introduction to Computing Software. Gross Anatomy  Hardware Equipment associated with the computer Equipment associated with the computer Input

Application SoftwareApplication Software

Spreadsheets Spreadsheets Software for working with numeric data, Software for working with numeric data,

calculations and graphing/charting. calculations and graphing/charting. examples: examples:

• Microsoft Excel;Microsoft Excel;• Lotus 1-2-3, and Lotus 1-2-3, and • Quattro Pro. Quattro Pro.

Page 38: CSCI-100 Introduction to Computing Software. Gross Anatomy  Hardware Equipment associated with the computer Equipment associated with the computer Input

Application SoftwareApplication Software

Databases Databases allows the creation of highly structured allows the creation of highly structured

containers for storing information about containers for storing information about things. things.

examples: Microsoft Access, Paradox, and examples: Microsoft Access, Paradox, and Oracle. Oracle.

examples of types of database systems would examples of types of database systems would be inventory systems, or bank accounts. be inventory systems, or bank accounts.

Page 39: CSCI-100 Introduction to Computing Software. Gross Anatomy  Hardware Equipment associated with the computer Equipment associated with the computer Input

Application SoftwareApplication Software

Databases describe Databases describe the characteristics of things (e.g. name, the characteristics of things (e.g. name,

address and phone number for a mailing list), address and phone number for a mailing list), and and

allow the user to input values for storage, and allow the user to input values for storage, and retrieve them at a later date.retrieve them at a later date.

Page 40: CSCI-100 Introduction to Computing Software. Gross Anatomy  Hardware Equipment associated with the computer Equipment associated with the computer Input

Application SoftwareApplication Software

Communications Communications allows one computer to communicate with allows one computer to communicate with

another. another. Examples are Procomm and Kermit.Examples are Procomm and Kermit.

Communications software often uses a Communications software often uses a modem to provide the communications link modem to provide the communications link with another computer system.with another computer system.

Page 41: CSCI-100 Introduction to Computing Software. Gross Anatomy  Hardware Equipment associated with the computer Equipment associated with the computer Input

Application SoftwareApplication Software

Graphics Graphics allows the user to create or edit images, such allows the user to create or edit images, such

as as • line art;line art;• photographs, or photographs, or • drawings. drawings.

examples are Corel Draw, Morph and Adobe examples are Corel Draw, Morph and Adobe Photoshop.Photoshop.

Page 42: CSCI-100 Introduction to Computing Software. Gross Anatomy  Hardware Equipment associated with the computer Equipment associated with the computer Input

Application SoftwareApplication Software

Presentation/MultimediaPresentation/Multimedia allows the user to combine various data allows the user to combine various data

formats (text, images, audio, video) to create formats (text, images, audio, video) to create products like business presentations, products like business presentations, educational programs, games, etc. educational programs, games, etc.

examples are Microsoft Powerpoint and examples are Microsoft Powerpoint and Macromedia Director. Macromedia Director.

Page 43: CSCI-100 Introduction to Computing Software. Gross Anatomy  Hardware Equipment associated with the computer Equipment associated with the computer Input

Application SoftwareApplication Software

Programming Programming used to create other software programs. used to create other software programs. examples are QBasic and Borland C++.examples are QBasic and Borland C++.

Why do we have programming Why do we have programming software???software???

Page 44: CSCI-100 Introduction to Computing Software. Gross Anatomy  Hardware Equipment associated with the computer Equipment associated with the computer Input

Application SoftwareApplication Software

Utilities Utilities performs a variety of functions for maintaining performs a variety of functions for maintaining

and administering other software programs, and administering other software programs, data files, and hardware. data files, and hardware.

examples are PCtools and Norton Utilities. examples are PCtools and Norton Utilities.

Page 45: CSCI-100 Introduction to Computing Software. Gross Anatomy  Hardware Equipment associated with the computer Equipment associated with the computer Input

Application SoftwareApplication Software

Games & Edutainment - Games are, well, Games & Edutainment - Games are, well, games. games.

Edutainment software Edutainment software a new term used to describe software that a new term used to describe software that

uses a game-like environment to teach about uses a game-like environment to teach about specific topics. specific topics.

Page 46: CSCI-100 Introduction to Computing Software. Gross Anatomy  Hardware Equipment associated with the computer Equipment associated with the computer Input

Application SoftwareApplication Software

Viruses Viruses special software programs that can "infect" special software programs that can "infect"

other software, and other software, and cause it to malfunction, or cause it to malfunction, or do things its' creators did not intend to do. do things its' creators did not intend to do. viruses can be very damaging, and viruses can be very damaging, and anti-virus software protects computer systems anti-virus software protects computer systems

from becoming infected. from becoming infected.

Page 47: CSCI-100 Introduction to Computing Software. Gross Anatomy  Hardware Equipment associated with the computer Equipment associated with the computer Input

Application SoftwareApplication Software

Industrial - Specialized software Industrial - Specialized software programs used to control machines or devices programs used to control machines or devices

such as:such as:• photocopiers;photocopiers;• robotics;robotics;• cars;cars;• space shuttles;space shuttles;• etc.etc.

Page 48: CSCI-100 Introduction to Computing Software. Gross Anatomy  Hardware Equipment associated with the computer Equipment associated with the computer Input

Application SoftwareApplication Software

Consumer - Specialized software Consumer - Specialized software programs used in commercial/personal programs used in commercial/personal

devices such as microwaves and other devices such as microwaves and other household appliances. household appliances.

some modern homes are being designed with some modern homes are being designed with built-in computer systems that can be used to built-in computer systems that can be used to control heat, lights, etc.control heat, lights, etc.

Page 49: CSCI-100 Introduction to Computing Software. Gross Anatomy  Hardware Equipment associated with the computer Equipment associated with the computer Input

SummarySummary

Software conceptSoftware concept Types of softwareTypes of software Operating systemOperating system Application softwareApplication software