Что такое системные прерывания?

Мэйнфрейм компьютер

Приоритетные прерывания позволяют компьютерам запускать множество программ одновременно.

Кредит изображения: Jupiterimages / Photos.com / Getty Images

Хотя некоторые компьютеры, например тот, на котором работает тостер, выполняют одну задачу за раз, на настольных ПК, смартфонах и мэйнфреймах одновременно работает несколько процессов. Компьютер управляет этим с помощью системных прерываний, механизма, с помощью которого одна программа временно получает приоритет над другими. Центральный процессор допускает различные виды прерываний на основе заранее определенной иерархии задач.

Несколько программ

Современный ПК, смартфон или сервер хранит в памяти несколько программ, хотя центральный процессор в любой момент времени запускает лишь несколько программ; большинство из них бездействуют. Программы включают в себя такие приложения, как ваш текстовый процессор, электронную таблицу и электронную почту, а также служебные функции, такие как мониторы памяти и диспетчеры очереди печати, а также программы, управляющие сетевой картой, клавиатурой и компьютерные колонки. Когда важной программе требуется обслуживание, она выдает прерывание для ЦП, которое останавливает другую выполняющуюся работу, чтобы позаботиться о неотложной задаче. ЦП обслуживает прерывание только в том случае, если оно имеет приоритет над другими задачами.

Видео дня

Аппаратные прерывания

Жесткие диски, сетевые карты, принтеры и другие устройства выдают аппаратные прерывания, чтобы привлечь внимание процессора. Например, программа запрашивает данные с жесткого диска; Хотя эта задача занимает около 10 миллисекунд, это долгое время для ЦП, который в это время выполняет другую работу. Когда жесткий диск находит данные, он выдает аппаратное прерывание, сообщая процессору, чтобы он временно остановил свои действия и доставил данные запрашивающей программе.

Программные прерывания

Программы выдают программные прерывания для обработки особых запросов через операционную систему компьютера. Например, в текстовом процессоре вы хотите вставить дату в заголовок страницы. Текстовый процессор выдает программное прерывание, запрашивая дату у Microsoft Windows. Текстовый процессор ненадолго ожидает, пока Windows извлечет дату из системного календаря. Когда дата готова, Windows возвращает управление текстовому процессору. Программные прерывания имеют относительно низкий приоритет. если при получении даты ЦП получает запрос от жесткого диска, ЦП сначала обслуживает прерывание жесткого диска, а затем завершает получение даты.

Ловушки ЦП

Операционная система резервирует несколько прерываний с очень высоким приоритетом на случай чрезвычайных ситуаций. Например, данные программы повреждаются, что приводит к ее сбою. Операционная система выдает ловушку ЦП, которая останавливает программу и отображает на экране предупреждающее сообщение, информирующее вас о том, что произошло. В более крайних случаях серьезная проблема возникает в самой операционной системе. Он выдает еще одно прерывание ЦП, которое отображает диагностическое сообщение и останавливает всю обработку.