I know this might sound like a newbie question but let's say we have a priority based scheduling algorithm (non-preemptive) where all processes arrive at time 0 and based on priority the order is P1, P2, P3 ...
The processes will run P1, P2, P3 without having to block one to let another one run, each processes will run until it is finished.
I am not sure here: when switching from process P1 to P2 is a context switch necessary? I know that : In computing, a context switch is the process of storing and restoring the state (more specifically, the execution context) of a process or thread so that execution can be resumed from the same point at a later time. But since we don't save P1's state do we still need a context switch? I tend to say we do since a context switch also happens when you start up a new process from scratch which will have its own context, right?
I just want to make sure I get these things straight! Any tip would be greatly appreciated!