History of operating systems, Operating System

Assignment Help:

Operating Systems have evolved tremendously in the last few decades. The first approach for building Operating Systems, taken during the 40s through early 60s, was to allow only one user and one task at a time. Users had to wait for a task to be finished before they could specify another task, or even interact with the computer. In other words, not only were OS's single-user and single-tasking, there was no overlapping between computation and I/O.

The next step in the development of OS's was to allow batch processing. Now, multiple "jobs" could be executed in a batch mode, such that a program was loaded, executed, output was gener- ated, and then the cycle restarted with the next job. Although in this type of processing there was still no interference or communication between programs, some type of protection (from poorly or maliciously written programs, for instance) was clearly needed. Allowing overlap between I/O and computation was the next obvious problem to be addressed. Of course, this new feature brought with itself a series of new challenges, such as the need for buffers, interrupt handling, etc.

Although the OS's from this time allowed users to interact with the computer while jobs were being processed, only one task at a time was permitted. Multiprogramming solved this, and it was a task of Operating System to manage the interactions between the programs (e.g. which jobs to run at each time, how to protect a program's memory from others, etc). All these were complex issues that effectively led to OS failures in the old days. Eventually, this additional complexity began to require that OS's be designed in a scientific manner.

During the 70s, hardware became cheap, but humans (operators, users) were expensive. During this decade, interaction was done via terminals, in which a user could send commands to a main- frame. This was the Unix era. Response time and thrashing became problems to be dealt with; OS's started to treat programs and data in a more homogeneous way.

During the 80s, hardware became even cheaper. It was then that PCs became widespread, and very simple OS's, such as DOS and the original Mac OS, were used. DOS, for example, was so simple that it didn't have any multiprogramming features. From the 90s on (until today), hardware became even cheaper. Processing demands keep increas- ing since then, and "real" OS's, such as Windows NT, Mac OS X and Linux, finally became available for PCs. Operating systems are now used in a wide range of systems, from cell phones and car controller computers, to huge distributed systems such as Google.


Related Discussions:- History of operating systems

What is meant by the phrase thread-safe, The term thread-safe in computer p...

The term thread-safe in computer programming describes that routine or portion of the program that may be called from multiple programming threads without uncalled for interactions

Define unix device driver, Define UNIX device driver The UNIX device dr...

Define UNIX device driver The UNIX device driver is structured into two halves called top half and bottom half

Processes and threads, Processes and threads each have their place in multi...

Processes and threads each have their place in multi-programming, generally to hide latency and to maximize CPU utilization. With the continuing spread of multi-core processors in

Batch system, what is a batch system give me answer in simple words so that...

what is a batch system give me answer in simple words so that i can understand

What are the phases of background processing, What are the phases of backgr...

What are the phases of background processing? Phases are:- Job Scheduling. Job Processing. Job Overview.

What is banker''s algorithm, What is banker's algorithm? Banker's algor...

What is banker's algorithm? Banker's algorithm is a deadlock avoidance algorithm that is applicable to a resource-allocation system with multiple examples of each resource type

Design issues of network operating system, expalin about the design issues ...

expalin about the design issues of network operating system

What are overlays?, What are over lays? If a large process enters which...

What are over lays? If a large process enters which is huge than the available memory we are able to use overlays. In this we can divide process into pieces .which is recognize

Explanation of computer clustering and benefits, The CTO is still impressed...

The CTO is still impressed with your work. He just came back from a technology exposition where he heard about computer clusters. All he knows is that they are the big thing for bu

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd