Let our extensive experience with the ARM family of microprocessors help your product development. ThreadX, our high-performance real-time kernel, helps improve your product’s quality and its time-to-market. In addition, using ThreadX makes it easier to enhance your product in the future.
ThreadX optimizes context switching on the ARM. When context switching occurs inside of a ThreadX service call, only the registers preserved across function calls are saved as part of the thread’s context, i.e. registers v1-v7, fp, and lr.
A similar technique is used in interrupt handling. On the front end of interrupt service routines, only the compiler’s scratch registers are saved initially (registers a1-a4). The full register set is saved only if thread preemption is required.
ThreadX fully supports the 16-bit Thumb and Thumb-II extensions of the ARM architecture. Using ThreadX, developers can freely build their applications in Thumb and/or traditional 32-bit mode.
By default, ThreadX leaves FIQ interrupts alone. This results in zero FIQ interrupt latency. However, in this configuration application FIQ processing is not allowed to call ThreadX services. ThreadX can also be configured to provide complete FIQ-support, which provides the application FIQ handler access to ThreadX services.
ThreadX can also be configured to support nested interrupt handling – for both IRQ and FIQ interrupt sources.
ThreadX demonstrations are available for all major evaluation platforms, including ARM’s Evaluator-7T, Integrator, and Versatile boards.
ThreadX is integrated with all the major ARM development tools, including ARM RealView, ARM/Keil (for Cortex-M1/M3), Wind River Workbench™, Green Hills MULTI, IAR C-Spy, Lauterbach, MetaWare, EPI, and GNU. Additional ThreadX-aware debugging is available with ARM’s RealView, Wind River Workbench, IAR’s C-SPY, Lauterbach’s TRACE32, and Green Hills MULTI.
Please visit the following links for more information on ThreadX-aware integration with these products:
FileX – FileX is Express Logic’s high-performance MS-DOS compatible file system. It is fully integrated with ThreadX and is available for all supported processors. Like ThreadX, FileX is designed to have a small footprint and high-performance, making it ideal for today’s deeply embedded applications that require file operations.
NetX – NetX is Express Logic’s high-performance implementation of TCP/IP protocol standards. It is fully integrated with ThreadX and is available for all supported processors. NetX has a unique Piconet™ architecture. Combined with a zero-copy API, it makes it a perfect fit for today’s deeply embedded applications that require network connectivity.
USBX – USBX™ is Express Logic’s high-performance USB host and device embedded stack. It is fully integrated with ThreadX and is available for all ThreadX supported processors. Like ThreadX, USBX is designed to have a small footprint and high-performance, making it ideal for today’s deeply embedded applications that require to interface with USB devices or be connected with a Windows/Apple/Linux desktop over USB.
TraceX – TraceX™ is Express Logic’s host-based system event analysis tool. TraceX provides developers with a graphical view of real-time system events. TraceX enables embedded developers to visualize and better understand the behavior of their real-time systems.