Прекъсване (компютри)

При операционните системи, прекъсване (на английски: interrupt handler, interrupt service routine) се нарича асинхронен сигнал, показващ нужда от внимание, или синхронно събитие в софтуера, показващо нужда от промяна в изпълнението. Наличието на развита и добре управлявана система за управление на прекъсванията е важна предпоставка за многозадачен режим на работа на операционната система и на компютъра [1]. Прекъсванията са схемно реализиран механизъм за комуникация между нея, програмите и периферните устройства.

Хардуерно прекъсване се предизвиква от микропроцесора, за да запази състоянието на изпълнението си и да започне работа мениджърът на прекъсванията. Софтуерно прекъсване обикновено се осъществява като машинна инструкция в набора от инструкции, която предизвиква превключване на контекста и препращане към мениджъра на прекъсванията, подобно на хардуерното прекъсване.

Видове прекъсвания:

  • входно/изходни
  • SVC (Supervisor Call)
  • програмни
  • външни
  • схемни.

Диспечер на прекъсвания

редактиране

Ядрото на ОС съдържа в себе си програма (диспечер) за планиране на процеси (task scheduling subsystem), която управлява времето за изпълнение на всеки процес и реда на предаване на контрола по изпълнението от една програма на друга. От многото процеси, конкуриращи се за достъп до процесора, се избира един и ядрото му разрешава достъп до централния процесор и паметта. След приключване контролът се връща на ядрото, така че друга програма да може да ползва същите ресурси. Преходът от изпълнение на една програма към друга се нарича превключване на контекста (context switch).

Източници

редактиране
  1. "Hardware exceptions". docs.microsoft.com. 3 August 2021.