History of Operating System

Computer operating systems (OSes) provide a set of functions needed and used by most application programs on a computer, and the links needed to control and synchronize computer hardware.

History of Operating System

History of Operating System's -

          The earliest computers were mainframes that lacked any form of operating system. Each user had sole use of the machine for a scheduled period of time and would arrive at the computer with program and data, often on punched paper cards and magnetic or paper tape. The program would be loaded into the machine, and the machine would be set to work until the program completed or crashed. Programs could generally be debugged via a control panel using dials, toggle switches and panel lights.


          Symbolic languages, assemblers and compilers were developed for programmers to translate symbolic program-code into machine code that previously would have been hand-encoded. Later machines came with libraries of support code on punched cards or magnetic tape, which would be linked to the user's program to assist in operations such as input and output. This was the genesis of the modern-day operating system; however, machines still ran a single job at a time. At Cambridge University in England the job queue was at one time a washing line from which tapes were hung with different colored clothes-pegs to indicate job-priority.


          As machines became more powerful the time to run programs diminished, and the time to hand off the equipment to the next user became large by comparison. Accounting for and paying for machine usage moved on from checking the wall clock to automatic logging by the computer. Run queues evolved from a literal queue of people at the door, to a heap of media on a jobs-waiting table, or batches of punch-cards stacked one on top of the other in the reader, until the machine itself was able to select and sequence which magnetic tape drives processed which tapes. Where program developers had originally had access to run their own jobs on the machine, they were supplanted by dedicated machine operators who looked after the machine and were less and less concerned with implementing tasks manually. When commercially available computer centers were faced with the implications of data lost through tampering or operational errors, equipment vendors were put under pressure to enhance the runtime libraries to prevent misuse of system resources. Automated monitoring was needed not just for CPU usage but for counting pages printed, cards punched, cards read, disk storage used and for signaling when operator intervention was required by jobs such as changing magnetic tapes and paper forms. Security features were added to operating systems to record audit trails of which programs were accessing which files and to prevent access to a production payroll file by an engineering program, for example.


          The true descendant of the early operating systems is what is now called the "kernel". In technical and development circles the old restricted sense of an OS persists because of the continued active development of embedded operating systems for all kinds of devices with a data-processing component, from hand-held gadgets up to industrial robots and real-time control-systems, which do not run user applications at the front-end. An embedded OS in a device today is not so far removed as one might think from its ancestor of the 1950s. The operating system came about as a way to manage the input and operation of these programs, using techniques such as batch processing and multitasking.


          The earliest computers, such as the Colossus and the ENIAC, had to be programmed by physically manipulating the machines’ switches and cables. In the 1950s, computers developed the ability to run programs and input data inscribed onto punched cards or tape; there were also computers that had built-in programs that could support or interact with the user’s punched card-based programs.


          The first operating system designed to be compatible with multiple different models of computers was the IBM OS/360, announced in 1964; before this, each computer model had its own unique operating system or systems. Later in that same blog post, we discussed the development of the desktop operating system from its origins in the first mouse-driven graphical user interface (GUI), the oN-Line System (NLS) at the Stanford Research Institute in the 1960s, to the first commercially-successful computer with a mouse-driven GUI operating system, the first Apple Macintosh of 1984.


Programmed Data Processor-1 (PDP-1). The PDP-1 was developed by the Digital Equipment Corporation (DEC) in 1959. Its operating system was to first to focus on interaction between the user and the computer, instead of the computer just spitting out a result based on what the user put into it. The PDP-1’s was also first minicomputer operating system to have a video game played on it.


Programmed Logic for Automatic Teaching Operations (PLATO). The University of Illinois developed the first PLATO operating system in 1960, and continued to come out with new versions until the mid-1970s. The innovative features of PLATO included sound, touchscreens, message boards, email, chat rooms, instant messaging, and screen sharing. It was one of the main influences, along with the oN-Line System, on the team that in 1981 developed the Xerox Star, the first commercially-available computer with a mouse-driven GUI.


Master Control Program (MCP). Burroughs, a computer manufacturer and a former incarnation of Unisys Corporation, developed MCP in 1961. It was the first operating system to be written in a high-level programming language instead of assembly language.

Unix. AT&T Bell Labs developed Unix in 1972. Unix was the first computer operating system to be widely adopted by multiple different computer manufacturers. Versions of it are still widely used in servers today, and the Linux, Android, and Apple OS X operating systems are heavily based on it. The name “Unix” is a pun on the name of the OS’s less popular predecessor, Multiplexed Information and Computer Services (Multics).


Berkeley Software Distribution (BSD). BSD was created by researchers at the University of California, Berkeley, in 1977. It was derived from one of the early versions of Unix. BSD itself isn’t used by anyone these days, but parts of it have been incorporated into BSD-based open source operating systems, as well as Microsoft Windows and Apple OS X and iOS.