A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://www.notesjam.com/2017/09/evolution-of-operating-system.html below:

Evolution of Operating Systems

The evolution of operating systems (OS) can be traced back to the 1950s when computers were first invented. Over the years, operating systems have evolved significantly, adapting to changing hardware and software environments.

Initially, operating systems were simple and designed to provide basic functionality to users, but with the advent of new technologies, the complexity of operating systems increased to support more sophisticated tasks.

Evolution of Operating System

Today, operating systems are an integral part of computing and are used in various devices, including desktops, laptops, smartphones, and tablets, among others.

The evolution of OS since 1950 is described in detail in this article. Here, we will discuss six main types of operating systems that have been evaluated over the past 70 years.

Serial Processing

The history of operating systems began in 1950. Before 1950, programmers directly interacted with the hardware as there was no operating system available at that time. If a programmer wished to execute a program in those days, the following sequential steps were necessary.

Drawback

This type of processing is difficult for users, it takes much time and the next program should wait for the completion of the previous one. The programs are submitted to the machine one after one, therefore the method is said to be serial processing.

Batch Processing

Before 1960, it was difficult to execute a program using a computer because the computer was located in three different rooms, one room for the card reader, one room for executing the program, and another room for printing the result.

The user/machine operator runs between three rooms to complete a job. We can solve this problem by using batch processing.

In the batch processing technique, the same type of jobs batch together and execute at a time. The carrier carries the group of jobs at a time from one room to another.
Therefore, the programmer need not run between these three rooms several times.

Multiprogramming

Multiprogramming is a technique used to execute multiple programs simultaneously on a single processor.

In multiprogramming, several processes reside in the main memory at the same time. The operating system (OS) selects and begins to execute one of the programs in the main memory.

The following figure depicts the layout of a multiprogramming system in which the main memory can hold up to 5 jobs at a time, and the CPU executes them one by one.

Multiprogramming

In a non-multiprogramming system, the CPU can only execute one program at a time. If the running program is waiting for any I/O device, the CPU becomes idle, which negatively affects the CPU’s performance.

In a multiprogramming environment, if a process is waiting for I/O, the CPU switches from that process to another process in the job pool. As a result, the CPU is not idle at any time.

Advantages

Multiprogramming in operating systems offers several advantages, including:

Time Sharing System

Time-sharing or multitasking is a logical extension of multiprogramming, in which multiple tasks are executed by the CPU by switching between them.

The CPU scheduler selects a task from the ready queue and switches the CPU to that task. When the time slice assigned to a task expires, the CPU switches from that task to another task.

In this method, the CPU time is shared among different processes, making it a ‘Time-Sharing System’. Generally, the time slices are defined by the operating system.

Advantages

The main advantage of a time-sharing system is the efficient utilization of CPU resources. It was developed to provide interactive use of a computer system at a reasonable cost.

A time-sharing operating system uses CPU scheduling and multiprogramming to provide each user with a small portion of a time-shared computer.

Another advantage of a time-sharing system over a batch processing system is that the user can interact with the job while it is executing, which is not possible in batch systems.

Parallel System

There is a trend in multiprocessor systems, such systems have more than one processor in close communication, sharing the computer bus, the clock, and sometimes memory and peripheral devices.

These systems are referred to as “Tightly Coupled” systems. Then the system is called a parallel system. In the parallel system, many processors are executing their jobs in parallel.

Advantages

Parallel operating systems offer several advantages, including

Distributed System

In a distributed operating system, the processors cannot share a memory or a clock, each processor has its local memory. The processor communicates with one another through various communication lines, such as high-speed buses. These systems are referred to as “Loosely Coupled” systems.

Advantages

If multiple sites are connected by high-speed communication lines, it is possible to share resources from one site to another.

For example, let’s consider two sites, s1 and s2, which are connected by communication lines. Suppose s1 has a printer, but s2 does not. Then, in a distributed operating system, it is possible to access the printer from s2 without physically moving to s1.

Therefore, resource sharing is possible in a distributed operating system.

In distributed systems, a large computer is partitioned into several sub-systems, which are run concurrently.

If a resource or system fails in one site due to technical problems, we can use other systems or resources in some other sites. Therefore, the reliability of a distributed system increases.


RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4