Operating System Tutorial

What is Operating System Evolution of Operating System Types of Operating System Functions of Operating System What is Kernel and Types of Kernel Operating System Properties Operating System Services Components of Operating System Needs of the Operating System Linux Operating System Unix Operating System Ubuntu Operating System What is DOS Operating System Difference Between Multi-programming and Multitasking What is Thread and Types of Thread Process Management Process State What is Process Scheduler and Process Queue What is Context Switching What is CPU Scheduling Scheduling Algorithm FCFS (First-come-First-Serve) Scheduling SJF (Shortest Job First) Scheduling Round-Robin CPU Scheduling Priority Based Scheduling HRRN (Highest Response Ratio Next) Scheduling Process Synchronization Lock Variable Mechanism TSL Mechanism Turn Variable Mechanism Interested Variable Mechanism What is Producer-Consumer Problem What is Semaphore in Operating System Monitors in Operating System What is Deadlock Deadlock Avoidance Strategies for Handling Deadlock Deadlock Prevention Deadlock Detection and Recovery Resource Allocation Graph Banker’s Algorithm in Operating System Fixed Partitioning and Dynamic Partitioning Partitioning Algorithms What is Paging and Segmentation What is Demand Paging What is Virtual Memory Disk Scheduling Algorithms FCFS and SSTF Disk Scheduling Algorithm SCAN and C-SCAN Disk Scheduling Algorithm Look and C-Look Disk Scheduling Algorithm File in Operating System File Access Methods in Operating System File Allocation Method Directory Structure in Operating System Difference between C-LOOK and C-SCAN Difference between Rotational Latency and Disk Assess Time Trap vs Interrupt How to implement Monitors using Semaphores N-Step-SCAN Disk Scheduling Why is it critical for the Scheduler to distinguish between I/O-bound and CPU-bound programs Difference between C-SCAN and SSTF Difference between SCAN and FCFS Difference between Seek Time and Disk Access Time Difference between SSTF and LOOK

Difference between Multi-programming and Multitasking

Difference between Multiprogramming and Multitasking

        Multiprogramming  Multitasking
In Multiprogramming, at the same time, we can run the multiple processes concurrently on one processor. In Multitasking, at the same time, we can execute multiple tasks by the use of multiple CPUs.
Multiprogramming is implemented by using the concept of context switching Multitasking is implemented by using the concept of time-sharing.
In Multiprogramming, to execute the processes, only one CPU is used. In Multitasking, to allot a task we need Multiple CPU’s.
Multiprogramming requires more time to execute processes. Multitasking requires less time to execute processes.
The reason to use multiprogramming is we can reduce the CPU ideal time. The reason to use multitasking is we can easily run multiple processes concurrently through time-sharing.
Multiprocessing is more expensive. Multitasking is less expensive.

Difference between Time-Sharing and Real-Time Operating System

 Time-Sharing Operating System Real-Time Operating System
In a time-sharing operating system, for a request, a fast response is emphasized. In a real-time operating system, the task of computation is emphasized before its nominative point.
Time-sharing operating systems provide the switching method/function.  The real-time operating system does not give the switching method/function.
In a time-sharing operating system, there is a possibility of changes in the program. In a Real-time operating system, there is no possibility of changes in the program.
In time-sharing, resources are shared externally. In a Real-time operating system, resources are not shared externally.
 The time-sharing system can deal with more processes and applications concurrently. The real-time operating system can only deal with one process and application at a time.
In this operating system, it is must that the user response is given within a second. In this operating system, the response is given to the user within the time constraint.

 Difference between Multicore System and Multiprocessor System

               Multicore System              Multiprocessor System
In Multicore, a single program executes faster. In Multiprocessor, multiple programs can execute faster.
Multicore is not reliable. Multiprocessor is reliable because if one CPU fails, then other CPU will not be affected.
In Multicore, traffic is less. In Multiprocessor, traffic is more.
In this type of system, there is only one CPU, and the multiple cores are resides in that CPU. In this type of system, there are multiple CPUs.