[0:01]Welcome to another session for uh computer softwares and understanding uh details about computer softwares. Uh my name is Mu Nyaga and uh we want to understand more about computer software. So uh previously we had discussed uh about hardware and you're aware that computer hardware is useless without uh a software. So how can we define a software? A software is a set of programs that instructs the computer about the tasks to be performed. Software tells the computer how the task are to be performed or how the hardware carries out these task. Uh different sets of software can be loaded on the same hardware to perform different kind of tasks. For example, a user can use a computer or the same computer hardware for writing a report or for running a payroll program. Softwares can be broadly classified into two categories. We have the first one which is the system software and the second one the application softwares. Uh, we can start discussing the first one. Uh the system software provides uh the basic functions that are performed by the computer and the application software is used by the users to perform specific uh task. And this is the uh the image or how we can uh understand more about software. You can see on the on the inner side we have the hardware and then on the outer circle uh or triangle, we have the system software, application software and then on the outer uh uh square we have the users who are commonly referred to as uh the users or the livewares. So let's start understanding more about the system softwares. Um the system software provides the basic functionalities to the computer. System software is required for the for the working of the computer itself. So without the working of the computer without the system software, the computer cannot work. The user of the computer does not need to be aware about the functioning of the system software while using the computer. For example, uh this is a very good example. When you buy a computer, the system software would also include different device drivers. When you request for using any of these devices, the corresponding device driver software interacts with the hardware device to perform the specific request. If the appropriate device driver for any device a particular model of a printer is installed on the computer while printing on this printer it means the computer um cannot work. The purpose of the system software are to provide uh the basic functionality to the computer, control the computer hardware and uh act as the interface between user, application software and computer hardware. Right? On the basis of their functionality, system software may be broadly divided into two categories. Right? We have the system software for management and functionalities of the computer and secondly, we have the system software for the development of application of the application and other softwares. So we can start discussing um about um the system software for the management and functionalities of the computer. Um it relates to um to the functioning of different components of the computer like the processor, input devices, uh output devices, etc. The system software is required for managing the operations performed by the components of the computer and the devices attached to the computer. It provides support for various uh services as requested by the application software. An example, we have the operating system, which automatically is an example of a system software. We have the drivers, we mentioned it earlier and we have the system utility software that constitute the system software for management of the computer uh for the computer and its resources. Remember, uh resources management is very, very important factor in uh the operations of a computer. Let's discuss discuss about uh the system software for the development of the application and other software. We have uh it provides uh services required for the development and execution of the application and other software. System software provides the software tools required for the development of application software. Um we have uh the programming languages softwares, example Java, uh we have the C C Class, we have translator software, we have loader and we have the linker. Are also categorized as the system software and are required for the application software development, right? Take note, we have the element of uh uh programming languages fall in three categories, programming languages fall into three categories. Um so the system software for management and functionalities um of the computer, we can start discussing about the operating system abbreviated as an OS. Uh which is an important part of a computer. OS intermediate between the user of a computer and the computer hardware. 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.
[8:58]So sometimes uh somebody might ask you, what is an operating system? So um an operating system can be defined as a program that controls the execution of application programs and acts as the interface between the user of the computer and the computer hardware.
[9:24]Take note that the the operating system runs all the time while the computer is in use. Right? Uh these are some of the goals um some of the goals of of an operating system.
[9:53]First is to control uh execute the user and the application programs and to make sure that the computer system is convenient to use. Uh easily to solve the user problems and use the computer hardware in efficient manner. Right? So these are some of the key these are some of the key functions of an operating system, right? Uh but before we start we can just have a highlight of a statement where we can say an operating system is large and complex software consisting of several components.
[10:47]Each component of an operating system performs specific task to provide the overall functionality of an operating system. The key function of an OS are, right, to provide an environment in which uses 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.
[11:39]Right? Uh the third one, it controls the execution of different programs to prevent occurrence of errors or maybe the most common the hanging of the computer or when uh maybe the memory is over used and others.
[12:05]Right? It also provides uh a convenient interface to the users in the form of commands and graphical interface, which facilitates the use of the computer. So uh in a nutshell um we can uh just uh divide the use of computer in different formats. Like we can say the first work of uh of the operating system is process management, um which involves the control access to shared resources like the memory. We have the control execution of application, we have uh how to create, execute and delete a process. Cancel or resume a process, schedule a process, synchronize communication and deadlock handling for processes. Right? That uh that's what we mean by the process management. And the other side, we mentioned about memory management. Uh memory management, the activities of the memory management are exclusively handled by the operating system, which is to allocate the memory, free the memory, uh allocate memory to a program when uh when used block is is done with the using and keep track of the memory usage. Right? That's on the memory management. On the third one, we have the file management. Um which involves the creation and deletion of files, directories, provide the access to files, allocate space for files, keep backup for the files and security files. That's all about the file management. On the other side, we have the device management.
[14:14]Uh handles the task which is open, close, right, device drivers, communicate and control and monitor each device, each device driver that is there. Right? Those are the four major uses of our operating system, but we have others like protection and security. Right? How can I explain further about that? The OS or the operating system protects the resources of the system, the users, authentication like you have to input the password. File attributes like upgrade, write, encryption, backup for data used by the operating system to provide basic operation. Um and that will bring a question about um about the open source, the open source software and the commercial software, which is save. We can do that as an assignment. Right? So the last use of um the operating system might we can talk about the user interface or the command prompt. Most uh books talk about the graphical user interface, but um the work of the operating uh system provides an interface between the computer, user and the computer hardware. The user interface is a set of commands or a graphical user interface via which the user interacts with the application and the hardware. Right? So those are the six major functions of an operating system, which is the process management, memory management, file management, device management, um protection and security of the computer, the user interface or command interpreter of the computer. So uh we can move on and uh just try understanding about types of operating system. So operating systems are classified in different types depending on their capability of processing. We have the first one which is the single user and single tasking. We have the second one which is the single user and multitasking. We have uh the multiuser, which is the third one, the fourth one, multiprocessing, real-time and embedded. So we can start discussing the first one, which is uh the single user and the single task operating system. It is used by single user for a standalone single computer for performing a single task. Operating system for personal computers, PC are single user OS. For example, if the user is editing a document, then a document cannot be printed on the printer simultaneously. Single user OS are simple operating system designed to manage one task at a time. MS-DOS is an example of single user OS.
[18:00]We can move to the next one, which is the single user and multitasking OS. It allows execution of more than one task or process concurrently. The processor time is divided among different tasks. This OS types are also called time sharing OS. The processor switches rapidly between processes.
[18:43]For a good example would be the user can listen to music on the computer while writing an article using the word processor software. The user can switch between application and also transfer data between them. Right? A good example would be Windows uh the Windows 7, Windows 10 operating system. I'm not biased uh based uh on my examples, but those are most common uh which uh help um uh with this process. Right? Uh we can move on to the next one, which is called the multi-user operating system. Uh and it is used in computer networks that allow same data and applications to be accessed by multiple users at the same time. The users can also communicate with each other. A good example is Linux, which is an open source, Unix, Windows Server, owned by Microsoft. We have Windows 7 and most of the Windows family operating system are example of multiuser operating system. Um we can move on, we have the real time operating system. Uh they are designed to respond to an event within a predetermined time. These operating systems are used to control processes. Processing is done within a time constraint. OS monitors the events that affect the execution of process and respond accordingly.
[20:43]They are used to respond to queries in needs like the medical imaging system, industrial control systems. Um a very good example would be links operating system, that is an example of real time operating system. The spelling of the links is L Y N X. If you read more about the links, you will understand why we have that. We move to the next one, which is the embedded operating system. Uh the embedded uh it's um embedded in a device in the ROM. They are specific to a device and are less resource intensive. They are used in appliances like microwaves, washing machine, traffic control systems, uh understand the old traffic control systems. Because these days we have the intelligent uh traffic control system, which are more interactive and results intensive. Let's move on, with something, uh we've been mentioning about the device drivers. Anytime you think about uh a driver in uh the real world, you know, an example, a car can never move from one point uh without a driver. Right? Uh sometimes even the uh the automatic cars that are being developed, they have to have an element that has something or a computer that try to mimic um what a driver does. So a computer has some uh software referred to as the device drivers. So 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.
[23:09]Um some device, some devices that are commonly connected to the computers are keyboard. We have the mouse, we have the hard disk, we have the printer, we have the speakers, we have the joystick, webcams, scanners, digital cameras and monitor. For proper working of a device, its corresponding, um is corresponding device must be installed on the computer. For example, when you give a command to read uh data from a hard disk, the command is sent to the hard disk drive 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 drivers. Right? Uh just to for you to understand, we have um maybe a joystick, which is a gaming pad, where you if you connect it on your computer and it's not really working or it's not responding or the pads are not really working. The first thing that you need to do is check about the device drivers. Right? Download it specific for that button. Another common one is and uh they sometimes come with the with the with the hardware. Right? Printers the same, when you connect a printer and you try printing and you cannot find the printer active and you've done all the physical connection, the first thing you do or how you troubleshoot, you just check whether the device drivers are available and in can't play um the some operating system are mostly the commercial one are improving day by day. Day by day, they are making sure that most uh most hardwares like the keyboards, monitors, printers are compatible with their systems. So they're working closely with the manufacturers so that um the operating system try to make sure that the device drivers or the host other devices. Let's move on. We have the system utilities. Um the 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. And whenever you hear about utilities, um in your mind, just think about uh something like internet is an example of uh is a utility these days in our home. But in some in some houses, it's not a utility, but water, electricity, um communication, uh roads, infrastructure. All those are uh utilities that you have uh to put them maybe in your computer to enhance, right? So anytime you think about uh utilities or system system software, these are things that a computer can be added. Some are included in the operating system, but examples include antiviruses, we have data compression uh software, we have uh disk compression, uh disk cleaners, we have system profilers, we have backup programs, we have network managers. All these uh examples of uh system utilities. Remember, we still discussing about system software, which is a very, very wide uh topic. So we can move on. We have um we still on that, the other part is system software for development of application and other programs. Right? Remember that uh we have programming languages that develop the application uh software. These can be grouped under system softwares uh under system softwares. So uh what is a programming language? A programming language consists of a set of vocabulary and grammatical rules to express some computations and task that a computer has to perform.
[28:10]Programming languages are used to write a program, which controls the behavior of a computer, codify the algorithm precisely or enables the human computer interface.
[28:27]Each language has a unique or key words and the special syntax for organizing um organizing program instructions. The programming language should be understood both by the programmer. The programmer is somebody who is writing the program and the computer. A computer understands the language of zeros and one. Remember that's the basic of a computer. While the programmer is more com more comfortable with English-like language. So programming language is usually perform usually refers to the high level languages. That's an example like compile, basic, uh C plus plus C, Java, JavaScript, uh um programming languages fall in three categories. Programming languages fall into three categories. The first one which is referred to as the machine language.
[29:48]The machine language is what the computer can understand, but it is difficult for the programmer to understand. A program written in machine language is a collection of binary digits or bits that the computer reads and interprets.
[30:14]It is a system of instruction and data executed directly by the computer CPU. It is also referred to as the machine code or the object code. It is written using zeros and ones. The other one is the assembly language.
[30:44]The assembly language falls between the machine language and high-level language. They allow the programmer to substitute the names of numbers. A program written in assembly language uses symbolic representation of machine code needed to program a particular processor CPU or processor family.
[31:18]The representation is defined by the CPU manufacturer and is based on the abbreviation that help the programmer remember individual instruction registers, etc. The high-level language is easy is easier to understand and the user of the programmer, but difficult for the computer.
[31:58]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 the computer. A high-level language makes the processor, the process of developing programs simpler and more understandable with respect to assembly machine-level language. So we just discussed uh in detail more about all the system software, how we have grouped different um different types of system software, different different categories. So we move to the next type of software, which is the application software. So the application software um are written for different kind of applications such as graphics. 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 that are written for specific purpose and provide uh the required functionality of a specific task or for a specific software package. Um application software, um are written for different kind of applications such as graphics, word processors, media players, database applications, telecommunication, accounting purposes, uh like uh Facebook, uh social media, all those are examples. So we have different types of softwares that we have displayed, which are word processor, uh image processing software, we have the accounting software, we have the spreadsheet softwares and we have the presentation softwares. With that, I think uh we have concluded the lesson for uh softwares. And I really appreciate. Keep on uh giving us comments and all the best in whatever you do. Thank you.



