Process State Transitions
1. New -> Ready: When the OS allocates memory and resources to the new process, it transitions to the ready state
2. Ready -> Running: The process scheduler selects a process from the ready queue to be assigned the CPU
3. Running -> Ready: The OS might preempt the running process due to factors like priority or time-sharing algorithms
4. Running -> Blocked/Waiting: If the running process issues an I/O request or encounters a resource unavailable
5. Blocked/Waiting -> Ready: Once the awaited event occurs, the process transitions back to the ready state
6. Running -> Exit/Terminated: A process might directly terminate from the ready or waiting state