ThreadX docsThreadX docs
ThreadX
ThreadX Modules
NetX Duo
FileX
GUIX
USBX
TraceX
LevelX
ThreadX
ThreadX Modules
NetX Duo
FileX
GUIX
USBX
TraceX
LevelX
  • ThreadX Documentation

    • Understand ThreadX
    • ThreadX documentation
    • Chapter 1 - Introduction to ThreadX
    • Chapter 2 - Installation and Use of ThreadX
    • Chapter 3 - Functional Components of ThreadX
    • Chapter 4 - Description of ThreadX Services
    • Chapter 5 - Device Drivers for ThreadX
    • Chapter 6 - Demonstration System for ThreadX
    • Appendix A - ThreadX API Services
    • Appendix B - ThreadX Constants
    • Appendix C - ThreadX Data Types
    • Appendix D - ThreadX ASCII Character Codes
    • Appendix E - ThreadX SMP MISRA C compliance
    • SMP

      • Chapter 1 - Introduction to ThreadX SMP
      • Chapter 2 - Installation & Use of ThreadX SMP
      • Chapter 3 - Functional Components of ThreadX SMP
      • Chapter 4 - Description of ThreadX SMP Services
      • Chapter 5 - Device Drivers for ThreadX SMP
      • Chapter 6 - Demonstration System for ThreadX SMP
      • Appendix A - ThreadX SMP API Services
      • Appendix B - ThreadX SMP Constants
      • Appendix C - ThreadX SMP Data Types
      • Appendix D - Eclipse ThreadX ASCII Character Codes
      • About This Guide
    • ARMv8m

      • Chapter 1 - Introduction to ThreadX for ARMv8-M.
      • Chapter 2 - Installing ThreadX support for ARMv8-M
      • Chapter 3 - ThreadX APIs for ARMv8-M
    • About the ThreadX Guide

About This Guide

This guide provides comprehensive information about ThreadX SMP, the Eclipse Foundation high-performance embedded real-time kernel.

It is intended for the embedded real-time software developer. The developer should be familiar with standard real-time operating system functions and the C programming language.

Organization

ChapterOverview
Chapter 1Provides a basic overview of ThreadX SMP and its relationship to real-time embedded development.
Chapter 2Gives the basic steps to install and use ThreadX SMP in your application right out of the box.
Chapter 3Describes in detail the functional operation of ThreadX SMP, the high-performance real-time SMP kernel.
Chapter 4Details the application's interface to ThreadX SMP.
Chapter 5Describes writing I/O drivers for ThreadX SMP applications.
Chapter 6Describes the demonstration application that is supplied with every ThreadX SMP processor support package.
Appendix AThreadX SMP API
Appendix BThreadX SMP constants
Appendix CThreadX SMP data types
Appendix DASCII chart

Guide Conventions

  • Italics - typeface denotes book titles, emphasizes important words, and indicates variables.
  • Boldface - typeface denotes file names, key words, and further emphasizes important words and variables.

Important: Information symbols draw attention to important or additional information that could affect performance or function.

Warning: Warning symbols draw attention to situations that developers should take care to avoid because they could cause fatal errors.

ThreadX SMP Data Types

In addition to the custom ThreadX SMP control structure data types, there are a series of special data types that are used in ThreadX SMP service call interfaces. These special data types map directly to data types of the underlying C compiler. This is done to insure portability between different C compilers. The exact implementation can be found in the tx_port.h file included on the distribution disk.

The following is a list of ThreadX SMP service call data types and their associated meanings:

Data TypeMeaning
UINTBasic unsigned integer. This type must support 8-bit unsigned data; however, it is mapped to the most convenient unsigned data type.
ULONGUnsigned long type. This type must support 32-bit unsigned data.
VOIDAlmost always equivalent to the compiler's void type.
CHARMost often a standard 8-bit character type.

Additional data types are used within the ThreadX SMP source. They are also located in the tx_port.h file.

Troubleshooting

For troubleshooting, be sure to collect the following information:

  1. A detailed description of the problem, including frequency of occurrence and whether it can be reliably reproduced.
  2. A detailed description of any changes to the application and/or ThreadX SMP that preceded the problem.
  3. The contents of the _tx_version_id string found in the tx_port.h file of your distribution. This string provides valuable information regarding your run-time environment.
  4. The contents in RAM of the _tx_build_options ULONG variable. This variable gives information on how your ThreadX SMP library was built.
Prev
Appendix D - Eclipse ThreadX ASCII Character Codes