Software introduction

39
SOFTWARE

Transcript of Software introduction

SOFTWARE

• Computer software is a set of instructions that tell hardware what to do.

• They are also called programs.• It is needed to control activities of hardware. It is in-

tangible; we cannot touch or see it. • There are two types of software. Application SoftwareSystem Software

Software

Application Software• It is software that has been developed to solve a

particular problem (s) of user• to perform useful work on specific tasks or to provide

entertainment. • It is for the benefit of user. • It helps user to work faster, more efficiently and gives

more productivity than manual work. • There are two categories of application softwareGeneral purpose or generalized and Special purpose or specialized or Bespoke

General-purpose application software

• It is designed and developed for sale to the general public and performs general tasks. Examples are word processors, spreadsheet programs, computer games, etc.

• It is mostly used by small business and home users of microcomputer.

• But they can do only predefined works. • They are not build on users order but are made for general

needs of users.

Special purpose application software

• It is designed and developed for the needs and requirements of particular customer.

• They are made on order for particular user and may not be useful for other company or user.

• Charges of software development, modifications and addition in it vary depending on its difficulty and size.

Example of Application Software

• Word Processors• Spreadsheets• Database Management software• Graphics, Multimedia and Presentation applications• Entertainment, Games and Education software• Utilities• Communication software

System SoftwareSystem software are consists of programs that controls

the overall operations of system.• System software controls the usage and allocation of

hardware resources and enables the application software to run.

• It is responsible for running computer system smoothly.

• System software consists of several programs; the most important is operating system.

• Other examples of system software are language translators, utilities, anti-viruses etc.

Types of system software

• There are many types of system software. Most common are as follows.

• Operating System• Language Translators (also related to language, Debuggers, Testing

programs, Program generators, linkers)• Editors• System Utilities• Destructive programs (Viruses), Anti viruses, Guards or Shields• Drivers

Operating System

• Operating system is a master control program that provides an interface for a user to communicating with computer.

• Manages hardware devices, manages and maintains disk file system and supports other application and system programs.

• It is used to manage computer resources efficiently. • It controls the inputs, outputs, interrupts, and storage

of files as requested by the applications software.• E.g DOS, Unix, Linux, Windows, Sun Solaris etc.

Operating Systems• Microsoft Windows is the most popular

– Installed more than other OS combined– Installed on about 95% of computers– Apple and Linux represent the other 5%

PC Operating Systems• DOS

– Disk Operating System– Single user single-tasking OS– Command line interface– 16-bit OS– Powerful– Fast– Supports legacy applications

7B-13

DOS Application

7B-14

PC Operating Systems• Windows NT

– Designed for a powerful system– 32-bit OS– Very stable– Windows NT Workstation

• Single user multi tasking OS– Windows NT Server

• Multi user multi tasking OS• Network operating system

7B-15

PC Operating Systems• Windows XP

– Microsoft’s newest desktop product– Different look from 2000– Many different versions– Digital multimedia support was enhanced– Communications was enhanced– Mobile computing became a priority

7B-16

PC Operating Systems• UNIX

– Runs on all computer types– 32- or 64-bit– Very stable and fast– Command-line interface– Can cost thousands of dollars

7B-17

PC Operating Systems• Linux

– Free or inexpensive version of UNIX– 32-bit OS– Very stable and fast– Most flavors are open source– X Windows GUI

• Command line interface is available

7B-18

Linux Desktop

7B-19

PC Operating Systems• Macintosh operating systems

– OS X– Based on FreeBSD Linux– Very stable and easy to configure– Only runs on Mac hardware

7B-20

Embedded Operating Systems• Palm OS

– Standard on Palm PDA– First PDA OS for consumers– Can be found on cell phones

7B-21

Embedded Operating Systems• Pocket PC

– Developed to compete with Palm– Not customizable – Interacts securely with business networks– Can control PCs through PC

7B-22

