Long term scheduler: This scheduler is responsible to move the process which are ready for processing to ready queue. It also regulates degree of multiprogramming. It is also called job scheduler.
Short term scheduler: This scheduler is responsible to move processes from ready queue to CPU and also from CPU to ready queue. It is also called CPU scheduler.
Medium term scheduler: It swaps the process from CPU to blocked state which requests for i/o. It moves the process from main memory to secondary memory so that other process which is ready to execute can be loaded to main memory. It is also called swapping scheduler.
@tusharb medium term scheduler