UNIT 3 STRUCTURE 3.1 Objective 3.2 3.3 Operating System 3.3.1 Single User Operating system 3.3.2 Batch Operating System 3.3.3 Real time Operating system 3.3.4 Multi users operating system 3.3.5 Distributed Operating System 3.3.6 Embedded Operating System 3.3.7 Network Operating System 3.8 Local Area Network (LAN) 3.9 Wide Area Network (WAN) 3.10 Popular Operating Systems 3.10.1 Windows 3.10.2 Mac OS X 3.10.3 3.10.4 Linux 3.11 Application Software 3.12 Virus and other destructive programmes 3.13 Don’ts while running software 3.14 Do’s while running of software 3.15 Future trends in operating system 3.16 Let us sum up 3.17 Model Answers to check your progress

3.1 OBJECTIVE

In units 1 and 2, we have discussed about hardware components of the computer. This unit is about software component of computer. A computer is a dead machine without software. Software is the soul of computer. It brings life to computer and induces work environment conducive for users. After reading this unit, you will be able:

1

 To explain role of software,  To classify software on the basis of its functions,  To understand functions of the operating system, and  To understand different types of operating system

3.2 PROGRAMMING LANGUAGES

Computer works on sequentially arranged instructions. Sequence of related instructions is called programme. Computer programmes are also known as software. Thus, the term software denotes predefined sequence of instructions used to execute specific tasks. Programmes are written with special languages understood by computer. Languages used to write programmes are called programming languages. Programming languages are classified into two categories i.e. high level and low-level languages.

The low level programming languages provide little or no abstraction from computers’ instructions set architecture of a CPU. The Instructions set in low-level languages is highly depend on microprocessor’s architecture. Thus, programmes designed with low level language are not portable from one microprocessor to another. Programmes in low-level language are very lengthy. It is difficult to understand and amend these programmes. Many household electronic applications such as microwave ovens, washing machines, dishwashers etc are programmed on low-level languages. The instructions set of CPU is known as machine language. Programmes written in low-level languages are executed directly by the CPU. Thus, the execution of programme is fast, when it is designed in low-level languages. Therefore, low-level languages are used to design applications run in the real time mode. Applications, which function under the real time mode, are characterized by its ability to generate results within specific time limits. Low-level languages are also used for writing system programmes, these programmes control PC and attached peripherals. System programmes are discussed latter in this unit. and machine codes are examples of the low-level language. Low-level language has poor presence in office environment.

A high level programming language is based on strong abstraction. It is close to natural language used for human communication. Programmes written in high-level language are easy to read, write and edit. Plankalkul programming language designed by Konrad Zuse is considered as the first high level programming language. These languages hide the details of CPU’s architecture and memory management from . Thus, programmes written in high language are portable from one computer to another. Ada, Algol, Basic, COBOL, and Pascal are example of the high-level language. High and low level languages are relative terms. Some decades ago, the language was considered as high-level language. However many programmers, today, might refer C language as low-level language. Similarly, at one time, Assembly language was treated as high-level language, now it was treated as low-level language.

Instruction set of microprocessor in the form of binary language is known as machine language of that microprocessor. Every instruction in machine language consists of two parts. The first part of each instruction is command to microprocessor to perform specific task. The second

2 component of instruction has detail about data being used in executing command reflected in the first part of the instruction. The second part may be address of memory location where data is stored or value of data directly. Programmes written in machine language run very fast as microprocessor directly executes programme without any interpreter. Machine language has no abstraction. It is difficult for human to remember instructions codes in the binary form. Programmes written in machine language are very lengthy. These Programmes have low portability across computers as these programmes are written for specific computer architecture or microprocessor.

Machine language is used mainly to write system programmes to control devices because speed of execution is the first priority in writing such programmes. Programmers can easily remember instructions set in the form of codes rather as series of 0 and 1. We use symbols instead of binary numbers for first and second parts (command and address of data respectively) of instructions set of machine language. This abstraction is known as assembly language. Every microprocessor has its own assembly language, which is not portable to microprocessors of other families. Assembly languages of microprocessors of same family have certain resemblance. Assembly language of every new microprocessor is compatible with assembly languages of old microprocessors of the same family. Programmers can easily develop programmes in assembly language of new microprocessor, when its assembly language is compatible with well established assembly languages. Programmes designed for earlier microprocessors can be run of new microprocessor with slight modification due to this compatibility. Microprocessor converts programme written in assembly language in to machine language before executing it. The advantages and limitations of assembly language are similar to those of machine language.

