Operating system

An operating system is a program that acts as an interface between the software and the computer hardware.It is an integration set of specialized programs that are used to manage overall resources and operations of the computer. It is a specialized software that controls and monitors the execution of all other programs that reside in the computer, including application programs and other system software.
Example of Operating system
  • Window 95
  • Window vista
  • Window 7
The main Goals and Objective of Operating system are:
  1. To make a computer user friendly.
  2. Proper utilization of computer resources.
  3. To hide the details of the hardware resources from the users.
  4. To provide users a convenient interface to use the computer system.
Characteristics of Operating System
 Memory Management - It keeps track of primary memory, i.e. what parts of it are in use by whom, what parts are not in use, etc. Allocates the memory when the process or program requests it.
Processor Management - Allocates the processor (CPU) to a process. Deallocate processor when processor is no longer required.
Device Management - Keeps tracks of all devices. This is also called I/O controller. Decides which process gets the device when and for how much time.
File Management -Allocates the resources. Deallocates the resource. Decides who gets the resources.
Security -By means of passwords & similar other techniques, preventing unauthorized access to programs & data.
Types of Operating Systems
Operating system may be classified in the following categories:
  1. Batch Operating System
  2. Multi programming Operating System
  3. Time sharing Operating System
  4. Real Time Operating System
  5.  Multitasking Operating System
  6. Multiprocessor Operating System
Batch operating system
The Batch operating system do not allow user to interact with the computer directly. Each user prepares his jobs an punch them on punch cards and submit it to the computer operator.The operator sorts jobs into batches with similar requirements and runs each batch on the computer. When the job is complete it output is sent back to the appropriate user.In Batch operating system the major task performs by operating system is to transfer the control automatically from one job to the next.
Advantages:
Resource management and allocation is easy.Faster than early operating system.
Disadvantage:
Lack of interaction between the user and the job while job is executing.Utilization of CPU is very poor.Turnaround time is high.
Multi-programming Operating System 
As far as batch processing was concerned the number of programs were loaded in a sequence in the main memory, and the program remain the occupant of main memory until the execution of program get completed. This lead to under utilization of system resources such as CPU and memory.
To overcome this problem we introduce the concept of multi-programming
Multi-programmings refer to execution of two or more different program by the same computer. This is done by switching the CPU from one program to another. In multi-programming system when one program during execution need I/O transfer, the CPU switches to the other program and start its execution.
For example:
For example consider we are having three user jobs(A, B and C) residing in memory out of which job A is performing I/O operation, job B is executing and job C is waiting for CPU to become free.
In case of Multi-programming all jobs residing in main memory are in one of the following states:
Requirements of Multi-programming System
  • Large memory
  • Memory Protection
  • Job status preservation
  • CPU scheduling
Advantages:Increased Throughput,Shorter Response Time,Shorter Response Time.
Disadvantages:Requirement of large memory,Require proper CPU scheduling,Require proper memory protection.
Time Sharing Operating System
Time sharing system has many user terminals connected to the same computer simultaneously. Using these terminals multiple users can work on the system simultaneously. Multi-programming feature allow multiple user program to reside simultaneously in main memory and special CPU scheduling algorithm allocates a short period of CPU time one by one to each user process.
The short period during which a user process gets to use CPU is known as Time slice or Time Quantum.
When CPU is allocated to a user process it use the CPU until the allotted time slice expires or it need to perform some I/O operation or it complete its execution during this period.
Notice that CPU is taken away from a running process when its time slice is expires.
Requirements of Time Sharing System
  • Require large memory to support multi-programming.
  • Memory protection mechanism to prevent a jobs instruction and data.
  • Job status preservation mechanism to preserve a job status information.
  • CPU scheduling algorithm.

Advantages:-Reduce CPU idle time,Provide quick response time,Reduce the output of paper,Avoid duplication of software.
Disadvantages:-Problem of data communication.Problem of reliability.
Real Time Operating System
Real time system is define as a data processing system in which the time interval required to process & respond to input is so small that it control the environment. Real time processing is always on-line whereas on line system need not be real time. Real time system operates in multiprocessing and multi-programming environment. In real time system time is critical. The real time processing system can basically classify into two categories:
  1. Soft Real Time processing
  2. Hard Real Time processing
Example of Real Time processing:Air traffic control system,Reservation System, System provides Stock information etc.
Requirements of Real Time Processing:
  • Large main memory
  • Large Disk memory
  • Complex communication system
Advantages:Response time is very less,Better Throughput,Large memory,24 hour service provider,Provide information up to date.
Disadvantage:Very costly,Large main memory and secondary storage required,Complex communication system.
Multitasking Operating System
It is the ability to do more than one thing at any given time. While referring to computer multitasking is having more than one application open at a time.
For example: at some time me might be downloading some things from internet, as well as we are writing mail to our friend and listening to music also.
The term multitasking and multi-programming are often used interchangeably, although multi-programming processing sometime implies that more than one CPU is involved. In multitasking , only one CPU is involved, but it switches from one program to another so quickly that it gives the appearance of executing of all of program at same time.
Multiprocessing Operating System
This technique consists of two or more CPU connected to common peripherals. Instruction from different program may either be processed by different CPU or one or more processors may execute instruction from the same program. This technique can serve a purpose only in large computer.
Generally multiprocessing are used in two ways:
Symmetric Multiprocessor:
In symmetric multiprocessor each processor run an identically copy of the operating system and these copies communicate with one another when needed.
Asymmetric Multiprocessor:
In asymmetric multiprocessor each processor is assigned a special task. In this scheme there is a master processor and all other processor known as slave processor are controlled by the master processor.
Advantages:Better throughput,Better reliability,Better utilization of resource.
Disadvantages:Large main memory, Such system are very expensive,  Require regular operation and maintenance,High initial cost.

Comments

Post a Comment

Popular posts from this blog

Input and Output devices

Generation of Computers

Introducing HTML