We often come across this term “Operating System”, but do we really know what it means?
A computer is a machine. It can understand whatever “instructions” are given to it, but it cannot think on its own.
It can only execute only those instructions that are given to it. A set of instructions that perform a particular task are often referred to as a “program”, or as “application” or simply as “app”. For example, you are using a web-browser program to view this website.
Since the computer is a device made up of different hardware, there must be a program which will interact with the hardware and present an interface to the user through which he will be able to interact and extract work out of the hardware. This task is done by the Operating System (OS). There are some hardware/devices which the Operating System supports right away without you having to do anything about it. But there may be some hardware/devices which are not yet supported by the Operating System due to certain limitations or due to the fact that they came out after the Operating System was released. Thus your Operating System will not know how to interact with such hardware, and you will not be able to use that hardware/device. For such hardware/devices, you need to install certain “drivers”. These drivers basically fill in the missing link, and once these drivers are installed, your hardware should work normally. Besides this, an Operating System does many more tasks.
Besides providing an interface to the hardware, the Operating System helps manage software resources on a computer. It provides a layer of abstraction to the other programs on the computer so that other applications can take advantage of the hardware resources and perform their tasks. The Operating System also helps you access files that are stored in your computer.
Since Operating System is such an important program, it is important for it to be secure. Thus, another important task of the Operating System is to be able to secure itself from unauthorised access and untoward programs which might have some negative impact on any of the files in the computer. This ability of an Operating System can be supplemented by various other programs like antivirus or firewall (these will be covered in a later article).
An Operating System also does user management wherein it manages how the various users log in to the system and are able to do their work. The Operating System also manages the separation of data of various users.
An Operating System can either support multi-tasking or not. If a system supports multi-tasking, it means that various programs can execute in parallel (the details of how an Operating System does this are beyond the scope of this article). All the commonly existing Operating Systems existing today support multi-tasking. The fact that you are able to see this website in a web-browser means that the Operating System on your computer/device supports multi-tasking since graphical rendering almost always uses multi-tasking.
Initially the Operating Systems were text-based, meaning that you could only see text based screen wherein you had to type the next program that you wanted to execute and in return the output of the program was shown to you in text based format only. You could not edit images or see videos on such Operating Systems. But that was a long way back. Now the majority of Operating Systems have a graphical interface wherein you can see the contents of files and folders as graphical content and can interactively use them rather than typing every command on a keyboard. Thus now you are able to see images and videos on modern Operating Systems. The web-browser you are using to view this website is most probably on a graphical Operating System.
A kernel is the central and most important part of an OS. Kernel is one of the first program that executes in a computer since it loads/executes the rest of the programs that constitute the whole of an OS.
It manages CPU & memory resources as well as all processes/programs on any computer. A kernel handles all requests that are made to the underlying hardware.
Often one talks about 32-bit OS or 64-bit OS. A ‘bit’ is the basic unit of storage in a computer, i.e. 0 (zero) or 1 (one). Thus being able to process more data in a cycle of operation being performed by the computer will lead to better performance. A 32-bit OS can process 32-bit data in one cycle and a 64-bit OS can process 64 bits of data in a cycle. This doubling of processing capability leads to better performance. There were 8-bit and 16-bit OSs earlier, but they aren’t used much these days by regular users. A 32-bit OS will work on a 64 bit computer due to backward compatibility, but a 64-bit OS will not be able to work on a 32-bit computer since a 64-bit OS will use a new technology which will not be supported by the 32-bit hardware.
Since the advent of small-sized devices that operate and perform a specific operation (called embedded devices), the need for small-sized Operating Systems was felt. This gave rise to embedded Operating Systems which were light-weight and compact in size so that they are efficient at the specific task that they perform.
For Wikipedia entry on Operating System, click here.
For more posts on Operating Systems, click here.
For more posts in The Cyber Cops project, click here.