We have discussed in the unit 1 that computer execute programmes and instructions in binary form only. You may use high or low languages for writing programmes but computer understands and execute programmes written in the binary form. Programmes written in any other language is translated into binary language before execution. Programmes written in high- level languages are translated into low-level language with the help of compiler or interpreter before execution. Compiler converts the whole programme into low level before execution. Interpreter converts each line into low language and executes it and then converts next line and executes it. This continues until the end of the programme. Compiler converts and stores programmes into low-level language. Compiler checks and converts programmes line by line from high to low language. Whenever, compiler notices any error in programme, compiler list- out errors on monitor or paper and halts the compilation of programme. Programmers remove the listed errors and start the compilation of programme from the beginning. This process is repeated until all errors in programmes are removed. Once all errors are removed, compiler generates and saves compiled copy of the programme. Computer will use the compiled version of programmes and execute it directly without any support from compiler and programme written in high-level language. However, interpreter converts programme written in high-level language into low level language; each time programme is executed. Thus, execution of programme with interpreter is time consuming. Interpreter is mainly used for debugging of the programme.

Table 1 Comparison of Compiler and Interpreter Compiler Interpreter Scans the entire programme first for syntax Translates and run programme line by line.

3 errors in coding and then translates it into machine code. Converts the entire program to machine code; Programme is converted into low language before execution. The execution takes place and executed line by line from the beginning, only when all the syntax errors in the coding each time you run the programme. Every line are removed and entire programme is complied is checked for syntax error and then into low language converted into equivalent machine code before execution Debugging of programme is slow. Debugging Debugging of programme is fast. is a process of testing programmes for Programmes can be easily tested for errors robustness and syntax errors. It is conducted and robustness. ’s prefer to use during the development phase of a software interpreter for debugging of programmes Execution time is less as programme is Execution time is more in using interpreter as compiled only once. Later, only compiled it converts and executes the entire version of the programme is used for programme line by line into machine execution. language each time you run the programme.

3.3 OPERATING SYSTEM

Till 1960s, computers were built to execute single task like a calculator. Operating system was not needed to run computer at that time. Computer either completed task or crashed in case of error in the programme. As computer evolved, it was involved in processing multiple tasks at a time. Computer needed a programme to share and manage resources of computer among various applications running at a time. Programmes of this category are known as operating system or system programmes. Operating system is large size software capable of controlling the computer system independently. Operating system is an integral component of a computer. It is referred as the soul of the computer. Operating system can be defined as collection of programmes, which controls and manages operations of computer and connected peripherals. It manages memory, computation resources, input and output devices. Operating systems is like a manager of a store, who keeps proper account of inventory of the stock in the store, attends needs of customers, records financial transactions and places order to suppliers. A manager manages these activities without bothering to customers. Customers never come to know about details of mechanism involved in supplying commodities of their interests. Similarly, Operating system acts as mediator between users and hardware. Operating system automatically manages resources, peripherals and memory without bothering to users. The other major function of operating system is to facilitate interface between application software and hardware. It ensures secure and safe execution of multiple programmes at a time. Application software never encroach each others private zones. Operating system automatically decides the running behaviors of application software, resource allocation pattern and behaviour of computer. Earlier operating systems were designed to control hardware and support the execution of single application at a time. Recent operating systems have capability to run multiple applications and support computation needs of many users. Operating system customizes computer for individual user. The same computer behaves differently for individual users. Such machines are called virtual machines. The roles of the operating system vary with underlying hardware, needs of

4 users and requirements of applications software. Thus same operating system may behave in different ways on different computer.

The operating system is accompanied with a number of system programmes to induce convenient and efficient working environment. System programmes are small software utilizes, which support the operating system in managing computer and attached peripherals. These are used to do specific tasks to control devices and meet narrow objectives. A number of system programmes run in parallel of the operating system. Users can add or remove system programmes as per computation and hard work requirements of the computer.

Numerous operating systems are available in the market. UNIX, Linux, DOS and Windows are popular operating system for PCs in office environment. The Apple designed a special operating system known as MAC OSX for its line of PCs in early 80s. It was treated as the first GUI based operating system. The popular operating systems to support mainframe computers are IBM OS/360, IBM CP 67, Burroughs MCP and EXEC-8. The first operating system for microcomputer is CP/M, it was closely imitated in MS-DOS.

Users can interact with operating system by means of either command line interface or Graphical User Interface (GUI). Earlier operating systems were based on command line interface. The GUI was introduced in early 1980s. The command line interface allows users to interact and instruct system through commands typed by users on the terminal. The interfaces of these operating systems are very simple. However, users need to memorize commands used frequently and for other commands, they need to refer manual. DOS and UNIX operating systems are examples of command line interface.

Windows is the most popular operating system for PCs in offices. This operating system is designed by the Microsoft Corporation. It uses graphs, icons or pictures to easy control of users over computer. Operating systems or application software with this feature are recognized as Graphical User Interface (GUI) based software as user’s interface is highly graphical. Graphical user interface (GUI) based software make extensive use of icons, buttons, bars, boxes and other graphical objects to control computer and instruct application software. The GUI based operating systems are highly user-friendly and easy to control. Most of the modern operating systems such as Windows, MAC OS X and Linux have GUI based interfaces.

The major functions of an operating system are: a) Control internal and external devices attached with computer

