ПредишенСледващото

В зависимост от източника, прекъсва се делят на следните типове:

1. хардуер - възникне като реакция на физическа микропроцесор сигнал от устройство (клавиатура, системния часовник, клавиатура, твърд диск и т.н.), време на възникване на тези прекъсвания са асинхронни, т.е. появят на случаен принцип пъти.

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

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

3. Изключения - са микропроцесор реакция на ненормално събитие е възникнало в рамките на микропроцесора по време на изпълнение на инструкция програма.

Вътрешните прекъсвания са развълнувани схеми на процесора в случай на един от най-специално посочените ситуации, например при извършване на деление на нула, или при опит за извършване на несъществуваща команда. Всеки един от тези прекъсне определен фиксиран вектор чийто брой е известно на процесора. Така например, в разделението на IBM PC от 0 в полза на определен вектор 0, а за грешен отбор - вектор 6. Ако процесора срещне някое от тези ситуации, тя изпълнява горепосочената процедура прекъсва с помощта на стационарни тази ситуация да прекъсне вектор.

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

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

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

Софтуер за управление на специални регистри маска (маскиране прекъсват сигналите) позволява да се приложи различна услуга дисциплина:

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

2. с абсолютен приоритет, който винаги се обслужва от прекъсването с най-висок приоритет. За да се приложи този режим на времето за изпълнение на прекъсване прикрие всички заявки с по-нисък приоритет. Възможно е многостепенно прекъсване, т.е. прекратяване програма за прекъсване. Броят на прекъсване нива в този режим, варира в зависимост от приоритета на искането.

3. В съответствие с принципа на комина, или, както понякога се казва, за LCFS на дисциплина (Last дошъл, пръв обслужен - продължи, първа изходяща), т.е. по заявка с по-нисък приоритет може да прекъсне обработката на прекъсване с по-висок приоритет. Дължина, че е необходимо да не се налага маска на всеки един от сигналите за, и не изключвайте системата за прекъсване.

Свързани статии

Подкрепете проекта - споделете линка, благодаря!