Irqmon is a graphical (text mode) tool for QNX4 which monitors the IRQ activity.

Description Restrictions Use message Screen shot Download History

Cette page en français


Irqmon is a text based graphical tool which shows the IRQ activity on a local QNX 4 node. To do this, irqmon attaches a handler on each IRQ and count for a period of time the number of times the IRQ raised. It is designed to be as less intrusive as possible, specially while in ISR. Irqmon does not require that a handler is already attached to the IRQ to monitor it.

In the main loop, irqmon copies data modified by the ISR's to local data. To avoid modification of these data while copying you can choose to mask interrupts. This is not the default, because it becomes to be more intrusive.

You can choose the period, the IRQ lines you do not want. You also can log the latests samples to a log text file.

You can choose a short period but display only every 100 periods, to keep a readable display.

And you can choose the scale of display, the default is automatic.

Since irqmon attaches handler to IRQ, it must be run as "root".



Irqmon must be run as "root".

Irqmon is BETA software.

Irqmon run on priority 1, so the graphical display shouldn't interfere with your system.

Irqmon is on privity 1, a bug might cause damage to your system.


Use message

IRQMON		Version 0.2
 irqmon	[-d] [-p <period in us>] [-P <period in ms>]
       	[-x <IRQ not monitored>] [-m <max histogram>]
       	[-r <samples between each display>]
       	[-a <automatic stop after n samples>]
       	[-s <save latest n samples>]
 Count for each sample of time the number of IRQ generated
 for each of the 16 hardware IRQ of the PC.
 -d     : enable the program to mask IRQ when copying datas
         (default: disable)
 -p <n> : period of the sample in micro second (default: period of 1 s)
 -P <n> : period of the sample in mili second (default: period of 1 s)
 -x <n> : do not monitor IT numer (default: all IRQ are displayed
          except IRQ 2 which is the slave PIC (8259) connected to the master
 -m <n> : maximum scale of histogram (default: total of IRQ for the sample)
 -r <n> : number of samples between each display (default: 1)
 -a <n> : display n samples then stop (default: stop on Ctrl-C)

 -s <n> : save latest n samples in file irqmon.log (default: no save)
List of IRQs :
-1	:	one interrupt every 50 miliseconds
0	:	OS timer (see QNX utility ticksize)
1	:	keyboard
2	:	slave PIC (8259) connected on master (never displayed by irqmon)
3	:	COM2
4	:	COM1
5	:	
6	:	floppy controller
7	:	LPT1
8	:	realtime clock
9	:	
10	:	
11	:	
12	:	
13	:	arithmetic coprocessor
14	:	primary IDE controller
15	:	secondary IDE controller
Latest versions of IRQMON on

Screen shot

Here is an animated dump of the text screen :



Download it now : irqmon_0_2.gz or from QUICS (already 2738 downloads)

For comment, mail me at :

If you want the source code, fill the form below, and i will send you sources :

Your E-mail :


Revision 0.2 : add a save of the latest samples to a log file

Revision 0.1 : initial revision


Back to QNX page

Last modification : 04/23/2000