b) Monitor the utilization and sharing of resources. Operating system keeps account of schedule of sharing of resources and utilization of these resources by various programmes/users,

c) Manage users interface of computer and applications software,

d) Run system utilities, which support operating system and keep the system alive,

e) Manage organization of files and folders,

5

f) Auto detection and correction of routine faults in computer,

g) Protection of users data and software utilities,

h) Runs application software,

i) Support networking of computers, so that computers, which are members of a network, can communicate and exchange information with each other. Computers in a network may be working on different operating systems. Operating system ensures secure and safe transfer of data across computers may be functioning on different operating systems over the network,

j) Ensure optimum utilization of microprocessor power, memory and other resources by performing a number of tasks simultaneously, and

k) Support virtual machine, so that same machine behaves differently for different users.

When computer starts behave in abnormal way while running poorly written programmes. Some time parallel running programmes starts stealing resources from other applications, grab the time of CPU forcibly or do not allow other applications to use CPU. This scenario is termed as deadlock. The machine completely ceased. Operating system automatically finds solution to this problem by taking system into the protection mode. Every programme under the protection mode can access only minimum resources to keep it alive and operating system runs only minimum and essential services. The operating system under protection mode identify programme causing deadlock than closing these programme automatically. The protection mode of the operating system brings the system out of deadlock naturally. You can safely close running applications without losing data under the protection mode and bring the system to normal stage.

The organization structure of an operating system can be divided into many layers. The inner most layer of the operating system is identified as kernel, which perform low level processing and controls all hardware inside the computer and peripherals. The kernel layer monitors the sharing of resources among applications software, memory allocation and communication across computers over the network. Users never realize the presence of kernel layer of the operating system. Some operating systems divide the internal layer into kernel and shell sub-layers. However, distinctions in the functions of kernel and shell layers are not very specific. The user interface is the outer most layer of the operating system, it creates interface window for users to interact with machine. The User interfaces are broadly classified into two categories i.e. command line interface and Graphic User Interface (GUI). Some operating system has a third layer in the middle of Kernel and User Interface and it is recognized as application programming interface. This layer creates a communication window for application software to exchange information with other applications and hardware components of the system. Application software interacts with operating system through system calls. System calls can be defined as special commands, which instruct computer to perform specific tasks. The layers of the operating system are hidden from users.

6

Layers in operating system are relative terms, their functions and boundaries vary from one operating system to another. Number of layers, its boundaries, limitations and privileges change from one operating system to another. For example, Windows considers its user interface layer as an integral part of the operating system, while Linux does not feel so, user interface layer in the Linux is designed independently and attached to the operating system.

User interface / Application software

Application programming interface

Kernel

CPU Input Output Memory

Fig. 1 Organization structure of operating system

Operating systems have been broadly classified into following categories on the basis its working principles:

3.3.1 SINGLE USER OPERATING SYSTEM

Computers which have been operating on single user operating system are used by only one user at a time. This type of operating system is popular for PCs. The hardware requirements i.e. processor speed and memory space, of single user operating system is very low as a number of system operations and functions meant for secure and safe sharing of resources among different users and to avoid illegal trespass of users in to private zones of other users are not needed in the single user operating system. These operating systems are small and easy to control. The procurement of these operating systems involves low cost. Windows and DOS operating systems are popular single user operating systems.

3.3.2 BATCH OPERATING SYSTEM

Jobs of similar types are grouped together and processed at a time under the batch operating system. Jobs may consist of programmes, data and system commands. For example, preparation

7 payroll, inventory management, forecasting, statistical analysis and backup of the system are usually carried out in the batch mode. The execution of these jobs need powerful computer and takes lot of time. Batching of similar type of jobs together improves the utilization of resources. Computer operators submit data and job descriptions to computer administrator. The administrator sorts jobs with similar requirements into batches. All jobs in a batch run at a time. The output of job processing is sent back to computer operator, who has submitted the job. Thus, there is delay in submission and execution of job, this delay is known as turnaround time. The turnaround time is decided by administrator of the system as per the policy of the organization. There is lack of interaction of users with machine, while processing of jobs submitted by him/her.

th The units 1 and 2 of this block have reflected that speed of the fastest I/O device is not even 1/10 of the speed of the CPU. Batch operating system allows I/O devices to collect large volume of data before initiating inputting of data to computer. Certain operations, which consume lot of time of CPU and/require large volume of data such as backup of data, indexing of records, update of inventory accounts and statistical operations are usually carried out late in night in batch mode when there is very low load of data processing from users. The major disadvantages of the batch operating system are: a) Delay in getting results, b) Non-interactive environment, c) Off line debugging , users can not resolve errors while processing of job d) User have no control over machine, while his/her data is being processed

Check your progress Activity 1 a. Write down main functions of the Operating System. b. Write down advantage and disadvantage of Batch Operating System.

3.3.3 REAL TIME OPERATING SYSTEM

