Kernel Independent Transport Layer (Compact 2013)
3/26/2014
The kernel independent transport layer (KITL) is a communication link between the development computer and the Windows Embedded Compact powered device. KITL, which is a transport mechanism used for debugging, is built as part of the BSP. The physical transport over which KITL works can be anything, but the most common connections are Ethernet, USB, and serial.
Active and Passive KITL
KITL can operate in active or passive mode. In active mode, all KITL clients are initialized and registered when the device boots the OAL. In passive mode, KITL is initialized but not connected until an exception occurs on the device.
Active KITL is best suited for the development process so the debugger can maintain a constant connection. Passive KITL is better suited to a scenario in which the debugger is not constantly needed; for example, you might use passive KITL during the stages between testing a device and releasing it as a retail device. The benefit of the passive mode is that you can create a device that does not have to be tethered to the development computer tools. The device can be mobile, and if it enters a state where the development computer tools are needed, it initiates a KITL connection between the device and development computer.
Interrupt-Driven and Polling KITL
KITL can use interrupt-driven or polled transport. Interrupt-driven KITL is faster than polled transport, so you might want to use it for a completed KITL driver. Polled transport is less complicated than interrupt transport, so it is often used as the starting point for KITL drivers.