6

INTERACTION OF USER AND COMPUTER

Contents

  • Types of software—System software, and application software
  • System software
    • For management and functionality of computer—Operating system, device drivers, and system utilities
    • For development of application software—Programming languages, translator software, loader, and linker
  • Operating system
  • Device drivers
  • System utility software—Anti-virus, data compression, cryptographic, disk compression, disk partitioning, disk cleaner, backup, system profiling, and network manager
  • Programming language—Machine language, assembly language, high-level language, and different generations of programming languages
  • Translator software—Assembler, compiler, and interpreter
  • Linker, and loader software
  • Application software—Word processing software, image processing software, accounting software, spreadsheet software, presentation software, CAD/CAM software, and web browser software

Why this chapter

The computer, as a machine, can do nothing for you without the software. Software is required for the functioning of computer. Software programs instruct computer about the actions to be performed, so as to get the desired output. The purpose of this chapter is to introduce you to the different categories of software.

6.1 INTRODUCTION

A computer system consists of hardware and software. The computer hardware cannot perform any task on its own. It needs to be instructed about the tasks to be performed. Software is a set of programs that instructs the computer about the tasks to be performed. Software tells the computer how the tasks are to be performed; hardware carries out these tasks. Different sets of software can be loaded on the same hardware to perform different kinds of tasks. For example, a user can use the same computer hardware for writing a report or for running a payroll program. The components like monitor, keyboard, processor, and mouse, constitute the hardware (Figure 6.1). In this chapter, we will discuss the different categories of computer software.

Figure 6.1 Making diagrams using hardware and software

6.2 TYPES OF SOFTWARE

Software can be broadly classified in two categories:

  1. System Software, and
  2. Application Software.

System software provides the basic functions that are performed by the computer. It is necessary for the functioning of a computer. Application software is used by the users to perform specific tasks. The user may choose the appropriate application software, for performing a specific task, which provides the desired functionality. The system software interacts with hardware at one end and with application software at the other end. The application software interacts with the system software and the users of the computer. Figure 6.2 shows the hierarchy of software, hardware and users.

Figure 6.2 Software hierarchy

6.3 SYSTEM SOFTWARE

System software provides basic functionality to the computer. System software is required for the working of computer itself. The user of computer does not need to be aware about the functioning of system software, while using the computer. For example, when you buy a computer, the system software would also include different device drivers. When you request for using any of the devices, the corresponding device driver software interacts with the hardware device to perform the specified request. If the appropriate device driver for any device, say a particular model of a printer, is installed on the computer, the user does not need to know about the device driver, while printing on this printer.

The purposes ofthe system software are:

  • To provide basic functionality to computer,
  • To control computer hardware, and
  • To act as an interface between user, application software and computer hardware.

On the basis of their functionality, system software may be broadly divided into two categories (Figure 6.3) as follows—

Figure 6.3 System software

  • System software for the management and functionality of computer relates to the functioning of different components of the computer, like, processor, input and output devices etc. System software is required for managing the operations performed by the components of computer and the devices attached to the computer. It provides support for various services, as requested by the application software. Operating system, device drivers, and system utilities constitute the system software for management of computer and its resources.
  • System software for the development of application software provides services required for the development and execution of application software. System software provides the software tools required for the development of application software. The programming language software, translator software, loader, and linker are also categorized as system software, and are required for the application software development.

6.3.1 Operating System

Operating System (OS) is an important part of a computer. OS intermediates between the user of a computer and the computer hardware. Different kinds of application software use specific hardware resources of a computer like CPU, I/O devices and memory, as needed by the application software. OS controls and coordinates the use of hardware among the different application software and the users. It provides an interface that is convenient for the user to use, and facilitates efficient operations of the computer system resources. The key functions of OS are—

  • It provides an environment in which users and application software can do work.
  • It manages different resources of the computer like the CPU time, memory space, file storage, I/O devices etc. During the use of computer by other programs or users, operating system manages various resources and allocates them whenever required, efficiently.
  • It controls the execution of different programs to prevent occurrence of error.
  • It provides a convenient interface to the user in the form of commands and graphical interface, which facilitates the use of computer.

Some available operating systems are Microsoft Disk Operating System (MS-DOS), Windows 7, Windows XP, Linux, UNIX, and Mac OS X Snow Leopard.

6.3.2 Device Driver

A device driver acts as a translator between the hardware and the software that uses the devices. In other words, it intermediates between the device and the software, in order to use the device.