Real time operating system produces results/responses within specific time limits. Response within specific deadline is the prime concern of the real time operating system. The convenience of users and optimum utilization of resources are other major concerns of the real time operating system. These operating systems are written in machine or low-level language so that task can be performed at high speed. Tasks are assigned priority according to their significance in the context. High priority tasks are executed first, followed by low priority tasks. These operating systems are designed on specialized scheduling algorithms. This kind of operating system is used in life saving devices at hospital, airplanes navigation system to control flights and launching of satellites in space. Delay in responses by few second in these activities can leads to disaster and unrecoverable damages. Real time operating system is very expensive and need powerful computer. These operating systems are rarely used in office environment.

3.3.4 MULTI USER OPERATING SYSTEM

8

The multiuser operating system allows many users to access computer and other resources concurrently. Every user has a monitor and keyboard on his/her desk and all users are connected with a powerful computer, operating on the multi users operating system. You must have noticed that counter-clerks at railways reservation counters have only keyboard and monitor at their desk without any computer cabinet; they work over a multi users operating system. All the clerks in a reservation centre have been sharing a single computer. Users have been using resources of single computer as per the scheduling algorithm set by the operating system. The time sharing algorithm is used frequently for sharing resources and CPU. Every user is allotted a fixed time slot to use CPU on rotation basis. These slots are so frequent that users never realize that they have been sharing machine with others. UNIX operating system is a popular multiuser operating system.

3.3.5 DISTRIBUTED OPERATING SYSTEM

With advancement of technology, electronic devices become cheap and powerful. This development discourages usage of mainframes and miniframe computers and encourages usage of distributed system consisting of small processors. The distributed systems have cost and performance advantage over mainframe and miniframe computers.

This operating system controls a group of independent computers and makes them appear to be integrated as single computer. When a task is assigned to one of the computers of the distributed network operating system, the operating system divides this task into independent subtasks. It evaluates workload on the distributed components of system accordingly distributed sub-tasks, among components, which are free or have low workload. The operating system returns to these processor later to collect results of sub-tasks assigned to them. The operating system compiles sub-results of all subtasks before handing results to the user who have assigned the task. Users are not aware, which computers are involved in processing their tasks. The operating system allows several processors to work in parallel on the same task at a time thus requiring complex processor scheduling algorithms to avoid conflict in resource allocation and ensure the maximum utilization of resources. Tasks are performed fast as a number of computers of the distributed operating system work simultaneously over the task. The efficiency of the computer network and coordination among distributed processors is the strength of the distributed operating system.

The main feature of the distributed operating system is transparency. The presence of multiple processors is invisible to users. Users sense that they have been working on centralized machine rather than on isolated consoles of the distributed network.

Fault-tolerance is the major characteristic of the distributed operating system. Tasks are distributed in subtasks, the outcomes of the system depends on the robustness of the sub components of the system. When some of the sub components of distributed network start malfunctions, other sub components share load of the malfunction components. Though, if number of sub-components stop functioning is very large then it has bad impact on the work efficiency of the entire system. In this situation, faulty sub-components of the distributed operating system start draining resources from the healthy sub-components and chock the entire system.

9

The reliability of the distributed operating system is very high. The operating system regularly scans for faulty components and immediately transfer load from these components to healthy components. The transfer of task is done automatically; users never came to know about the faulty components and distributions of work over the such-component of the distributed network.

3.3.6 EMBEDDED OPERATING SYSTEM

The embedded operating systems have been used to control microprocessor embedded in home, office and industrial appliances. This operating system is designed to operate small machines like automatic washing machines, microwave ovens, to control traffic light signals, currency counters and ATMs etc. The capacity and capability of the embedded operating system is limited, as these are designed to perform specific tasks and control limited number of resources. These operating systems are very compact and extremely efficient by design. Users have minor control over configuring these operating system, most of the configuration and control are set by manufacturers. Windows CE, Minix 3 and FreeBSD are examples of the embedded operating systems.

3.3.7 NETWORK OPERATING SYSTEM

The network operating system is a set of software and communication protocols that allows computers connected through electronic network to exchange information and share workload. Computers connected to a network operating system can recognize other computers connected to the same network automatically and exchange information and share workload with members of the network as per the instruction of users. The network operating system ensures safe and reliable transfer of information over the network. The operating system assigns access rights and priority of individual users. The operating system also curbs spread of virus and malicious programmers across the computer network. The definition and functions of network operating system makes it alike to the distributed operating system, however following differences distinguish network operating system from the distributed operating systems.

Each computer under the network operating system has its own operating system instead of being integral component of the distributed operating system. Each computer under the network operating system has more autonomy. Users work on its own system and set their priority under the network operating system. Computer approaches network only when it exchanges information or shares, devices with other computers over the network. Computers under the distributed operating system are integral component of the operating system. The distributed operating system controls access and priority of individual user. Computers have restricted autonomy under the distributed network system.

