Різниця між опитуванням та перериванням

У певний час основний процесор перестає працювати і перевіряє, чи є у якогось контролера повідомлення для нього, якщо він є, обробляє повідомлення та продовжує роботу. Це називається опитуванням. Крім того, зрозуміло, що основний процесор робить свою роботу, а пристрої роблять свою роботу. Якщо пристрій закінчує свою роботу або виникає помилка, пристрій повідомляє головний процесор із запитом переривання.

Що таке опитування?

У системах, де більше зовнішніх логічних схем зв’язується через декілька з'єднань U / I з одним мікропроцесором, використовується опитування U / I. Мікрокомп'ютер періодично викликає кожну зовнішню логічну ланцюг і перевіряє, чи вимагає вона обслуговування. Якщо зовнішня логічна схема не потребує обслуговування, мікрокомп'ютер вивчає наступну зовнішню логічну ланцюг і т. Д. Якщо одна з них вимагає обслуговування, мікрокомп'ютер переходить на запуск сервісної програми відповідної зовнішньої логічної схеми. Функція передачі U / I включена в програму. Іншими словами, опитування - це процес виклику клієнта (комп’ютери або термінали), який може надсилати дані після виклику (якщо вони є). Якщо клієнт має дані, він надсилає його після опитування, а якщо немає даних, клієнт відповідає негативно, і сервер викликає наступного клієнта. Деякі пристрої можуть вимагати обслуговування від контролера (наприклад, коли деякий пристрій закінчує вимірювання або коли виникає помилка). Запит надсилається контролеру, встановивши лінію SRQ низькою. Після того, як контролер отримає запит на обслуговування, він зателефонує всім пристроям на шині, щоб знайти пристрій, який надіслав цей запит.

Що таке Переривання?

Під час виконання програми мікропроцесор може приймати сигнал переривання через спеціальні лінії IRQ. Перерва найчастіше виконується за допомогою виклику відповідної підпрограми для обробки переривань - це так звані BIOS або DOS рутинної обробки переривань. Після обробки перерв процесор продовжує виконувати перервану програму. Також сама прикладна програма може містити інструкцію, яка вимагає виконання програми переривання BIOS або DOS. Операції введення-виведення найчастіше здійснюються таким чином. Наприклад, якщо програма хоче надрукувати знак на екрані, це можна зробити, викликавши відповідну процедуру переривання. BIOS містить набір елементарних процедур введення-виведення, які працюють відносно швидко, а відповідні підпрограми DOS повільніші, але їхні можливості більші (можливість переосмислення каналів вводу-виводу, можливість контролю помилок тощо). Тому апаратне переривання - це сигнал, отриманий процесором від іншого пристрою в комп'ютері, а програмне переривання - це процес виконання BIOS або DOS підпрограми (підпрограма), який автоматично викликається для обробки прийнятого сигналу переривання або вимагається виконати. відповідні інструкції.

Різниця між опитуванням та перериванням

Передумови опитування та переривання

У першому випадку процесор перевіряє через регулярні проміжки часу, чи потрібен якийсь пристрій. У разі переривання існує механізм, за допомогою якого процесор дозволяє зовнішньому пристрою (наприклад, клавіатурі, звуковій картці тощо) привертати увагу процесора.

Механізм опитування та переривання

Переривання - це спеціально організовані механізми зв'язку периферійних пристроїв. Пристрої сповіщають ЦП, якщо потрібна дія. Опитування є протокольним - процесор регулярно запитує пристрої, чи потрібно дія.

Обслуговування опитування та переривання

При опитуванні мікроконтролерів пристрій потребує уваги, після чого переходить до наступного пристрою для моніторингу. У разі переривання, коли надходить сигнал про перерву, ЦП зупиняється при поточній активності та обслуговує пристрій. Служби або обробляються переривання називаються рутинним режимом обслуговування (ISR) або обробником переривання.

ЦП

У процесі опитування ЦП перебуває в режимі очікування та перевіряє, чи потрібен якийсь пристрій для обслуговування. Це зайво витрачає час. У разі переривання процесу, з іншого боку, процесор порушується лише в разі потреби.

Поява опитування та переривання

Опитування пристроїв можна проводити лише через регулярний проміжок часу, коли вони перевіряються. Перерва може статися в будь-який момент часу.

Переваги опитування та переривання

Однією з переваг опитування є відносно проста програма, надійність передачі, яка відбувається з максимальною швидкістю, тобто, як тільки пристрій вводу / виводу готовий і відсутність необхідності в додаткових мікросхемах доступу. Перерва вигідна тим, що може обслуговувати декілька пристроїв, вона більш гнучка та ефективна.

Недоліки опитування та переривання

Недоліками опитування є час очікування деяких пристроїв, який коротший за час відгуку, і тоді слід застосувати інший спосіб передачі, а також те, що ЦП вимагає зайвого часу для перевірки пристроїв, які не шукали передачу даних. Недоліками переривань є вимога до складнішого апаратного / програмного забезпечення та втрата часу до тих пір, поки ЦП не встановить, які блоки вимагають перерви.

Опитування проти переривання: порівняльна діаграма

Підсумок опитування Vs. Перервати

  • У разі опитування робиться циклічне зчитування пристроїв, підключених до одного процесора. Якщо зовнішня логічна схема не потребує обслуговування, мікрокомп'ютер вивчає наступну зовнішню логічну ланцюг. Якщо одному з них потрібне обслуговування, мікрокомп'ютер переходить на запуск програми для обслуговування відповідної зовнішньої логічної ланцюга.
  • При перерві на вимогу зовнішньої логіки мікрокомп'ютер перериває роботу своєї поточної програми та переходить на запуск програми переривання. Перервана структура дозволяє мікропроцесору реагувати на асинхронні події, тобто запити зовнішньої логіки, не чекати в циклі, щоб вивчити стан зовнішньої логічної ланцюга.