Some devices that are commonly connected to the computer are—keyboard, mouse, hard disk, printer, speakers, microphone, joystick, webcam, scanner, digital camera, and monitor. For proper working of a device, its corresponding device driver must be installed on the computer. For example, when we give a command to read data from the hard disk, the command is sent to the hard disk driver and is translated to a form that the hard disk can understand. The device driver software is typically supplied by the respective device manufacturers.

Programmers can write the higher-level application code independently of whatever specific hardware devices it will ultimately use, because code and device can interface in a standard way, regardless of the software superstructure, or of the underlying hardware. Each version of a device, such as a printer, requires its own hardware-specific specialized commands. In contrast, most applications instruct devices (such as a file to a printer) by means of high level generic commands for the device, such as PRINTLN (print a line). The device-driver accepts these generic high-level commands and breaks them into a series of low-level, device-specific commands, as required by the device being driven.

Nowadays, the operating system comes preloaded with some commonly used device drivers, like the device driver for mouse, webcam, and keyboard. The device drivers of these devices are pre-installed on the computer, such that the operating system can automatically detect the device when it is connected to the computer. Such devices are called plug and play devices. In case the computer does not find the device driver, it prompts the user to insert the media (like a CD which contains the corresponding device driver) provided along with the device. Most device manufacturers, host the device drivers for their devices on their companies’ websites; users can download the relevant driver and install it on their computer.

  • Each device has its own device driver (Figure 6.4).
  • Whenever a new device is connected to a computer, its device driver has to be loaded in the computer∙s memory, to enable use of the device. When you buy a new printer, you get the device driver CD with it. You must install the device driver on your computer, to use the new printer. Each printer comes with its own device driver. If you replace your old printer with a new model, you need to install the device driver for the new printer.
  • Device drivers can be character or block device drivers. Character device drivers are for character based devices like keyboard, which transfer data character by character. Block device driver are for devices that transfer data as a block, like in hard disk.

Figure 6.4 Device driver (i) CD of a printer (ii) Sony audio recorder

6.3.3 System Utilities

System utility software is required for the maintenance of computer. System utilities are used for supporting and enhancing the programs and the data in computer. Some system utilities may come embedded with OS and others may be added later on. Some examples of system utilities are:

  • Anti-virus utility to scan computer for viruses (Figure 6.5).
  • Data Compression utility to compress the files.

    Figure 6.5 Antivirus software on a computer

  • Cryptographic utility to encrypt and decrypt files.
  • Disk Compression utility to compress contents of a disk for increasing the capacity of a disk.
  • Disk Partitioning to divide a single drive into multiple logical drives. Each drive is then treated as an individual drive and has its own file system. Figure 6.6 shows a hard disk with three partitions.
  • Disk Cleaners to find files that have not been used for a long time. It helps the user to decide what to delete when the hard disk is full.

    Figure 6.6 A hard disk having three partitions—C, E, and F

  • Backup Utility to make a copy of all information stored on the disk. It also restores the backed up contents in case of disk failure.
  • System Profiling Utility provides detailed information about the software installed on the computer and the hardware attached to it.
  • Network Managers to check the computer network and to log events.

The system utilities on a computer working on Windows XP OS can be viewed by clicking <Start><All Programs><Accessories><System Tools>. Figure 6.7 shows system tools in Windows XP.

Figure 6.7 Some system tools in Windows XP

6.3.4 Programming Languages

A Programming Language consists of a set of vocabulary and grammatical rules, to express the computations and tasks that the computer has to perform. Programming languages are used to write a program, which controls the behavior of computer, codify the algorithms precisely, or enables the human-computer interface. Each language has a unique set of keywords (words that it understands) and a special syntax for organizing program instructions. The programming language should be understood, both by the programmer (who is writing the program) and the computer. A computer understands the language of 0∙s and 1∙s, while the programmer is more comfortable with English-like language. Programming Language usually refers to high-level languages like COBOL, BASIC, FORTRAN, C, C++, Java etc. Programming languages fall into three categories (Figure 6.8):

Figure 6.8 Programming languages

  • Machine Language is what the computer can understand but it is difficult for the programmer to understand. Machine languages consist of numbers only. Each kind of CPU has its own unique machine language.
  • Assembly Language falls in between machine language and high-level language. They are similar to machine language, but easier to program in, because they allow the programmer to substitute names for numbers.
  • High-level Language is easier to understand and use for the programmer but difficult for the computer.