Users in the network operating system are aware of distribution of resources across of the network. Users make individual requests for information from specific computer of the network. Users can decide who can share resources owned by them. The Distributed operating system keeps record of sharable objects available over different computers connected to the system. Users make request to operating system for specific information. Distributed operating system locates that information and makes available to users who made request. 10

Check your progress activity 2 Write down difference between distributed operating system and network operating system

3.8 LOCAL AREA NETWORK (LAN)

The Local Area Network (LAN) is a computer network effective in small geographical areas most probably in the same building. The LAN usually connects up to 500 to 1000 computers. Users can share data, programmes and resources with others located on different computers over the network. LAN is also effective for centralized administration and support. Computer are connected through Cable (Coaxial, twisted and fiber), advance long distance communication technology is not needed for LAN. A powerful computer termed as file server is at the heart and soul of the LAN. You will find LAN in small and middle sizes organizations. A network with less than ten computers does not need file server, this network is termed as peer–to– peer system. Large network system uses more than one file server to mange the system. Each computer is connected with LAN through network interface card popularly known as the LAN Card.

3.9 WIDE AREA NETWORK (WAN)

The Wide Area Network (WAN) connects thousands of clients computers spread across the large geographical areas. Large size organizations with branch offices across cities use WAN to network computers installed in different branch offices. The long distance communication over the WAN is mediated through optical line, telephone, internet, microwave and satellite communication. You have noticed that all the braches of nationalized banks are inter-connected through the WAN network. Similarly, railways reservation counters across the country are interconnected with one another and centralized reservation system through the WAN.

11

3.10 POPULAR OPERATING SYSTEMS

The popular operating systems for office automation are as follows:

3.10.1 WINDOWS

Windows operating system is the most popular operating system for Personal Computers (PCs). More than 90% of the operating system market of PCs is captured by this operating system. The latest version in this series is Windows 7 for PCs and Windows Server 2008 for workstation/server. It is GUI based operating system. It is easy to control and use. Recently (July 2010) this operating system has faced lot of criticism due to poor security of the system. The Google Corporation announced that the organization would switch over the G-mail server from Windows operating system to some other operating system, as users accounts in the G-mail are venerable to illegal access in servers run under the Windows operating system. The Windows operating system is designed for PCs and small computers, which enjoy low memory capacity and work efficiencies (CPU power). These computers are used by few users and run few programmes in parallel. It does not need high security system. When we improve the security of the system it desire more memory and processing time. Window operating system occupy only small portion of processor time and memory, it produce optimum output and satisfaction of users on PCs.

30.10.2 MAC OS X

Mac OS X operating system was launched by the Apple Inc. in 1999. The last character in the name of the operating system is a roman number indicates ten. This operating system is pre- loaded on all Macintosh PCs. Its functioning is based on the UNIX operating system. Therefore, some computer experts treat Mac OS X as GUI version of the UNIX. The main strength of the Mac OS X is its GUI based interface. Users noted that the visual of windows, icons and texts are more attractive under the Mac OS X operating system than those of Windows operating system, due to drop shadow feature of windows and texts under the Mac OS X. This added shadow around widows and texts provides a sense of depth. The Mac OS X is supported with additional encryption features to improve security of the system. Access to network supported services is easy under the Mac OS X as it includes tools to manage group works. The versions of Mac OS X are named after big cats. The latest version of Mac OS X is “Snow Leopard” released in 2009.

3.10.3 UNIX

The UNIX operating system was developed by Ken Thompson. Later, the UNIX operating system was developed as family of inter-related operating systems. Operating systems, which functions alike the original UNIX operating system developed by Ken Thompson is consider as a family member of the UNIX operating system. UNIX operating system is usually used to run servers and workstations in academic and engineering environment. The major operating systems

12 from the UNIX family are System V, BSD, Solaris, GNU and Linux. Some versions of UNIX operating system such as HP-UX and IBM AIX are designed to run on specific computers designed by the HP and IBM respectively.

3.10.4 LINUX

Linux is an open source operating system. Anyone can download and customized it for personalize use. It is also used as embedded operating system to run home appliances, mobile phones and other industrial instruments. The Wikipedia has predicted that about 2% of microcomputers across the world have been working on the Linux operating system. This operating system is based on the UNIX operating system however through it is more popular than UNIX. The 10 most powerful supercomputers in the word have been using the Linux operating system. It is difficult to decide characteristic of the Linux operating system as it is open source product and every users have rights to modify it as per his/her requirements however its basic operations make it close to Unix operating system. Recently, the Google Inc launched Google Chrome Operating system based on the Linux operating system. This operating system is targeted for users who have been spending lot of time on social network sites and internet. It focuses on network tools, manage, organize and index massages and e-mails. The desktop of the Linux operating system is shown below

Fig. 2 Desktop of Linux

Mainframe computers can simultaneously run numerous operating systems. Different users can work on different operating systems at a time on the . Each user creates its own virtual machine and customizes its behaviour.

3.11 APPLICATION SOFTWARE

