Свежий номер №24 (401)  / Особенности национальной автоматизации
 
Дата публикации: 25.06.2001

Сергей Никольский, nikolskys@mail.ru

 
<<  Врезка 2: Взаимодействие процессов
Врезка 3: Работа с аппаратными прерываниями. Linux в качестве ОС реального времени.
Врезка 4: Windows NT/2000 в качестве ОС реального времени  >>

Работа с аппаратными прерываниями

Не нужно пояснять, что аппаратные прерывания, вызванные внешними событиями, требуют немедленной обработки, однако быстродействие системы не бесконечно, и задержка имеет место в любом случае. Приведем конкретный пример на основе данных для ОС QNX. Несмотря на то, что основную часть времени все аппаратные прерывания в QNX разрешены, некоторые критичные участки кода ядра требуют их запрета. Максимальная длительность таких участков кода (точнее - задержка запуска обработчика прерывания) составляет не более 3,3 мкс для процессора Pentium 166 и не более 22,5 мкс для древнего 386SX 33 (данные для версии 4.24). На практике чаще имеет место случай, когда обработчик прерывания не занимается сам обслуживанием данного прерывания, а лишь активизирует запуск драйвера путем передачи сообщения ядру системы. Суммарная задержка от момента прерывания до передачи управления драйверу составляет для указанных типов процессоров не более 4,7 мкс и 74,2 мкс соответственно. Если же используется механизм прерываний с разными приоритетами, когда высокоприоритетное может прерывать низкоприоритетное, задержка увеличится соответственно числу уровней приоритета, но при этом ее длительность для самого худшего случая можно легко подсчитать, будучи при этом уверенным, что за пределы полученной цифры она не выйдет.

Linux в качестве ОС реального времени

Эта платформа хороша тем, что за нее не нужно платить (если не считать цену носителя и пересылки). Обладая достаточно развитыми средствами разработки приложений общего назначения, система вовсе не имеет средств отладки процессов реального времени. Учитывая большую популярность этой ОС и быстрый рост числа приложений, появление таких средств возможно, но на сегодняшний день рекомендовать Linux в качестве базы для приложений жесткого реального времени нельзя.



 
<<  Врезка 2: Взаимодействие процессов
Врезка 3: Работа с аппаратными прерываниями. Linux в качестве ОС реального времени.
Врезка 4: Windows NT/2000 в качестве ОС реального времени  >>


Сергей Никольский
nikolskys@mail.ru
 


<<  Немного об отечественном СУБД-строении
Все материалы номера
It’s Time  >>