IT01 Chapter 2: Software PDF
Document Details
Uploaded by Deleted User
Tags
Summary
This document provides a general overview of software, including different types of software such as system software, application software, and programming software, along with examples. It also discusses programming software and its uses.
Full Transcript
MODULE LIVING IN THE IT ERA – IT01 CHAPTER 2: SOFTWARE Objectives: a) Identify the different types of software. b) Discuss the differences between applications and programs....
MODULE LIVING IN THE IT ERA – IT01 CHAPTER 2: SOFTWARE Objectives: a) Identify the different types of software. b) Discuss the differences between applications and programs. c) Discover the major functions of operating system. Lesson 1: Software Overview Software Software, which is abbreviated as SW or S/W, is a set of programs that enables the hardware to perform a specific task. All the programs that run the computer are software. The software can be of three types: system software, application software, and programming software. 1) System Software The system software is the main software that runs the computer. When you turn on the computer, it activates the hardware and controls and coordinates their functioning. The application programs are also controlled by system software. An operating system is an example of system software. 2) Application Software: Application software is a set of programs designed to perform a specific task. It does not control the working of a computer as it is designed for end-users. A computer can run without application software. Application software can be easily installed or uninstalled as required. It can be a single program or a collection of small programs. Microsoft Office Suite, Adobe Photoshop, and any other software like payroll software or income tax software are application software. As we know, they are designed to perform specific tasks. Accordingly, they can be of different types such as: Page | 1 MODULE LIVING IN THE IT ERA – IT01 Word Processing Software: This software allows users to create, edit, format, and manipulate the text and more. It offers lots of options for writing documents, creating images, and more. For example, MS Word, WordPad, Notepad, etc. Spreadsheet Software: It is designed to perform calculations, store data, create charts, etc. It has rows and columns, and the data is entered in the cell, which is an intersection of a row and column, e.g., Microsoft Excel. Multimedia Software: These software are developed to perform editing of video, audio, and text. It allows you to combine texts, videos, audio, and images. Thus, you can improve a text document by adding photos, animations, graphics, and charts through multimedia software. For example, VLC player, Window Media Player, etc. Enterprise Software: These software are developed for business operational functions. It is used in large organizations where the quantum of business is too large. It can be used for accounting, billing, order processing and more. For example, CRM (Customer Relationship Management), BI (Business Intelligence), ERP (Enterprise Resource Planning), SCM (Supply Chain Management), customer support system, and more. 3) Programming Software: It is a set or collection of tools that help developers in writing other software or programs. It assists them in creating, debugging, and maintaining software or programs or applications. We can say that these are facilitator software that helps translate programming language such as Java, C++, Python, etc., into machine language code. So, it is not used by end-users. For example, compilers, linkers, debuggers, interpreters, text editors, etc. This software is also called a programming tool or software development tool. Some examples of programming software include: Eclipse: It is a java language editor. Coda: It is a programming language editor for Mac. Notepad++: It is an open-source editor for windows. Sublime text: It is a cross-platform code editor for Linux, Mac, and Windows. For more knowledge about software, please check the link provided: https://www.youtube.com/watch?v=MSA3WsGeTNI&ab_channel=IAmDevGrant Page | 2 MODULE LIVING IN THE IT ERA – IT01 Lesson 2: Program What is a program? A computer program is a set of instructions and as a term it can be used as a verb as well as a noun. In terms of a verb, it is used as a process of creating a software program by using programming language. In terms of a noun, an application, program, or application software is used to perform a specific task on the computer. For example, Microsoft PowerPoint is an application, which provides a way to create documents related to the presentation. Furthermore, a browser is also an application, which allows us to browse any website. Difference between Applications and programs All applications can be called a program, but a program cannot be an application. An application is a collection of programs that are designed to help the end-users to achieve a purpose. These programs communicate with each other to perform tasks or activities. It cannot exist without a program and functions to carry out end-user commands. Whereas, a program is a collection of instructions that describes the computer what task to perform. What is the purpose of a program? The program enables the computer to perform a particular operation. As without application software (programs), a computer is able to operate with the operating system, but it cannot perform any specific task. For example, if you want to create a Word document, you have to install Microsoft Word on your computer. It is a program or application software that instructs the computer how to create, edit, and save a document or a file. Basic functions of a program The function of a program depends upon the type of program. For example, the function of the Microsoft Excel program is to create, edit, and view documents related to calculation and data analysis, etc.The function of an internet browser is to find information on the World Wide Web and display it on the screen. Basically, a program is designed to execute a particular task or function. For example, an Excel program is able to create a document, but it cannot find the information on the World Wide Web like a browser. What was the first program? Tom Kilburn wrote the first software program to hold in electronic memory. It was successfully executed at the University of Manchester, England, on 21 June1948. This program was computed as the greatest factor of the integer 218 = 262,144. The computer was called the mall Scale Experimental Machine (SSEM), which was known as the Manchester Baby. This occurrence is considered as the birth of the first software. Page | 3 MODULE LIVING IN THE IT ERA – IT01 Examples of computer programs Today, there are various types of programs available for mobile phones, computers, and other devices. The below table contains some examples of programs with their category and brief description. Program Category Description Google Internet Browser It is an internet browser that was introduced by Google Chrome on 11 December 2008. It is used to retrieve the information available on the World Wide Web and display it on the device screen. It provides various types of features to help the users, such as tabbed browsing, synchronization with Google services and accounts, and spell check and automatic translation of web pages. Additionally, it has a search bar or Omnibox, which allows users to search for any query. C Programming It is a general-purpose programming language, which is Language used to develop the software. It was released in 1972 after it was developed at Bell Labs by Dennis Ritchie. It is widely used for writing complex programs such as Python, Git, Oracle database, etc. Furthermore, it includes more features such as simple and efficient, portability, rich library, extensible, high- speed, and more. Skype Chat and VoIP Skype is a program that allows users to chat and make VOIP (voice over internet protocol) calls anywhere in the World. A Skype user can call for free to another Skype user anywhere in the world. Adobe Photo Editor It is an image editing program, runs on MacOS or Photoshop Windows computers.Itsupports all types of file formats as well as JPEG, Targa, GIF, BMP, HEIF, etc.It provides users many tools to create, edit, and enhance the quality of an image, including a real-life painting, create an animated GIF from an image or short video files. Microsoft Word processor It is a word processor program. It was developed by Word Charles Simonyi and Richard Brodie, and published by Page | 4 MODULE LIVING IN THE IT ERA – IT01 Microsoft. It was introduced on 25 October 1983.You can use the Word program on Microsoft Windows, Android, Apple iOS, and Apple macOS. Furthermore, it can also be run on the Linux OS with the help of WINE. FileZilla FTP The FileZilla is an open-source software program that allows users to transfer files from a local computer to a remote computer. It is usable as a client version as well as a server version. It includes more features, including the important features such as Transfer Queue, Site Manager, File, and Folder View, Directory Comparison. Microsoft Spreadsheet It is a software program, which provides a spreadsheet Excel to create documents related to calculation, data analysis, and more. It is developed by Microsoft on 30 September 1985. When it was in the developing phase, its code name was Odyssey. If you want to create a monthly budget report, salary sheet, Bill order, and more, you can use the Microsoft Excel program. Microsoft Presentation It is a part of Microsoft Office that is bundled with PowerPoint Microsoft Word and Excel. It is used to create a presentation by creating different types of slides. It is widely used in school and business presentations. For example, if you want to create a presentation of your document to show at your college or at any organization, you can use the Microsoft PowerPoint program. Mozilla E-mail client It is an open-source e-mail client that allows users to Thunderbird send, receive, and manage their e-mail on Microsoft Windows, Linux, MacOS, and other supported systems. It provides users the option to retrieve e-mail from their e-mail provider with the help of IMAP or POP3, and users can send an e-mail by using Simple Mail Transfer Protocol (SMTP). Norton Anti- Antivirus It is an anti-virus software product that is developed for Virus computer security by Symantec Corporation in 1991. It uses heuristics and signatures to detect viruses. Furthermore, it is distributed by Symantec as a download, copy, a box, and OEM software. Page | 5 MODULE LIVING IN THE IT ERA – IT01 Audacity Audio software It is an open-source software program, which enables users to record sound, including edit sound clips. It can run on the MacOS, Linux, and Windows operating systems. It is available for free to use as per the General Public License (GPL). Adobe PDF reader It is an application software introduced by Adobe, which Acrobat is used to create, view, manage, print, and manipulates files in PDF (Portable Document Format). Comm Fax/Voice/Phone It is a program, which enables users to receive faxes, Central including receiving voicemail on their personal computers. Adobe HTML editor It is a software program that is used to design web pages Dreamweaver and released by Macromedia in 1997. It is a full-fledged HTML and programming editor, which offers users WYSIWYG (what you see is what you get) user-interface to create and edit web pages. It supports HTML, CSS, JavaScript, and XML as well as human languages such as English, French, Spanish, Chinese, Japanese, Russian, etc. For more knowledge about program, please check the link provided; https://www.youtube.com/watch?v=taO7nfcoCT0&ab_channel=TheTechTrain Lesson 3: Operating System Operating System As the name suggests, an operating system is a type of software without which you cannot operate or run a computer. It acts as an intermediary or translation system between computer hardware and application programs installed on the computer. In other words, you cannot directly use computer programs with computer hardware without having a medium to establish a connection between them. Besides this, it is also an intermediary between the computer user and the computer hardware as it provides a standard user Page | 6 MODULE LIVING IN THE IT ERA – IT01 interface that you see on your computer screen after you switch on your computer. For example, the Windows and the Mac OS are also operating systems that provide a graphical interface with icons and pictures to enable users to access multiple files and applications simultaneously. So, although the operating system is itself a program or software, it allows users to run other programs or applications on the system. We can say that is works behind the scenes to run your computer. Major Functions of Operating System: o Memory management: It manages both the primary and secondary memory such as RAM, ROM, hard disk, pen drive, etc. It checks and decides the allocations and deallocation of memory space to different processes. When a user interacts with a system, the CPU is supposed to read or write operations, in this case, OS decides the amount of memory to be allocated for loading the program instructions and data into RAM. After this program is terminated, the memory area is again free and is ready to be allocated to other programs by the OS. o Processor Management: It facilitates processor management, where it decides the order for the processes to access the processor as well as decides the processing time to be allocated for each process. Besides this, it monitors the status of processes, frees the processor when a process is executed then allocates it to a new process. o Device/ hardware management: The operating system also contains drivers to manage devices. A driver is a type of translation software that allows the operating system to communicate with devices, and there are different drivers for different devices as each device speaks a different language. o Run software applications: It offers the environment to run or use software applications developed to perform specific tasks, for example, Ms Word, Ms Excel, Photoshop, etc. o Data management: It helps in data management by offering and displaying directories for data management. You can view and manipulate files, folders, e.g., you can move, copy, name, or rename, delete a file or a folder. o Evaluates the system's health: It gives us an idea about the performance of the hardware of the system. For example, you can see how busy the CPU is, how fast the data is retrieved from the hard disk, etc. o Provides user interface: It acts as an interface between the user and the hardware. It can be a GUI where you can see and click elements on the screen to perform various tasks. It enables you to communicate with the computer even without knowing the computer's language. Page | 7 MODULE LIVING IN THE IT ERA – IT01 o I/O management: It manages the input output devices and makes the I/O process smooth and effective. For example, it receives the input provided by the user through an input device and stores it in the main memory. Then it directs the CPU to process this input and accordingly provides the output through an output device such as a monitor. o Security: It has a security module to protect the data or information stored in the memories of the computer against malware and unauthorized access. Thus, it not only manages your data but also helps to protect it. o Time Management: It helps CPU in time management. The Kernel OS keeps checking the frequency of processes that requests CPU time. When two or more processes that are equally important compete for the CPU time, then the CPU time is sliced into segments and allocated to these processes in a round-robin fashion to prevent a single process from monopolizing the CPU. o Deadlock Prevention: Sometimes a resource that is supposed to be shared by two or more processes is held by one process due to which the resource cannot continue. This situation is known as deadlock. The OS does not let this situation arise by carefully distributing the resources among the different processes. o Interrupt Handling: OS also responds to interrupts, which are signals generated by a program or a device to seek the attention of the CPU. The OS checks the priority of the interrupt, and if it is more important than the currently running process, it stops the execution of the current process and preserves this state of CPU then executes the requested process. Thereafter the CPU returns to the same state where it was stopped. Types of Operating System: 1) Batch Processing Operating System: Page | 8 MODULE LIVING IN THE IT ERA – IT01 The interaction between a user and the computer does not occur in this system. The user is required to prepare jobs on punch cards in the form of batches and submit them to the computer operator. The computer operator sorts the jobs or programs and keeps similar programs or jobs in the same batch and run as a group to speed up processing. It is designed to execute one job at a time. Jobs are processed on a first-come, first-serve basis, i.e., in the order of their submission without any human intervention. For example, the credit card bill generated by banks is an example of batch processing. A separate bill is not generated for each credit card purchase, rather a single bill that includes all purchases in a month is generated through batch processing. The bill details are collected and held as a batch, and then it is processed to generate the bill at the end of the billing cycle. Similarly, in a payroll system, the salaries of employees of the company are calculated and generated through the batch processing system at the end of each month. Advantages of Batch processing operating system: o Repeated jobs can be completed easily without any human intervention o Hardware or system support is not required to input data in batch systems o It can work offline, so it causes less stress on the processor as it knows which task to process next and how long the task will last. o It can be shared among multiple users. o You can set the timing of batch jobs so that when the computer is not busy, it can start processing the batch jobs such as at night or any other free time. Disadvantages of batch processing operating systems: o You need to train the computer operators for using the batch system. o It is not easy to debug this system. o If any error occurs in one job, the other jobs may have to wait for an uncertain time. 2) Time Sharing Operating System: Page | 9 MODULE LIVING IN THE IT ERA – IT01 As the name suggests, it enables multiple users located at different terminals to use a computer system and to share the processor's time simultaneously. In other words, each task gets time to get executed, and thus all tasks are executed smoothly. Each user gets the processor's time as they get while using a single system. The duration of time allocated to a task is called quantum or time slice; when this duration is over, OS starts the next task. Advantages of time sharing operating system: o It reduces CPU idle time and thus makes it more productive. o Each process gets the chance to use the CPU. o It allowed different applications run simultaneously. Disadvantages of time sharing operating system: o It requires a special operating system as it consumes more resources. o Switching between tasks may hang up the system as it serves lots of users and runs lots of applications at the same time, so it requires hardware with high specifications. o It is less reliable. 3) Distributed Operating System: It uses or runs on multiple independent processors (CPUs) to serve multiple users and multiple real-time applications. The communication between processors is established through many communication lines such as telephone lines and high-speed buses. The processors may differ from each other in terms of size and function. Page | 10 MODULE LIVING IN THE IT ERA – IT01 The availability of powerful microprocessor and advanced communication technology have made it possible to design, develop, and use the distributed operating system. Besides this, it is an extension of a network operating system that supports a high level of communication and integration of machines on the network. Advantages of distributed operating system: o Its performance is higher than a single system as resources are being shared. o If one system stops working, malfunctions, or breaks down, other nodes are not affected. o Additional resources can be added easily. o Shared access to resources like printer can be established. o Delay in processing is reduced to a greater extent. o Data sharing or exchange speed is high, owing to the use of electronic mail. Disadvantages of distributed operating system: o Security issue may arise due to sharing of resources o Few messages may be lost in the system o Higher bandwidth is required in case of handling a large amount of data o Overloading issue may arise o The performance may be low o The languages which are used to set up a distributed system are not well defined yet o They are very costly, so they are not easily available. 4)Network Operating System: As the name suggests, this OS connects computers and devices to a local area network and manages network resources. The software in a NOS enables the devices of the network to share resources and communicate with each other. It runs on a server and allows shared access to printers, files, applications, files, and other networking resources and functions over a LAN. Besides this, all users in the network are aware of each other's underlying configuration and individual connections. Examples: Ms Windows Server 2003 and 2008, Linux, UNIX, Novell NetWare, Mac OS X, etc. Page | 11 MODULE LIVING IN THE IT ERA – IT01 Advantages of network operating system: o The servers are centralized that can be accessed remotely from distant locations and different systems. o It is easy to integrate advanced and recent technologies and hardware in this system. Disadvantages of network operating system: o The servers used in the system may be expensive. o The system depends on the central location and requires regular monitoring and maintenance. 5) Real-Time Operating System: It is developed for real-time applications where data should be processed in a fixed, small duration of time. It is used in an environment where multiple processes are supposed to be accepted and processed in a short time. RTOS requires quick input and immediate response, e.g., in a petroleum refinery, if the temperate gets too high and crosses the threshold value, there should be an immediate response to this situation to avoid the explosion. Similarly, this system is used to control scientific instruments, missile launch systems, traffic lights control systems, air traffic control systems, etc. This system is further divided into two types based on the time constraints: Hard Real-Time Systems: These are used for the applications where timing is critical or response time is a major factor; even a delay of a fraction of the second can result in a disaster. For example, airbags and automatic parachutes that open instantly in case of an accident. Besides this, these systems lack virtual memory. Soft Real-Time Systems: These are used for application where timing or response time is less critical. Here, the failure to meet the deadline may result in a degraded performance instead of a disaster. For example, video surveillance (cctv), video player, virtual reality, etc. Here, the deadlines are not critical for every task every time. Advantages of real-time operating system: o The output is more and quick owing to the maximum utilization of devices and system Page | 12 MODULE LIVING IN THE IT ERA – IT01 o Task shifting is very quick, e.g., 3 microseconds, due to which it seems that several tasks are executed simultaneously o Gives more importance to the currently running applications than the queued application o It can be used in embedded systems like in transport and others. o It is free of errors. o Memory is allocated appropriately. Disadvantages of real-time operating system: o A fewer number of tasks can run simultaneously to avoid errors. o It is not easy for a designer to write complex and difficult algorithms or proficient programs required to get the desired output. o Specific drivers and interrupt signals are required to respond to interrupts quickly. o It may be very expensive due to the involvement of the resources required to work. Generations of Operating System: The first generation (1945 to 1955): It was the time before the Second World War when the digital computer was not developed, and there were calculating engines with mechanical relays at this point in time. Later mechanical relays were replaced by vacuum tubes as they were very slow. But, the performance issue was not resolved even with vacuum tubes, besides these machines were too bulky and large as there were made of tens of thousands of vacuum tubes. Furthermore, each of the machines was designed, programmed, and maintained by a single group of people. The programming languages and operating systems were not known, and absolute machine language was being used for programming. These systems were designed for numerical calculations. The programmer was required to sign up for a block of time and then insert his plug board into the computer. In the 1950s, punch cards were introduced, which improved the computer performance. It allowed programmers to write programs on punch cards and read them into the system; the rest of the procedure was the same. The second generation (1955 to 1965): This generation started with the introduction of transistors in the mid-1950s. The use of transistors made the computers more reliable, and they began to be sold to customers. These machines were called mainframes. Only the big organization and government corporations could afford it. In this machine, the programmer was required to write the program on a paper then punch it on cards. The card would be taken to the input room and handed over to an operator to Page | 13 MODULE LIVING IN THE IT ERA – IT01 get the output. The printer provides the output which was taken to the output room. These steps made it a time-consuming task. So, the batch system was adopted to address this issue. In a batch system, the tasks were collected in a tray in the form of batches in the input room and read onto a magnetic tape, which was taken to the machine room, where it was mounted on a tape drive. Then using a special program, the operator was to read the first task or job from the tape and run it, and the output was generated onto a second tape. OS automatically read the next job from the tape, and Jobs were completed one by one. After the completion of the batch, the input and output tapes were taken off, and the next batch was started. The printouts were taken from the output tape. It was mainly used for engineering and scientific calculations. The first OS was used in this generation in computers was called FMS (Fortran Monitor System), and IBMSYS, and FORTRAN were used as a high-level language. The third generation (1965 to 1979): This generation began with the introduction of 360 family of computers of IBM in 1964. In this generation, transistors were replaced by silicon chips, and the operating system was developed for multiprogramming, some of them even supported batch processing, time sharing, real-time processing, at the same time. The fourth-generation operating system (1979 to Present): This generation of OS started with the introduction of personal computers and workstations. Chips that contain thousands of transistors were introduced in this generation that made possible the development of personal computers that supported the growth of networks and thus the development of network operating systems and distributed operating systems. DOS, Linux, and window operation systems were are few examples of OS of this generation. For more knowledge about operating system, please check the link provided; https://www.youtube.com/watch?v=rWp3dSrWx-w&ab_channel=ClayDeskE-Learning REFERENCES https://www.javatpoint.com/software https://www.javatpoint.com/program https://www.javatpoint.com/operating-system Page | 14