Operating system i s the interface between user and computer hardware Operating syste m Interface User Hardware
Operating System Functions File Management Application Management Built-in Utility Programs Control of Computer Hardware
The First Operating System The first operating system used for real work was GM-NAA I/O, produced in 1956 by General Motors' Research division for its IBM 704. GM-NAA I/O was created in 1956 by Robert L. Patrick of General Motors Research and Owen Mock of North American Aviation OS/360 officially known as IBM System/360 Operating System based on batch processing system developed by IBM for their then-new System/360 mainframe computer, announced in 1964, was the first operating system that was developed
Disk Operating System ( DOS ) The first PC Operating System (1981) Not a Multitasking OS, only one program could run at a time A command-line interface, no GUI. Early versions of Windows sat on top of DOS and used it to communicate with the BIOS. Windows XP communicates directly with the BIOS, but allows commands to be entered via a command prompt.
What came first: Windows or Linux? Windows 1.0 was released in 1985. Linux kernel was first released in 1991.
Mainframe Computers Mainframes first appeared in the early 1940s . Vendors include IBM, Hitachi known for their large size, amount of storage, processing power and high level of reliability . Common I/O devices were card reader and tape drives
MainframeComputer + OS User Program CPU I/O O/P
Punch Card Card of Thick Paper Based Material Used to contain digital data represented by the presence or absence of holes in predefined positions . When light passes we get 1/true Light doesn’t passes we get 0/false Input is directly in the form of 0 or 1 Used for simple/integers calculations For e g:- Census Data Transactions
User prepare a job which consist of program input output data and control instructions. Input output job is given in the form of punch card and result also appear in the form of punch card after processing. Operating system was very simple always present in memory. Major task is to transfer the control from one job to another. Problem Limited memory Speed mismatch Different job requirement JOB Program Input output data Control instructions
Batch Processing
Batch Processing Jobs with similar needs are batched together and executed through the processor as a group Operator sort jobs as a deck of punch cards into the batch with similar needs For example Cobol batch portrait batch etc.
Advantages and disadvantages of batch processing Advantages In a batch job execute one after another saving time from activities like loading compiler During batch execution no manual intervention is needed Disadvantages Memory limitation Interaction input output devices directly with the CPU
Spooling Simultaneous peripheral operations online Input and output devices are relative Li slow compared to CPU (digital) In spooling data is stored first onto the disk and CPU interact with disk (digital) via main memory Keyboard, mouse , printer etc. Cpu is capable of overlapping input output operations for one job with CPU operations of other jobs. For example factory truck - raw material - loading _ unloading
Spooling Input Device Output Device Main Memory Disk CPU
Advantages and Disadvantages spooling Advantages No interaction of input and output devices with CPU CPU utilization is more as CPU is busy most of the time Disadvantages In starting spooling was uni -programming
Multi programming operating system Maximize CPU utilization Multi programming means more than one process in main memory which are ready to execute Process generally require CPU time and input output time so show running process perform input output or some other event which do not require CPU then sitting ideal. CPU make a context-switch and pics some other process and this idea will continue CPU never idle unless there is not process ready to execute or at time of context switch
Multi Programming OS P1 P2 . . Pn CPU M.M S .M
Advantages and disadvantages of multi programming Advantages High CPU utilization Less weighting time, response time etc May executed to multiple users Now a days useful load is more Disadvantages Difficult scheduling Main Memory management is required memory fragmentation Paging non-contagious memory allocation
Multitasking Operating System time sharing/ fair share /multi programming with Round Robin Multi tasking is multi programming with time sharing Only One CPU but switches between processes so quickly that it gives an illusion that all executing at same time The task in multitasking may refer to multiple Threads of the same program Main idea is better response time and executing multiple process together
Multi Tasking OS CPU Word Email Browser
Multiprocessing operating system Two or more CPU within a single computer in close communication sharing the system bus, Memory or other input and output devices Different process may run of different CPU, true parallel execution Types of multiprocessing Symmetric One Operating system control all CPU, each cpu has equal rights Asymmetric Master slave, System task on one processor and application on other or one CPU will handle all hardware interrupt for input output devices, they are easy to design but less efficient
Memory CPU CPU CPU CPU
Advantages and disadvantages of multiprocessing Advantages Increased throughput per unit of time process execution Increased reliable Cost saving Battery efficient True parallel processing Disadvantages More complex Overhead or coupling (dependency) reduced throughput Large main memory