Какво е прекъсване: Видове и неговите приложения

Опитайте Нашия Инструмент За Премахване На Проблемите





Компютрите използват заявки за прекъсване, за да се справят с различни хардуерни функции. Хардуерните прекъсвания са въведени за първи път от UNIVAC 1103 през 1953 г. Първата честота на маскиране на прекъсвания е включена от IBM 650 през 1954 г. Важно е да се присвоят различни IRQ на различни хардуерни устройства, за да изпълняват различни функции. По време на изпълнение на програма, устройства като клавиатури, мишката изисква услуги на процесора и генерира прекъсване, за да привлече вниманието от процесора и да обработи заявената услуга. Те са известни като прекъсва . Една от шините на I / O устройството е предназначена да обслужва тази цел е известна като Interrupt Service Rutine (ISR). Те се използват в различни приложения, като например за чувствителни към времето събития, трансфер на данни, наблягане на ненормални събития, таймери за наблюдение, капани и др.

Какво е прекъсване?

Определение: Той е посочен като вход сигнал който има най-висок приоритет за хардуерни или софтуерни събития, което изисква незабавна обработка на събитие. През ранните дни на изчисленията, процесор трябваше да изчака сигнала за обработка на всякакви събития. Процесорът трябва да проверява всеки хардуер и софтуерна програма, за да разбере дали има някакъв сигнал за обработка. Този метод би консумирал редица тактови цикли и ще натовари процесора. За всеки случай, ако се генерира някакъв сигнал, процесорът отново ще отнеме известно време, за да обработи събитието, което води до лоша производителност на системата.




Въведен е нов механизъм за преодоляване на този сложен процес. В този механизъм хардуерът или софтуерът ще изпраща сигнала към процесор, а не процесор, който проверява за сигнал от хардуер или софтуер. Сигналът предупреждава процесора с най-висок приоритет и спира текущите дейности, като запазва сегашното му състояние и функция и обработва прекъсването незабавно, това е известно като ISR. Тъй като не трае дълго, процесорът рестартира нормални дейности веднага щом бъде обработен.

Прекъсване

Прекъсване



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

Те се класифицират в два основни типа.

Хардуерни прекъсвания

Електронен сигнал, изпратен от външно устройство или хардуер за комуникация с процесора, показващ, че той изисква незабавно внимание. Например удари от клавиатура или действие от мишката извикват хардуерни прекъсвания, каращи процесора да го чете и обработва. Така че той пристига асинхронно и по всяко време, докато изпълнява инструкция.

Хардуерните прекъсвания се класифицират в два вида


  • Маскируеми прекъсвания - Процесорите трябва да прекъсват регистър на маска, който позволява активиране и деактивиране на хардуерни прекъсвания. Всеки сигнал има бит, поставен в регистъра на маската. Ако този бит е зададен, прекъсването е разрешено и деактивирано, когато битът не е зададен, или обратно. Сигналите, които прекъсват процесорите чрез тези маски, се наричат ​​маскирани прекъсвания.
  • Немаскируеми прекъсвания (NMI) - NMI са дейности с най-висок приоритет, които трябва да бъдат обработени незабавно и при всяка ситуация, като сигнал за изчакване, генериран от таймер за наблюдение.

Софтуерни прекъсвания

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

Методи за задействане

Обикновено тези сигнали са проектирани да задействат, използвайки или ниво на логически сигнал, или ръб на сигнала. Тези методи са два вида.

Прекъсване, задействано от ниво

При този тип входният модул извиква прекъсване, ако е заявено нивото на услугата на това. Ако източникът на прекъсване продължава да се заявява, когато манипулаторът на прекъсване на фърмуера го обработва, този модул се регенерира и задейства манипулатора да извика отново. Входовете, задействани от ниво, не са добри, ако останат заявени за по-дълго време.

Прекъсване, задействано от ръба

Модулът за въвеждане на прекъсване, задействан от ръба, извиква прекъсване веднага щом идентифицира утвърждаващ ръб - падащ или нарастващ ръб. Ръбът се забелязва, когато нивото на източника се промени. Този тип задействане се нуждае от незабавни действия, независимо от дейността на източника.

Задействане на нивото на ръба

задействане на ниво-край

Внедряване на системата

