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

Process State in OS

The Process passes from different states, from its formation to completion.

The following are the states of the Process.

  1. New
  2. Ready
  3. Running
  4. Block or Wait
  5. Terminated or Completed
  6. Suspend ready
  7. Suspend wait or suspend blocked
Process State in OS

1. New: - The state in which a process is created. The New state is the newly created program which is stored in the secondary storage, and taken by the operating system at the time of process creation.

2. Ready: - After a process has been created, it enters into the ready state means the process is loaded into the memory. In this, the process is set to run and wait for its execution time to get the CPU. Processes that are ready for CPU execution are placed in a queue for a ready process.

3. Run: - In a run state, the CPU selects the process for execution and executes the instructions within the process.

4. Blocked or Wait: - If the process is in run state and the process needs some resources for execution, but the resource is held by some other process than the process enters into the blocked or waiting state.

5. Terminated or Completed: - If the execution of the process is completed, then the process enters into the terminated or completed state.

6. Suspend ready: - Sometimes, due to the minimum number of resources, some process which is in ready state transfer or moves to secondary storage from the primary storage, and this type of process that move in the ready state are called suspend ready.

7. Suspend wait or suspend blocked: - Suspend-wait is like suspend blocked and uses the process which is performing input/output operation and due to minimum amount of main memory move them into secondary storage. It may go to suspend ready when work is finished.

Operations on the Process

There are various operations which are performed on the Process:

  • Creation
  • Scheduling
  • Execution
  • Deletion/Killing
Operations on the Process

Creation: - If the process is created, then it will be ready to enter the ready queue and ready to run.

Scheduling: - There are so many processes which are present in the ready queue, the operating system selects one process from various processes and start to execute the process. The selection of process in a sequence for execution is called scheduling. 

Execution: -After the scheduling is done on the process then the process starts executing. Sometimes there may be a situation that arises when the process enters into a blocked or wait state during the execution, then in such a case, the processor starts to execute another process.

Deletion/Killing: - When the objective of the process completes, the operating system kills the process. The process control block of the process is also deleted, and the operating system terminates the process.