СВД Встраиваемые Системы 6c5ce07fdc | ||
---|---|---|
.. | ||
nto | ||
Makefile | ||
README.md | ||
common.mk | ||
int-attach.c | ||
int-attach.use |
README.md
int-attach
Навесить обработчик прерывания и выводить отладочное сообщение при его возникновении.
Синтаксис
int-attach -i N -m -p P
Опции
-i номер_прерывания Навесить обработчик на указанный номер. -m Маскировать прерывание в обработчике и размаскировать в основном потоке. -p период_мс Подсчитывать количество прерываний за указанный период времени (в миллисекундах).
Описание
Утилита int-attach навешивает минимальный обработчик на заданный номер прерывания и выводит отладочное сообщение при возникновении этого прерывания. Подключаемый обработчик прерывания содержит минимальный код, увеличивающий счётчик с количеством полученных прерываний. При задании опции -m прерывание маскируется в обработчике с помощью InterruptMask() и размаскируется после вывода отладочного сообщения в консоль. При задании опции -p производится подсчёт поличества прерываний за указанный период времени.
Утилита может использоваться для отладки работы прерываний и проверки того, что указанное прерывание возникает в ожидаемый момент времени, например, при работе с аппаратурой, получении данных из COM порта и т.п. Одновременно можно запустить несколько копий программы с различными номерами прерываний.
Предостережения
Учтите, что при задании флага -m и маскировании прерывания может нарушиться работа драйвера или программы, отвечающих за обработку этого прерывания, т.к. вывод отладочного сообщения достаточно длительная операция и на это время прерывание будет оставаться замаскированным.
Примеры
Навесить обработчик на прерывание номер 10
int-attach -i 10
Подсчитать количество прерываний за 1 секунду (1000мс)
int-attach -i 10 -p 1000