Application software is a subclass of computer software those use capabilities of computer to perform singular or multiple tasks as specified by users. Computer applications, which are frequently used in office environment, can be classified into following categories:

13

1. Word processing Applications: Word processing applications are used to prepare documents. These software are better than manual or electronic typewriters. These applications have utilities to improve the presentation and style of documentations. You can revise documents without re-typing the entire document. Word processing software can be used in offices for writing reports, notes, agendas and minutes of meeting and other official documents. MS- Word and Notepad are popular word processing software. Open Office is an open source product offers office utilities. The drafting and designing of documents with the MS-word would be covered in the next block.

2. Database Management Applications: Database management applications are used to create, maintain and manipulate databases. Database applications are used to store large volume of records, usually in the form tables. There are similar to inventory registers maintained manually in offices. A database, maintaining information in the form of tables is recognized as relational database. A single database may have many related tables. Values in columns in a specific row are related with each other and collectively recognized as record. Value in individual column is recognized as field. Address books employees, details of inventory, mailing list of customers are some of the examples of databases frequently maintained on computer in most of offices. MS-Access is popular database software, used to manage small database. It meets the database management requirements of small to middle size organizations. The functions of the MS Access are deliberated in detail in the third block.

3. Spreadsheet Applications: Spreadsheet software allows you to create electronic spreadsheets and perform calculation. Spreadsheets are mainly used, in offices to maintain records of financial deals, accounts, budgets and statistical data. Data is maintained in the form of tables as we do in maintaining such information manually. MS Excels is a popular spreadsheet utility. This software offers functions to make designing of spreadsheet convenient, it also facilitates designing of charts and graphs.

4. Knowledge resources: Encyclopedia, dictionary, documents of rules and acts support in running business are now available in the digital form. These resources are automatically updated on user computer through internet. These knowledge resources provide on-demand supports/assistance and users can customize the documentation of resources. These knowledge resources can be easily linked or embedded in other applications. Users need not to retype contents offered by knowledge resource into their documents. The Wikipedia is popular knowledge resource available free of cost. Most of the government and educational institutions web sites have good pool of knowledge resource. Encarta is a knowledge source maintained by the Microsoft Corporation. This is a paid encyclopedia, users needs to pay subscription fee.

5. Presentation software: Presentation software are used to create highly stylized presentation and reports. Some of presentation software facilitates embedding of charts, graphs, flow charts, animation, audio and video in the presentation. MS PowerPoint, Dreamweaver and Flash are the popular presentation software.

14

6. Programming language can be defined a set of rules, vocabulary and syntax used to convey information and instruct computer to execute specific task. We use languages and cues to express our thoughts and feelings to others. However, languages spoken by us are termed as natural languages. These languages are different from computer’s languages. Computer languages are more abstract and structured. Natural languages are competent in expressing art and philosophical. It expresses our emotion and state of mind. However, programme languages are more scientific and structural. It lacks expression of feelings. Basis, logo, COBOL, FORTRAN, Visual basic (VB), Pascal, C++ and Java are some of the popular computer languages. Syntax and rules of these languages are close to natural language used by us.

3.12 VIRUS AND OTHER DESTRUCTIVE PROGRAMMES

A computer virus is a computer programme that can copy itself without consent of owner; it may interrupt or stop other applications. Virus can be spread from one computer to another via floppy disk, CD, USB drive, computer network or internet. Computer virus is a universal term used to refer other kinds of software infections of computer such as adware, malware and spyware. Spyware collects little bit of information from computer without consent of users. Similarly, Malware infiltrates the computer system without the consent of users and transmit information from e-mails account and private data of users. Malware programmes are further classified as worms and Trojans. Worm and Trojans appear harmless and spread through computer network. Adware is software automatically play, display or download advertisements in infected computer. Advertisement is an integral component of most of the commercial products. Software developer argued that advertisement is a way to recover the cost of production. We should carefully read the installation agreement before using any software. If that software is accompanied by any adware or spyware, it must be reflected in the agreement. You should make sure information collected by spyware and implication of sharing that information with others.

Some adware are fixing in the privacy of users and transmitted preferences, credit card detail and other private data to advertisers. Such adware are categorized as spyware. For example Bonzi Buddy, was an onscreen intelligent software agent produced by Bonzi software, released in 1999. It was accused for infringing the privacy of users. The Bonzi Buddy is also held responsible for corrupting user’s files and popup of absence advertisement. The Bonzi Buddywas discontinued in 2005 due to tough resistance from users and government agencies. Malware, adware and spyware are not as harmful as virus. These programmes do not interrupt or stop functioning of other applications as in the case of virus.

Extent of damage from virus varies from one virus to another. Some viruses affect only specific applications or data. Other viruses affect system files of the operating system and shut down computer. Some viruses erase entire information from the hard disk. For example, W97M.Footprint virus overwrites the footers of documents prepared with MS Word software. Michelangelo virus is a malicious virus affects system files on March 6th, Michelangelo’s birthday. Antivirus software is used to detect and eliminate known virus. Every virus is recognized by its signature. Antivirus software maintains a database of virus signatures to detect infection of computer. The strength of antivirus software is understood by frequency of updating

