Priority planning always selects the process with the highest priority that is currently ready to start. If there is more than one process with the highest priority at the present time, a second scheduling algorithm is required to choose between these processes. Non-preemptive Priority Scheduling only selects a new process to start if the executing process has completed its work or given (voluntarily) by the scheduler.
Priority priority planning is one and the same algorithm, but if a new process has a higher priority than the current process, it is selected immediately. The new process should not wait for the completion or completion of the current process.
In your example, the Gantt chart for proactive priority planning and 3 will be the highest and 1 the lowest priority will look:
| P1 | P3 | P2 |
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14
source share