Embedded Operating Systems• Symbian

– Found in smart cell phones– Games, Instant Messaging, Internet– Full color display

Functions of Operating Systems

• Provide a user interface• Run programs• Manage hardware devices• Organized file storage

Graphical User Interface

Providing a User Interface

• Command line interfaces– Older interface

• DOS, Linux, UNIX– User types commands at a prompt– User must remember all commands– Included in all GUIs

Command Line Interface

Types of Operating Systems• Real-time operating system

– Very fast small OS– Built into a device– Respond quickly to user input– MP3 players, Medical devices

Types of Operating Systems• Single user/Single tasking OS

– One user works on the system– Performs one task at a time– MS-DOS and Palm OS– Take up little space on disk– Run on inexpensive computers

Types of Operating Systems• Single user/Multitasking OS

– User performs many tasks at once– Most common form of OS– Windows XP and OS X– Require expensive computers– Tend to be complex

Types of Operating Systems• Multi user/Multitasking OS

– Many users connect to one computer– Each user has a unique session– UNIX, Linux, and VMS– Maintenance can be easy– Requires a powerful computer

Multi user/Multi tasking OS

Language Translators

• Translators are the programs that convert programs written in computer languages (Assembly, high level and other) to machine language so they can be executed by computers.

• There three types of computer translator programs. • (a) Assemblers (b) Compiler (c) Interpreter

Language Translators

• Assembler: It is language translator program used to translate assembly language code into machine language. e.g. Masm, Tasm

• Compiler: Translates whole program called source program into machine language all at one time before program is executed. Once converted it is in machine-readable form (called object code) it never needs compiler again or source code. E.g. C language compiler, Cobol compiler.

Language Translators• Interpreter: An interpreter translates a program into machine

language one instruction at a time. • Each instruction or groups of instructions are executed after

translation. • It does not store code in machine-readable form; therefore each

time we run program source code and interpreter is needed. Example is GW-Basic

• Debuggers and testing programs: are used to find logical errors in program.

• Program generators : are programs that automatically generate other programs.

• Linkers: create link between parts of any object program for a particular compute in specified memory.

Editors

• Editors are software used to write data in simple text format.

• They do not enter any formatting codes.• They are used to write and alter language programs,

making instruction files for operating system like batch files, and system configuration files.

• Many languages have their own editors but some allow any editor for program writing. Examples are edit in DOS, and notepad in windows operating system.

System Uti l i t ies

• System utility programs come with operating system package but some are separately available.

• They are used to check system resources like processor resources, memory space, and hardware check and to correct or retrieve corrupt data from disk.

• They are also used to make software use more efficiently. It includes disk diagnostic tools. Examples are scandisk, chkdsk, dxdiag, regedit, etc.

Destructive programs (Viruses)

• Destructive programs are used to disturb the user. • It can hang computer, corrupt or alter data and even disable any

of your hardware.• These programs come silently in your computer automatically

and start their work.• They come from some input device, storage device or network. • They are generally called computer viruses. • Some of them cause damage immediately and may destroy

specific files. • But some wait for a particular condition to match either a

particular date or time or any state of computer. • There are different types of these programs like bacteria, Trojan

horses, etc.

Anti viruses, Guards or Shields• To help users against virus programs a system program is made known as

Anti virus program, which gets rid from these programs and also try to recover the damage made by them.

• A program known as “Guard” or “Shield” usually packaged with anti viruses stops entering these destructive programs in computer and damaging it.

• Example of anti viruses and shields are is Norton, McAfee, PC-Cillin, etc.

Drivers (Device drivers)

• It is a program, which is used for communication between operating system and any (hardware) device such as video controller, printer.

• It can be part of operating system as mouse drivers in windows or can be installed separately as laser printer drivers.

• All new hardware devices come with driver programs that enable operating system to use that hardware.

• Examples are Sound, VGA, modem and mouse drivers.