Прекъсванията се прилагат към хардуера като различен компонент заедно с контролните линии, или интегриран в памет подсистеми. Когато изпълнението се извършва в хардуер, той се нуждае от програмируем контролер за прекъсвания (PCI), за да се свърже между входния щифт на процесора и прекъсващото устройство. PCI мултиплексира различни източници на прекъсване към единичната или двойната линия на процесора. Когато се прилага по отношение на контролера на паметта, слотът за адреси на паметта на системата се картографира директно с прекъсванията.

Споделени заявки за прекъсване (IRQ)

С прекъсване, задействано от ръба, изтегляне или изтегляне резистор се използва за задвижване на прекъсващата линия. Тази линия предава всеки импулс, произведен от всяко устройство. Ако прекъсващи импулси, генерирани от различни устройства, се случват наблизо във времето, процесорът трябва да извика заден ръб на импулса, за да не пропусне прекъсвания, след което CPU осигурява проверка на всяко устройство за заявки за услуги. Добре поведените дънни платки на индустриалната стандартна архитектура (ISA) с издърпващи се резистори с общи IRQ линии трябва да работят добре. Въпреки това, много устройства, споделящи IRQ линия в по-стари системи с лошо проектиран интерфейс за програмиране, затрудняват обработката на прекъсвания. От друга страна, нова системна архитектура, като PCI, помага да се осигури значително облекчение на този проблем.

Хибрид

Хибриден тип системна реализация има комбинация както от задействана от ръба, така и от ниво задействана сигнализация. Хардуерът трябва да търси ръб и също така проверява, че ако даден сигнал е активен за определен период. Хибриден тип обикновено се използва за немаскируемо прекъсване (NMI), което гарантира, че фалшивите прекъсвания не засягат системата.

Съобщение - Сигнализирано

Заявка за прекъсване, сигнализирано със съобщение за услуга, използваща сигнали на устройството чрез предаване на съобщение през комуникация канал, като компютър автобус . Те не използват линия за физическо прекъсване. PCI Express действа като серийна шина и се използва изключително като прекъсвания, сигнализирани със съобщения.

Звънец на вратата

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

Многопроцесорен IPI

Многопроцесорните системи, заявка за прекъсване от процесор се изпраща до различен процесор чрез междупроцесорни прекъсвания (IPI)

Типични приложения / приложения

Това са мощни входове, които обикновено се използват

  • Обслужвайте хардуерни таймери, управлявайте удари на клавиатурата и действия на мишката
  • Реагирайте бързо на чувствителни към времето събития или събития в реално време
  • Прехвърляне на данни към и от периферни устройства
  • Отговаря на задачи с висок приоритет като сигнали за изключване, капани и таймери за наблюдение
  • Показва необичайни събития на процесора
  • Прекъсването при изключване предвижда загуба на захранване, което позволява редовно изключване на система
  • Периодични прекъсвания, за да се следи абсолютното време

Често задавани въпроси

1). Защо се използват прекъсвания?

Те се използват за привличане на вниманието на процесора за извършване на услуги, изисквани от хардуер или софтуер.

2). Какво е NMI?

NMI е маскируемо прекъсване, което не може да бъде игнорирано или деактивирано от процесора

3). Каква е функцията на линията за потвърждение на прекъсването?

Процесорът изпраща сигнал до устройствата, показващ, че е готов да приема прекъсвания.

4). Опишете хардуерно прекъсване. Дай примери

Той се генерира от външно устройство или хардуер, като клавиши на клавиатурата или движението на мишката извиква хардуерни прекъсвания

5). Опишете прекъсване на софтуера.

Определя се като специална инструкция, която извиква прекъсване като повиквания на подпрограмата. Прекъсванията на софтуера могат да се задействат неочаквано поради грешки в изпълнението на програмата

6). Кое прекъсване има най-висок приоритет?

  • Немаскируем ръб и ниво задействани
  • TRAP има най-висок приоритет

7). Използвайте прекъсване

  • Реагирайте бързо на чувствителни към времето събития или събития в реално време
  • Прехвърляне на данни към и от периферни устройства
  • Отговаря на задачи с висок приоритет като сигнали за изключване, капани и таймери за наблюдение
  • Показва необичайни събития на процесора

8). Какво е хибриден тип внедряване на системата?

Хибриден тип системна реализация има комбинация както от задействана от ръба, така и от ниво задействана сигнализация. Хардуерът трябва да търси ръб и също така проверява, че ако даден сигнал е активен за определен период.

В тази статия разбрахме важността на прекъсва и как те се използват за изпълнение на заявените услуги. Също така обсъдихме какви са видовете, внедряването на системата и нейното използване.