Home | | Operating Systems | Evolution of Operating System

Chapter: Operating Systems : Process and Threads

Evolution of Operating System

Serial Processing - 1940’s – 1950’s programmer interacted directly with hardware. No operating system.



1. Serial Processing - 1940’s – 1950’s programmer interacted directly with hardware. No operating system.




Scheduling - users sign up for machine time. Wasted computing time


Setup Time- Setup included loading the compiler, source program, saving compiled program, and loading and linking. If an error occurred - start over.


2. Simple Batch Systems


Improve the utilization of computers.


Jobs were submitted on cards or tape to an operator who batches jobs together sequentially. The program that controls the execution of the jobs was called monitor - a simple version of an operating system. The interface to the monitor was accomplished through Job Control Language (JCL). For example, a JCL request could be to run the compiler for a particular programming language, then to link and load the program, then to run the user program.


Hardware features:


Memory protection: do not allow the memory area containing the monitor to be altered


Timer: prevents a job from monopolizing the system




Bad utilization of CPU time - the processor stays idle while I/O devices are in use.


3. Multiprogrammed Batch Systems


More than one program resides in the main memory. While a program A uses an I/O device the processor does not stay idle, instead it runs another program B.



New features:


Memory management - to have several jobs ready to run, they must be kept in main memory


Job scheduling - the processor must decide which program to run.


4. Time-Sharing Systems


Multiprogramming systems: Several programs use the computer system.


Time-sharing systems: Several (human) users use the computer system interactively.




·Using multiprogramming to handle multiple interactive jobs ·Processor’s time is shared among multiple users

·Multiple users simultaneously access the system through terminals



5. Operating-System Services


The OS provides certain services to programs and to the users of those programs.


1.  Program execution:

The system must be able to load a program into memory and to run that program. The program must be able to end its execution, either normally or abnormally (indicating error).


2.  I/O operations:


A running program may require I/O. This I/O may involve a file or an I/O device.


3.  File-system manipulation:


The program needs to read, write, create and delete files.


4.  Communications :


In many circumstances, one process needs to exchange information with another process. Such communication can occur in two major ways. The first takes place between processes that are executing on the same computer; the second takes place between processes that are executing on different computer systems that are tied together by a computer network.


5.  Error detection:


The operating system constantly needs to be aware of possible errors. Errors may occur in the CPU and memory hardware (such as a memory error or a power failure), in I/O devices (such as a parity error on tape, a connection failure on a network, or lack of paper in the printer), and in the user program (such as an arithmetic overflow, an attempt to access an illegal memory location, or a too-great use of CPU time). For each type of error, the operating system should take the appropriate action to ensure correct and consistent computing.


6.  Resource allocation:


Different types of resources are managed by the Os.


When there are multiple users or multiple jobs running at the same time, resources must be allocated to each of them.


7.  Accounting:


We want to keep track of which users use how many and which kinds of computer resources. This record keeping may be used for accounting or simply for accumulating usage statistics.


8.  Protection:


The owners of information stored in a multiuser computer system may want to control use of that information. Security of the system is also important.


6. CP derivatives


1.           CP


2.          CP-VM

3.          CP/M

1.     CP/M-86


2.     DOS


3.     DRDOS


1.    FreeDOS


4.           Microsoft Windows


1.     Windows 3.x


2.     Windows 95/98/Me


3.     Windows Xp


4.     Windows Vista


5.     Windows 7


6.     windows 8


7. MULTICS derivatives


1.           UNIX


·        Unix V5 (SCO Unix)


·        Modern Unix (Solaris / BSD )


·        FreeBSD




2.           Xenix


3.           Linux


4.                            Plan 9 jim bading tahaha ·Inferno to hell

5.           QNX


6.           VSTa


7.           Mac OSX


8.           MIPS RISC/os


9.           RISC iX


8. VMS derivatives


1.           VMS


1.     OpenVMS


2.           OS/2


1.     eComStation


3.           Microsoft Windows =rude-magic!


1.     ReactOS


9. MacOS derivatives


4.           Mac OS


1.     Mac OS 9


10. Cambridge CAP Computer derivatives


1.           KeyKOS


1.     EROS


2.     Coyotos

3.     CapROS


11. IBSYS derivatives


1.           OS/360


2.           OS/400


12. AmigaOS Derivatives


3.           AmigaOS


4.           AROS


1.     AmigaOS 4.x


2.     MorphOS


13. Novel Operating Systems


1.           Grasshopper


2.           ITS


3.           BeOS


Study Material, Lecturing Notes, Assignment, Reference, Wiki description explanation, brief detail
Operating Systems : Process and Threads : Evolution of Operating System |

Privacy Policy, Terms and Conditions, DMCA Policy and Compliant

Copyright © 2018-2024 BrainKart.com; All Rights Reserved. Developed by Therithal info, Chennai.