Regardless of the programming language used, the program needs to be converted into machine language so that the computer can understand it. In order to do this a program is either compiled or interpreted.

Figure 6.9 shows the hierarchy of programming languages. The choice of programming language for writing a program depends on the functionality required from the program and the kind of program to be written. Machine languages and assembly languages are also called low-level languages, and are generally used to write the system software. Application software is usually written in high-level languages. The program written in a programming language is also called the source code.

Figure 6.9 A program in machine language

6.3.4.1 Machine Language

A program written in machine language is a collection of binary digits or bits that the computer reads and interprets. It is a system of instructions and data executed directly by a computer∙s CPU. It is also referred to as machine code or object code. It is written as strings of 0’s and 1∙s, as shown in Figure 6.10. Some of the features of a program written in machine language are as follows:

Figure 6.10 Machine language code

  • The computer can understand the programs written in machine language directly. No translation of the program is needed.
  • Program written in machine language can be executed very fast (Since no translation is required).
  • Machine language is defined by the hardware of a computer. It depends on the type of the processor or processor family that the computer uses, and is thus machine-dependent. A machine- level program written on one computer may not work on another computer with a different processor.
  • Computers may also differ in other details, such as memory arrangement, operating systems, and peripheral devices; because a program normally relies on such factors, different computer may not run the same machine language program, even when the same type of processor is used.
  • Most machine-level instructions have one or more opcode fields which specify the basic instruction type (such as arithmetic, logical, jump, etc), the actual operation (such as add or compare), and some other fields.
  • It is difficult to write a program in machine language as it has to be written in binary code. For e.g., 00010001 11001001. Such programs are also difficult to modify.
  • Since writing programs in machine language is very difficult, programs are hardly written in machine language.

6.3.4.2 Assembly Language

A program written in assembly language uses symbolic representation of machine codes needed to program a particular processor (CPU) or processor family. This representation is usually defined by the CPU manufacturer, and is based on abbreviations (called mnemonics) that help the programmer remember individual instructions, registers, etc. Small, English-like representation is used to write the program in assembly language, as shown in Figure 6.11. Some of the features of a program written in assembly language are as follows:

Figure 6.11 Assembly language code

  • Assembly language programs are easier to write than the machine language programs, since assembly language programs use short, English-like representation of machine code. For e.g.:

    ADD 2, 3

    LOAD A

    SUB A, B

  • The program written in assembly language is the source code, which has to be converted into machine code, also called object code, using translator software, namely, assembler.
  • Each line of the assembly language program is converted into one or more lines of machine code. Hence assembly language programs are also machine-dependent.
  • Although assembly language programs use symbolic representation, they are still difficult to write.
  • Assembly language programs are generally written where the efficiency and the speed of program are the critical issues, i.e. programs requiring high speed and efficiency.

6.3.4.3 High-level Language

A program in a high-level language is written in English-like language. Such languages hide the details of CPU operations and are easily portable across computers. A high-level language isolates the execution semantics of computer architecture from the specification of the program, making the process of developing a program simpler and more understandable with respect to assembly and machine level languages. Some of the features of a program written in high-level language are as follows:

  • Programs are easier to write, read or understand in high-level languages than in machine language or assembly language. For example, a program written in C++ is easier to understand than a machine language program (Figure 6.12).
  • Programs written in high-level languages is the source code which is converted into the object code (machine code) using translator software like interpreter or compiler.
  • A line of code in high-level program may correspond to more than one line of machine code.
  • Programs written in high-level languages are easily portable from one computer to another.

6.3.4.4 Different Generations of Programming Languages

In addition to the categorization of programming languages into machine language, assembly language, and high-level language, programming languages are also classified in terms of generations in which they have evolved. Table 6.1 shows the classification of programming languages based on generations.

6.3.5 Translator Software

Translator software is used to convert a program written in high-level language and assembly language to a form that the computer can understand. Translator software converts a program written in assembly language, and high-level language to a machine-level language program (Figure 6.13). The translated program is called the object code. There are three different kind of translator software:

Figure 6.12 A C++ program

