The sample installable interrupt service routine (ISR) allows you to capture data from the serial port at a higher rate than with a regular serial port driver. This ISR, which is also referred to as ISR16550.dll, is in %_WINCEROOT%\Public\Common\Oak\Drivers\Serial\ISR16550. Any serial driver that links with the SER16550 serial library located in %_WINCEROOT%\Public\Common\Oak\Drivers\Serial\SER16550 can use this installable ISR.
ISR16550.dll minimizes the time to signal the interrupt service thread (IST). This allows faster data transfer because there is a penalty for the system to schedule the IST. ISR16550.dll buffers data from the hardware to receive first-in, first-out (FIFO) data and fills up hardware transmit FIFO data from the software buffer without IST involvement. The IST is signaled only when the receiving buffer reaches its threshold and the transmitting buffer is empty. The IST is also signaled when the incoming data stream times out, which is same condition as hardware FIFO. This allows less frequent signals to the IST and SER16550 or the driver using the installable ISR can handle high throughput.