15 these databases. Most of the antivirus software updates these databases on every day and updated database is automatically loaded in clients’ machines through internet. Another method of identifying virus is to detect them on the basis of its behavior and pattern of spreading of virus. You should backup of important files and data on regular basis to minimize the damage due to spread of virus. Data can be recovered with minimum damage through the restore modality of the Windows operating system. CD-ROM allows one time, writing on CD, thus it could not be infected with virus in future. Files, which are not going to change in future, can be kept on CD- ROM for backup. You can also prevent spreading of virus by changing attribute of such files as read only. Genuine buyers (licensee users) of operating system and application software get protection from virus and other threats through auto update features offered by software manufacturer or distributor. You would carefully read every security warnings popup on screen and try to understand reasons and remedies for these security warnings. Websites of Microsoft and applications software are good source of resolving these security warnings. Every attachment to e-mails should be scanned before downloading. Do not open or download e-mail attachments from unknown person.

Web society is committed to provide secure transmission of information over the web. Most of web designer agreed on implementation of communication protocols makes transitions of information secure over the web. The SSL certificate is universally accepted network protocol facilitate secure transmission of data. You should make sure identity of receiver, before sending personal information or credit card details over the web. The transmission of personal data should be secure through the SSL certificated communication protocol.

16

3.13 DON’TS USES OF SOFTWARE:

1 Do not disturb the configuration of computer until you are not sure about the impacts of changes made in configuration on the functioning and behaviour of computer. Don’t edit or delete system files. These files are usually attributed as hidden file. If some files are attributed as read-only or hidden by default then do not edit or delete these files. First check the relevance of these files from the manual of the operating system and then takes action. Do not change attributes of system files to make them writeable or/and visible.

2 Do not run applications or system programmes, which are not certified and legally licensed to you. Ensure the credibility of open source software before downloading and installing them in your computer. Certain websites such as www.downloads.com, www.zdnet.cometcprovide reliable open source based software. The popular open source software are accompanied with reviews from experts and users. Go through reviews of software to decide its appropriateness for your work.

3 Do not run computer without Uninterrupted Power Supply (UPS), otherwise frequent breakdown of power can damage computer and information stored there in. Do not move computer while it is on otherwise hard disk of computer may be crashed. You may lose important data and application.

4 Do not stack up computer with unnecessary programmes. These programmes occupy memory space and waste microprocessor time. Only necessary software should be installed in computer for high work efficiency and safety of the system.

5 Various Applications use certain common files for execution. Computer keeps only one copy of the common files and every application use it from that place. When you install an application, which is not meant for the operating system of your computer, common files in the computer may be overwritten accidentally by newly installed application. It makes other applications inaccessible which are dependent on the common files, overwritten by new application. You should only install applications designed for the operating system used in your computer. Take the backup of the system before installing a new application so that your system can be brought back to earlier stage, when installation of new programmes fails or it makes other programmes inaccessible due to overwriting of common files.

3.14 DO’S OF WHILE RUNNING SOFTWARE:

1. Turn off the computer, when not in use, save all documents and properly close all running applications before shutting down computer. Use dust cover, while computer is not in use for a long. 2. Run Scan-disk utility weekly to get back unblocked memory space from junk files. This utility also makes minor repairs in the hard disk. We discuss about it in the next unit. 3. Defragment your hard disk, once in about six months. This step reshuffles data on hard disk and places all relevant fragments of individual files at one place. This step improves speed

17

of computer as it gets all the relevant data of specific files at one place on hard disk. This utility is discussed in the next unit. 4. Keep surrounding of computer and peripherals clear. Do not place heavy items over your head or close to computer. It may accidentally fall on you and cause injury. 5. Plug in all peripherals to computer before switching on it. Peripherals with USB connectivity can be connected at the running time of computer. However, go through manual of USB supported devices for its proper plug-in and plug-out. 6. Write down user name and password on a paper and keep it at a safe place. 7. Room temperature should be 5oC to 35oC. 8. Use antivirus and spyware protection applications to keep data safe. A number of popular antivirus software are made available free of cost over the internet. Every software is accompanied with its reviews. Peruse these reviews before installing antivirus software. 9. Pay immediate attention to unusual behavior of computer such as frequent shut down, hanging of system or warning messages. Immediately call supportive staff to attend these problems. Most of the software offer online support. Whenever your application misbehaves, computer sends error messages to application producers with your consent. You will get immediate support from application producers over the internet, otherwise you should approach software designer for solution of your problem. 10. If your computer has internet connectivity then you should avoid uses of computer during storms and lighting. Your computer may be damaged due to lighting. 11. Do not download attachments from e-mail messages received from unknown person. 12. Do not download software utilities from web sites, which are not reliable. 13. Sometime installation of new programme may cause conflict with already installed programmes. Computers start behaving in abnormal way. You should immediately uninstall programmes causing unusual behaviors or stopping other programmes. You should also take backup of system before installing a new programme, so that system can be taken back to original position, when installation of new programmes failed. 14. Do not put computer on the floor. Fan on the backside of computer is meant for cooling the system. It unintentionally works as a powerful vacuum cleaner. It sucks dust from surrounding and takes inside computer. Never open computer cabinet to clean computer, instead called authorized engineer to clean computer from the inside periodically. 15. Last but not least, do not seat for a long time on computer, take a break of 15 to 20 minutes after every two hours of work. You will get mental and physical rest.

