Presentation is loading. Please wait.

Presentation is loading. Please wait.

Software What is a computer program?. Software What is a computer program? Set of detailed step-by-step instructions that tells a computer how to carry.

Similar presentations


Presentation on theme: "Software What is a computer program?. Software What is a computer program? Set of detailed step-by-step instructions that tells a computer how to carry."— Presentation transcript:

1 Software What is a computer program?

2 Software What is a computer program? Set of detailed step-by-step instructions that tells a computer how to carry out a task or solve a problem 10 print “hello world” 20 goto 10

3 Software What is a computer program? Instructions are written in a computer programming language Examples?

4 Software What is a computer program? Instructions are written in a computer programming language Examples? Machine language, microcode, assembly language BASIC, COBOL, FORTRAN, Pascal, C, C++, Java, Ada Javascript, Visual Basic Script, Perl

5 Software What is(are) computer data?

6 Software What is(are) computer data? Information stored in the computer Collections of symbols (letters, numbers, etc) stored as a series of bits What are some data examples?

7 Software What is(are) computer data? Information stored in the computer Collections of symbols (letters, numbers, etc) stored as a series of bits What are some data examples? Documents, spreadsheets, sounds, images, video

8 Software What is software?

9 Software What is software? Programs and their associated data

10 Software Types System software Helps computer to carry out basic operating tasks Tasks strictly involves the computer Application software Helps user carry out a task Task could be done without the computer Examples types in each?

11 Software Types System software Operating system, device drivers, utilities, programming compilers and interpreters Application software Word processing, spreadsheets, business, education, presentation, entertainment

12 Software Copyright What is a copyright?

13 Software Copyright What is a copyright? Legal protection granting certain exclusive rights to the owner of the copyright Protects from copy, distribution, modification Owning software does not mean that you own its copyright! What is pirated software?

14 Software Copyright What is a copyright? Legal protection granting certain exclusive rights to the owner of the copyright Protects from copy, distribution, modification Owning software does not mean that you own its copyright! What is pirated software? Software that has been copied, distributed or modified illegally (against copyright laws)

15 Software Copyright What are the conditions of the software copyright?

16 Software Copyright What are the conditions of the software copyright? Only the copyright owner can reproduce, sell, or distribute the software Software can be copied to the computer hard disk for the purpose of installation If software is passed to another owner, a copy cannot be kept by the original owner Cannot distribute modified copies

17 Software Copyright What are the conditions of the software copyright? However…

18 Software Copyright What are the conditions of the software copyright? However… it IS legal to make a backup copy for archival purposes! Often creates a very thin line… http://www.gamecopyworld.com

19 Software Licenses What is a software license?

20 Software Licenses What is a software license? Legal contract that defines how a computer program may be used Special restrictions or extension of copyright by software author

21 Software License Types Single-user, multiple-user Concurrent user Max number of copies used simultaneously Site license Copy for all users at a particular site Shareware: “Try before you buy” Freeware, Public Domain Warez: illegally copied software

22 System Software Software essential to the fundamental operations of the computer Controls execution of application software Interpreting user commands Operation of peripherals Memory and disk access File management Screen display And many more…

23 System Software Operating Systems OS utilities OS device drivers Programming tools

24 Operating System Controls use of hardware resources Controls interaction between application software and hardware Handles interaction between user and application Executes applications Handles multi-user and multi-tasking

25 Operating System Controls basic input and output Data flow between I/O devices Allocates system resources Memory, disk, I/O devices, program exec File management Detects equipment failures Security

26 Operating System External Services Help users… start programs, manage stored data, maintain security (logins, file protection) Provides an interface to these services: Command-line, menus, graphics user interface (GUI)

27 Operating System Internal Services Not directly user-controlled. Manages: I/O System resources Storage space for programs and data Handles multi-user and multi-tasking Detects equipment failure

28 Operating System Example OS’s?

29 Operating System Example OS’s? Microsoft Windows 3.1, for workgroups, NT, 95, 98, ME, 2000, XP Mac OS: OS X DOS OS/2 UNIX, Linux BeOS

30 Operating System: Utilities Disk formatting Compression File encryption Anti-virus Networking

31 Operating System: Device Drivers Tells computer how to use a device Graphics card, sound card, printer, scanner,… Interface between OS and hardware devices

