What is Computer Operating System | OS Tutorials YASH PAL, May 7, 2026May 7, 2026 A Modern computer consists of one or more processors, main memory, disks, printers, a mouse, keyboard, network interface, and various other input/output devices, which results all in a complex system. Hence, managing all these components and efficiently using them is a challenging job. For this reason, computers are equipped with a layer of software called the operating system.Table of Contents Computer Operating SystemDefinition of Operating SystemNeed for an Operating SystemResponsibilities of an Operating SystemGeneration of Operating SystemServices Provided by the Operating SystemComputer Operating SystemThe job of the operating system is to provide user programs with a better, simpler, cleaner model of the computer and to handle and manage all the resources. Mostly, people used to interact with the shell, which is basically a program that is text-based, and the GUI (Graphical User Interface), when it uses icons, is actually not part of the operating system, although it uses the operating system to get its work done.Definition of Operating SystemAn operating system is a program that acts as an intermediary between a user of a computer and the computer hardware. It provides an environment in which a user can execute their programs.Goals of the operating system:Primary – To make the computer system convenient to use.Secondary – To use the computer hardware in an efficient manner.We can also say that an operating system runs on computer hardware and serves as a platform for other software to run on the computer system.Need for an Operating SystemAn operating system is an important part of almost every computer system. Internally, an operating system acts as a manager of the resources of the computer system. In this role, the operating system keeps track of the status of each resource and decides who gets a resource, for how long, and when.In a system that supports concurrent execution of programs, the operating system resolves conflicting requests for resources in a manner that preserves system integrity and, in so doing, attempts to optimize the resulting performance. In general, the primary objective of an operating system is to increase the productivity of processing resources such as computer hardware or computer system users.Examples of popular modern operating systems are the Windows family, which includes Windows 95, 98, 2000, NT, Vista, the UNIX family, which includes UNIX, Mac OS X, LINUX, GNU/LINUX, BSD, many other derivations, and the Macintosh Operating system. Many other OS are also available for special-purpose applications, including specialization for Mainframes, Robotics, real-time systems, and so on.Responsibilities of an Operating SystemAn operating system has three main responsibilities:Perform basic tasks, such as recognizing input from the keyboard, sending output to the display screen, keeping track of files and directories on the disk, and controlling peripheral devices such as disk drives and printers.Ensure that different programs and users running at the same time do not interfere with each other.Provide a software platform on top of which other programs (i.e., application software) can run.The first two responsibilities address the need to manage the computer hardware and the application programs that use the hardware. The third responsibility focuses on providing an interface between application software and hardware so that application software can be efficiently developed. Since the operating system is already responsible for managing the hardware, it should provide a programming interface for application developers.Generation of Operating SystemThe operating system is directly related to the computer architecture, so we get knowledge to study the history of the operating system from the architecture of the computers on which they run. Operating systems have evolved through many distinct phases or generations, which correspond roughly to the decades.The First Generation (1940’s): In the first generation, the initial stage of the electronic digital computer had no operating system. Machines of that time were so primitive that programs were often entered one bit at a time on rows of mechanical switches (plug boards). Programming languages were unknown (not even assembly language). Operating systems were not available.The Second Generation (1950’s): 1950’s the technology had also improved with the introduction of punch cards. General Motors’ research laboratories implemented the first operating system in the early 1950’s for their IBM 701. The system of the 50’s generally ran one job at a time. They were called a single-stream batch processing system because programs and data were submitted in groups or batches.The Third Generation: The systems of the 1960’s were also batch processing systems in a batch operating system; several jobs are running at once, so it’s an advantage of using computer resources. So, operating system designers developed the concept of multiprogramming, which means several jobs are in main memory at once, a processor is switched from job to job as needed to keep several jobs advancing while keeping the peripheral device in use.For example, in the system with no multiprogramming, when the current job paused to wait for other I/O operations to complete, the CPU simply sat idle until the I/O finished. The solution for this problem involved partitioning memory into several pieces, with a different job in each partition. While one job was waiting for I/O to complete, another job could be using the CPU.Spooling (Simultaneous peripheral operation on line) is a technique of an operating system in the third generation. In spooling a high-speed device like a disk interposed between a running program and a low-speed device involved with the program in input/output, instead of writing directly to a printer. For example, outputs are written to the disk. The program can run to completion faster, and other programs can be initiated sooner when the printer becomes available, and the output may be printed.Note that the spooling technique is much like a thread being spun to a spool so that it may later be unwound as needed. In the third generation, another feature was the time-sharing technique. Time-sharing systems were developed to multiprogram a large number of simultaneous interactive users.Fourth Generation: With the development of LSI (Large Scale Integration) circuits, chips, and operating systems, the personal computer and the workstation age began. Microprocessor technology evolved to the point that it became possible to build desktop computers as powerful as the mainframe of the 1970’s. Two operating systems have dominated the personal computer.Scene: MS-DOS, written by Microsoft, Inc. For the IBM PC and other machines using the Intel 8088 CPU and its successors, and UNIX, which is dominant on the large personal computers using the Motorola 6899 CPU family.Services Provided by the Operating SystemThe OS typically provides services in the following areas:Program Development: The OS provides a variety of facilities and services, such as editors and debuggers, to assist the programmer in creating a program.Program Execution: Several steps need to be performed to execute a program instruction, and data must be loaded into main memory. I/O devices and files must be initialized, and other resources must be prepared. OS handles all these duties for the user.Access to I/O devices: Each I/O device requires its own set of instructions or control signals for operation. OS provides a uniform interface that hides these detailsControlled access to files: For accessing any file, the OS must understand not only the nature of the I/O device but also the structure of the data contained in the files on the storage medium.System Access: For a shared or public system, the OS controls access to the system as a whole and to specific system resources. Access function must provide protection of resources and data from unauthorized users.Error Detection and Response: A variety of errors can occur while a computer system is running, such as a memory error or a device failure, etc. OS must provide a response that clears the error with the least impact on the running application.Accounting: A good OS will collect usage statistics for various resources and monitor performance parameters such as Response time. On a multiuser system, the information can be used for billing purposes. engineering subjects Operating System Operating System