3.15 FUTURE TRENDS IN OPERATING SYSTEM

A number of trends have been emerged in recent years; those will shape the future of the operating system:

a) Operating system takes commands from user in natural ways. Operating system will take commands in natural languages and cues,

b) The interface will be more interactive, user friendly. It will offer support for multimedia- based applications. The visual of screen will be more attractive.

18

c) The structure of the operating system will be modular, so that users can upload modules of the operating system as per local context, capacity and competency of their machine. This will also make the procurement of the operating system economical as users needs to pay for what they are using.

d) Operating systems with multiprocessing features are gaining popularity due to continuing decrease cost of the hardware and gaining of popularity of object oriented programming concept and network based operations.

e) Organization structure of multinational/multi-states establishments encourages usage of the distributed operating system. Low price hardware, economical internet tariff, popularly of social network sites and MNCs work culture would shape the functioning operating system.

f) Operating system will be simpler and easer to control. Users would have more control over the operating system and can customize it as per local context and his/her preferences.

g) Now, functioning of organizations is highly distributed. Low internet transmit tariff rate and high-speed data transfer over long distance make it permissible to transmit large volume of information over a distance at low price. Users from different geographical locations can work jointly on the same document or projects. These factors encourage usage of the network-based operating system.

h) Operating system will encourage customization of the same machine for individual users, these customized machines are known as virtual machines. Thus same computer will behave differently for different users.

3.16 LET US SUM UP

A computer is a dead machine without software. Software is the heart and soul of computer. Software are classified into two groups on the basis of its function areas i.e., operating system and applications software. Operating system can be defined as collection of programmes, which control and manage operations of computer and connected peripherals. It manages memory, computation resources, input and output devices. Application software use capabilities of computer to perform singular or multiple tasks as specified by users. Software are written in special language understood by computer. These languages are recognized as programming languages. Programming languages are classified into high level and low level programming languages on the basis of extent of abstraction in instructions set architecture of microprocessor. The low-level languages have little or no abstraction in instruction set architecture. The high- level languages are based on strong abstraction. It is close to natural language. UNIX, Linux, DOS, Windows, Mac OSX are the popular operating systems for PCs. The operating systems are classified as single user operating system, batch operating system, real-time operating system, multi user operating system, distributed operating system, embedded operating system and

19 network operating system on the basis of a these functions and principle of work. You must install the latest anti-virus software to protect your computer from virus and illegal access.

3.17 MODEL ANSWER TO CHECK YOUR PROGRESS:

Activity 1: a) The major functions of a operating system are as follows:

b) Control internal and external devices attached with computer, c) Monitor the utilization and sharing of resources. Operating system keeps account of schedule of sharing of resources and utilization of resources by various programmes/users, d) Manage user interface of computer and applications, e) Run system utilities, which keep system alive, f) Manage organization of files and folders g) Auto detection and correction of routine faults in computer h) Protection of users data and software utilities i) Runs application software j) Support networking of computers, so that computers, which are members of a network and have been working on different operating systems can communicate and exchange information with each other. Operating system manages secure and safe transfer of data across computers may be functioning on different operating systems over the network. k) Ensure optimum utilization of microprocessor power, memory and other resources, by performing a number of tasks simultaneously. l) Support virtual machine, so that same machine behave differently for different users

b) The batch operating system is good for organizations, which perform lengthy and complex task of same types frequently. It ensures optimum utilization of the computation power of machine; computer can be used 24 hours a day and seven days a week. Computer can automatically starts execution of tasks in batch mode even in absence of computer operator and person, assigned job as per schedule fixed by system administrator. It is also useful for organization, which could not afford costly equipment and computers, they hire outside agency to execute their tasks in batch mode. The major disadvantages of the batch operating system are:

20

a) Delay in getting results, b) Non-interactivity of environment, c) Off line debugging , users can not resolve error while processing of job and d) Users have no control over machine while his/her data is being processed

ACTIVITY 2:

Users in the network operating system are aware of distribution of resources across of the network. Users make individual requests for information from specific computer of the network. Users can decide who can share resources owned by them. Users have been working on independent machines. Distributed operating system keep record of sharable objects available over different computer. Users make request to operating system for specific information, distributed operating system locate that information and make available of users, who made request.

21