32 Operating System OS can do so much, but what should not be included as a part of the OS? Why?

33 Operating System OS can do so much, but what should not be included as a part of the OS? Why? High-level applications; limits flexibility But, what about a web browser?

34 Operating System Internet Explorer and Windows 98! Big source of debate Long running court case Windows 98 “monopoly” Microsoft claims that browser is an essential part of their OS Microsoft was declared a monopoly, what next?

35 Programming Tools: compilers and interpreters Programs are written in a programming language that is translated or interpreted into a machine language Compilers translate a program written in one language to a lower-level language. Translation done before execution Usually lower-level language is machine or microcode Interpreters convert each instruction of a program during execution into a lower-level instruction

36 Programming Tools: compilers and interpreters Low-level: machine language, microcode, assembly language High-level: BASIC, COBOL, FORTRAN, Pascal, C, C++, Java, Ada, Lisp, ML “Higher-level” scripting languages: Javascript, VBS (Melissa and ILoveYou), Perl What about HTML, Flash and Shockwave, Excel?

37 Programming Tools: compilers and interpreters HTML, Flash and Shockwave, Excel all give the “programmer” the flexibility to create small applications with a simple user interface, but… much more constrained by the application that runs them they are interpreted by a “viewer” program: browser, Excel their instructions are not actually transformed directly into a lower level language before execution. these “languages” fall into the category of scripting languages Instructions tell an application what to tell a machine to do Often the distinction between scripting and programming can be blurred

38 Programming Tools: development environments The software that a programmer uses to develop programs is a development environment. Typical steps in programming: Write program as a text file in high-level language Compile text file into lower-level language Repeat compilation until program is compiled into a machine language Instruct the OS to execute the machine language Quick demonstration in C on a UNIX machine…

39 Programming Tools: development environments The development process for interpreted languages is slightly different: Write program in high-level interpreted language as a text file Run the interpreter application that will “execute” your program directly from the text file Each instruction is then converted on-the-fly into a lower-level instruction Most often, the lower-level instruction goes straight to machine execution (perhaps through more interpretation)

40 Programming Tools: development environments These steps can usually be performed in a single programming environment called an IDE: Integrated Development Environment Examples: MS Visual Studio, MS Visual Basic, MS Java IDE, …

41 Programming Tools We will be learning how to create web pages directly from HTML (hypertext markup lang) Write web pages as a text file and load into browser We will also learn how to augment HTML with the interpreted JavaScript language DHTML: Dynamic HTML I will be gathering documents for reading very soon.

42 Application Software Name some types?

43 Application Software Name some types? Document production: Word-processing, desktop publishing, web page authoring Graphics Photo editing, Painting & drawing, CAD, animation, video Presentation Numerical Analysis: Spreadsheets, graphing, statistical Databases

44 Application Software Name some types? Reference: Dictionary, encyclopedia, maps Connectivity or communications: Web browser, email, remote control, home networking Education and training Business: accounting and finance Games! Office suites: Word-processing, spreadsheet, presentation, and database software all carefully integrated

45 Application Software Give some particular examples:

46 Application Software Give some particular examples? Document production: MS Word, WordPerfect, Claris Works, FrontPage, … Graphics PhotoShop, CorelDraw, AutoCAD, RayDream, Adobe Premiere Presentation MS PowerPoint Numerical Analysis: MS Excel, Lotus 1-2-3, SPSS, … Databases MS Access, Lotus Approach, Oracle

47 Application Software Give some particular examples? Reference: MS Encarta, MS Streets, StreetFinder, Webster Online,… Connectivity or communications: MS Internet Explorer, Netscape Communicator, Opera, AOL, … Education and training Business: accounting and finance Games! Office suites: MS Office, MS Works, Claris Works, StarOffice, …

48 Multimedia What is multimedia?

49 Multimedia What is multimedia? Integrated use of multiple media types What are some common media types?

50 Multimedia What is hypertext and hypermedia?

51 Multimedia What is hypertext and hypermedia? Hypertext: text that links to another document or other media Hypermedia: Idea that other documents and multimedia could be linked from text inside a document Overall, idea that documents could be linked to each other (not just in order) Ted Nelson, 1965


Download ppt "Software What is a computer program?. Software What is a computer program? Set of detailed step-by-step instructions that tells a computer how to carry."

Similar presentations


Ads by Google