First Generation Machine language
Second Generation Assembly language
Third Generation C, COBOL, Fortran, Pascal, C++, Java, ActiveX (Microsoft) etc.
Fourth Generation .NET (VB.NET, C#.NET etc.) Scripting language (Javascript, Microsoft Frontpage etc.)
Fifth Generation LISP, Prolog

Table 6.1 Generations of programming languages

Figure 6.13 Translator software

  • Assembler,
  • Compiler, and
  • Interpreter.

Assembler converts a program written in assembly language to machine language. Compiler and interpreter convert a program written in high-level language to machine language. Let’s now discuss, briefly, the different kinds of translator software.

6.3.5.1 Assembler

Assembly language is also referred to as a symbolic representation of the machine code. Assembler is a software that converts a program written in assembly language into machine code (Figure 6.14). There is usually a one-to-one correspondence between simple assembly statements and machine language instructions. The machine language is dependent on the processor architecture, though computers are generally able to carry out the same functionality in different ways. Thus the corresponding assembly language programs also differ for different computer architectures.

Figure 6.14 Assembler

6.3.5.2 Compiler

A program written in a high-level language has to be converted to a language that the computer can understand, i.e. binary form. Compiler is the software that translates the program written in a high-level language to machine language. The program written in high-level language is referred to as the source code and compiled program is referred as the object code. The object code is the executable code, which can run as a stand-alone code. It does not require the compiler to be present during execution. Each programming language has its own compiler. Some languages that use a compiler are C++, COBOL, Pascal, and FORTRAN. In some languages, compilation using the compiler and linking using the linker are required for creating the executable object code.

The compilation process generally involves two parts—breaking down the source code into small pieces and creating an intermediate representation, and, constructing the object code for the intermediate representation. The compiler also reports syntax errors, if any, in the source code.

6.3.5.3 Interpreter

The purpose of interpreter is similar to that of a compiler. The interpreter is used to convert the high-level language program into computer-understandable form. However, the interpreter functions in a different way than a compiler. Interpreter performs line-by-line execution of the source code during program execution. Interpreter reads the source code line-by-line, converts it into machine understandable form, executes the line, and then proceeds to the next line. Some languages that use an interpreter are BASIC and Python.

Difference Between a Compiler and An Interpreter: Compiler and Interpreter are used to convert a program written in high-level language to machine language; however, they work differently. The key differences between a compiler and an interpreter are as follows:

  • Interpreter looks at a source code line-by-line. Compiler looks at the entire source code.
  • Interpreter converts a line into machine executable form, executes the line, and proceeds with the next line. Compiler converts the entire source code into object-code and creates the object code. The object code is then executed by the user.
  • For a given source code, once it is compiled, the object code is created. This object code can be executed multiple number of times by the user. However, interpreter executes line-by-line, so executing the program using an interpreter means that during each execution, the source code is first interpreted and then executed.
  • During execution of an object code, the compiler is not required. However, for interpretation, both interpreter and the source code is required during execution (because source code is interpreted during execution).
  • Since interpreter interprets line-by-line, the interpreted code runs slower than the compiled code.

6.3.6 Linker

Linker is a program that links several object modules and libraries to a single executable program. A source code of a program is often very large consisting of several hundred or more lines. The source code may also include reference to libraries. All these independent modules may not be stored in a single object file. The code is broken down into many independent modules for easy debugging and maintenance. Before execution of the program, these modules and the required libraries are linked together using the linker software. The compiled and the linked program are called the executable code.

6.3.7 Loader

The loader software is used to load and re-locate the executable program in the main memory. Software has to be loaded into the main memory during execution. Loader assigns storage space to the program in the main memory for execution. Figure 6.15 shows the working of a Java Runtime Environment (JRE). The java source file Sample.java is compiled and converted into a set of bytecodes and are stored in Sample.class file. At runtime, the class loader loads the bytecodes from the hard disk, checks it, and runs it in an interpreter. The interpreter executes the bytecode and makes calls to the underlying hardware.

Figure 6.15 Working of java runtime environment

Figure 6.16 Hierarchy of program execution

The hierarchy of program execution from writing the program to its execution is shown in Figure 6.16.

6.4 APPLICATION SOFTWARE

The software that a user uses for accomplishing a specific task is the application software. Application software may be a single program or a set of programs. A set of programs that are written for a specific purpose and provide the required functionality is called software package. Application software is written for different kinds of applications—graphics, word processors, media players, database applications, telecommunication, accounting purposes etc.

Some examples of application software packages (Figure 6.17) are as follows:

  • Word Processing Software: For writing letter, reports, documents etc. (e.g. MS-WORD).
  • Image Processing Software: For assisting in drawing and manipulating graphics (e.g. Adobe Photoshop).
  • Accounting Software: For assisting in accounting information, salary, tax returns (Tally software).

    Figure 6.17 Some application software

  • Spreadsheet Software: Used for creating budget, tables etc. (e.g. MS-Excel).
  • Presentation Software: To make presentations, slide shows (e.g. MS-PowerPoint)
  • Suite of Software having Word Processor, Spreadsheet and Presentation Software: Some examples are MS-Office, Google Docs, Sun Openoffice, Apple iWork.
  • CAD/CAM Software: To assist in architectural design. (e.g. AutoCAD, Autodesk)
  • Geographic Information Systems: It captures, stores, analyzes, manages, and presents data, images and maps that are linked to different locations. (e.g. ArcGIS)
  • Web Browser Software: To access the World Wide Web to search documents, sounds, images etc. (e.g. Internet Explorer, Netscape Communicator, Chrome).
6.5 SOFTWARE ACQUISITION

Different kinds of software are made available for use to users in different ways. The user may have to purchase the software, can download for free from the Internet, or can get it bundled along with the hardware. Nowadays with the advent of Cloud computing, many application software are also available on the cloud for use through the Internet, e.g. Google Docs. The different ways in which the software are made available to users are:

  • Retail Software is off-the-shelf software sold in retail stores. It comes with printed manuals and installation instructions. For example, Microsoft Windows operating system.
  • OEM Software stands for “Original Equipment Manufacturer” software. It refers to software which is sold, and bundled with hardware. Microsoft sells its operating system as OEM software to hardware dealers. OEM software is sold at reduced price, without the manuals, packaging and installation instructions. For example, Dell computers are sold with the “Windows 7” OS pre-loaded on them.
  • Demo Software is designed to demonstrate what a purchased version of the software is capable of doing and provides a restricted set of features. To use the software, the user must buy a fully- functional version.
  • Shareware is a program that the user is allowed to try for free, for a specified period of time, as defined in the license. It is downloadable from the Internet. When the trial period ends, the software must be purchased or uninstalled.
  • Freeware is software that is free for personal use. It is downloadable from the Internet. The commercial use of this software may require a paid license. The author of the freeware software is the owner of the software, though others may use it for free. The users abide by the license terms, where the user cannot make changes to it, or sell it to someone else.
  • Public Domain Software is free software. Unlike freeware, public domain software does not have a copyright owner or license restrictions. The source code is publicly available for anyone to use. Public domain software can be modified by the user.
  • Open-Source Software is software whose source code is available and can be customized and altered within the specified guidelines laid down by the creator. Unlike public domain software, open-source software has restrictions on their use and modification, redistribution limitations, and copyrights. Linux, Apache, Firefox, OpenOffice are some examples of open-source software.
SUMMARY
  • Software can be classified into two categories— System Software, and Application Software.
  • System software provides basic functionality to the computer, controls computer hardware, and acts as an interface between user and computer hardware. System software may be used for the management of the computer, and, for the development of application software.
  • Operating System (OS) intermediates between user of computer and computer hardware. It manages resources of the computer system, controls execution of programs, and provides a convenient interface to the user for use of the computer.
  • MS-DOS, Windows XP, Windows 7, UNIX and Mac OS X, are some examples of OS.
  • Device driver intermediates between the device and the software that uses the device. Each device has its own device driver, which must be installed on the computer for the proper working of the device. Device drivers can be character or block device drivers.
  • For plug and play devices, the device drivers come preloaded with the operating system.
  • System utility software is required for maintenance of the computer. Anti-virus, data compression, disk partitioning, backup, system profiling are some system utilities.
  • Programming languages include a set of commands that the user follows to write a program.
  • Machine language is defined by the hardware of the computer. A program written in machine language is very fast, machine-dependent, and is difficult to write.
  • Assembly language uses symbolic representation of machine code. An assembly language program is easier to write than the machine language program but is still machine dependent.
  • A program written in a high-level language is English-like. High-level language programs are easier to write and are easily portable from one computer to another.
  • The programming languages are classified into five generation of languages.
  • Translator software is used to convert a program written in high-level language and assembly language to a form that the computer can understand. Assembler, compiler, and interpreter are the three kinds of translator software.
  • Assembler converts a program written in assembly language into machine code.
  • Compiler translates the program written in a high- level language to machine language. The high-level language program is the source code, and compiled program is the object code.
  • Interpreter converts the high-level language program into machine code, but performs line-by-line execution of the source code, during the program execution.
  • Linker links several object modules and libraries to a single executable program.
  • Loader loads and re-locates the executable program in the main memory.
  • Application software is a single program or a set of programs that perform a specific task. Word processing software, image processing software, geographical information systems, accounting software, spreadsheet, presentation software, and web browser software are examples of application software.
  • Software acquisition may require the user to purchase the software like retail software, or use free software like freeware, public-domain software, and open- source software.
KEYWORDS

Accounting software

Freeware

Program

Anti-virus utility

Generations of

Programming languages

Application software

Programming languages

Public domain software

Assembler

High-level language

Retail software

Assembly language

Image processing

Shareware

Backup

software

Software

Block device driver

Interpreter

Software package

CAD/CAM software

Linker

Source code

Character device driver

Loader

Spreadsheet software

Compiler

Low-level language

System profiling

Cryptographic utility

Machine language

System software

Data compression utility

Network managers

System utility

Demo software

Object code

Translator software

Device driver

OEM software

Web browser software

Disk cleaners

Open-source software

Word processing

Disk compression

Operating system

software

Disk partitioning

Plug and play devices

 

Executable code

Presentation Software

 

QUESTIONS

Section 6.1–6.3

1. _____ and _____ are the two main categories of software.

2. What is the purpose of system software?

3. What is system software?

4. Give two examples of system software.

5. Describe the two categories of system software.

Section 6.3.1–6.3.3

6. What is the need of an operating system?

7. Describe the functions of an operating system.

8. “OS controls and coordinates the use of hardware among the different application software and the users”. Explain.

9. Name any three operating systems.

10. Define a device driver.

11. What are plug and play devices?

12. Give an example of a plug and play device.

13. Where is the device driver of the plug and play device located on the computer?

14. What is the purpose of a device driver?

15. What are character device driver and block device driver?

16. Give an example of a character device driver.

17. Give an example of a block device driver.

18. What are the uses of system utilities?

19. List any five system utilities and also list the purpose of each.

20. Explain the purpose of the following system utilities in one line—(i) Anti-virus, (ii) Data compression, (iii) Cryptographic, (iv) Disk compression, (v) Disk partitioning, (vi) Disk cleaners, (vii) Backup utility, (viii) System Profiling utility, (ix) Network managers.

Section 6.3.4–6.3.4.4

21. Why are programming languages used?

22. What is the need for programming languages?

23. Name the three categories of programming languages.

24. What are low-level languages?

25. Define source code?

26. Define object code?

27. Machine language is hardware dependent—True or False.

28. List the key features of machine language.

29. List the key features of assembly language.

30. List the key features of high-level languages.

31. Why is it difficult to write a program in machine language?

32. State three features of the program written in machine language?

33. Why is it easier to write a program in high-level language than the assembly language?

34. Classify the programming languages based on their generations?

35. COBOL and C are _____ generation languages.

36. Name two high-level languages.

Section 6.3.5–6.3.7

37. What is the purpose of an assembler?

38. What is an executable code?

39. What is the purpose of a compiler?

40. How does an interpreter work?

41. Name two high-level languages that use compiler for translation.

42. Name two high-level languages that use interpreter for translation.

43. What is the purpose of linker?

44. What is the purpose of loader?

45. Draw the cycle from the writing of the program in a high-level language to its execution.

Section 6.4

46. Define a software package.

47. What is the use of application software?

48. Explain the purpose of the following application software in one line—(i) Word processing software, (ii) Image processing software, (iii) Accounting software, (iv)Spreadsheet software, (v) Presentation software, (vi) Web browser software, and (vii) Geographical Information Systems.

49. Give an example each of the following application software—(i) Word processing software, (ii) Image processing software, (iii) Accounting software, (iv) Spreadsheet software, (v) Presentation software, (vi) Web browser software, and (vii) Geographical Information Systems.

50. What are the different ways of acquiring software?

Extra Questions

51. Give full form of the following abbreviations

  1. OS
  2. MS-DOS

52. Write short notes on:

  1. System software
  2. Operating System
  3. Device driver
  4. System utilities
  5. Programming Language
  6. Machine language
  7. Assembly language
  8. High-level languages
  9. Generation ofProgramming Languages
  10. Translator software
  11. Assembler
  12. Compiler
  13. Interpreter
  14. Linker and Loader
  15. Application Software

53. Give differences between the following:

  1. System Software and Application Software
  2. Machine language and Assembly language
  3. Assembly language and High-level languages
  4. Assembler and Compiler
  5. Compiler and Interpreter
  6. Linker and Loader
..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
3.145.91.254