Операционная система имеет компонент, называемый Планировщик, который выполняет функцию переключения между приложением и другими системными потоками (задачами). Планировщик почти всегда является частью образа ядра ОС, который обычно выполняется на выделенном аппаратном потоке процессора, как только ОС загрузится в память загрузчиком.
После того, как Планировщик запускает задание для выполнения, он ожидает сигнала от своего оборудования контроллера прерываний, чтобы сообщить ему, когда необходимо выполнить (остановить) текущую задачу и освободить другую задачу для выполнения. Детали того, как это происходит, зависят от алгоритма планирования (например, Round-Robin, Time-Slicing, Earliest-Deadline-First и т. Д.), Которые разработчик ОС решил реализовать. Например, ОС с ядром, использующим время, будет использовать прерывания от аппаратного таймера в качестве вызова для своего Планировщика.