The UITRON Compatibility Kit is designed for current uiTRON customers. The kit defines the basic uiTRON services, with some limitations, and utilizes THREADX® primitives underneath. The new uiTRON compatibility layer should have very high performance, since the Compatibility Kit utilizes internal THREADX primitives and bypasses basic THREADX error checking. However, the application will achieve even greater performance and size benefits if a complete conversion to THREADX is performed.
Express Logic also offers a certified, full implementation of uiTRON version 4.0, including dynamic allocation. Please contact us if you are interested in this version. The following information on this page pertains to our free version that is available to all THREADX licensees.
Compatibility Kit Source
The Compatibility Kit source code is designed for simplicity and is comprised of only two files, tx_uitron.h and tx_uitron.c. The tx_uitron.h file defines all the necessary uiTRON constants and subroutine prototypes, while tx_uitron.c contains the actual uiTRON compatibility source. These Compatibility Kit source files are common to all THREADX support packages.
Compatibility Kit Documentation
The Compatibility Kit User Guide provides an overview of the porting process, including various caveats and pitfalls to watch out for. In addition, each covered uiTRON subroutine is documented, including information about supported/unsupported options, limitations, deviations, and suggestions on how to work around any limitations.
Compatibility Kit Services
The current release of the Compatibility Kit supports the following calls:
Task Related Subroutines:
cre_tsk, del_tsk, sta_tsk, ext_tsk, exd_tsk, ter_tsk, dis_dsp, ena_dsp, chg_pri, rot_rdq, rel_wai, get_tid, ref_tsk, sus_tsk, rsm_tsk, frsm_tsk, slp_tsk, tslp_tsk, wup_tsk, can_wup
Semaphore Related Subroutines:
cre_sem, del_sem, sig_sem, wai_sem, preq_sem, twai_sem, ref_sem
Event Related Subroutines:
cre_flg, del_flg, set_flg, clr_flg, wai_flg, pol_flg, twai_flg, ref_flg
Mailbox Related Subroutines:
cre_mbx, del_mbx, snd_msg, rcv_msg, prcv_msg, trcv_msg, ref_mbx
Message Buffer Related Subroutines:
cre_mbf, del_mbf, snd_mbf, psnd_mbf, tsnd_mbf, rcv_mbf, prcv_mbf, trcv_mbf, ref_mbf
Memory Related Subroutines:
cre_mpl, del_mpl, get_blk, pget_blk, tget_blk, rel_blk, ref_mpl, cre_mpf, del_mpf, get_blf, pget_blf, tget_blf, rel_blf, ref_mpf
Timer Related Subroutines:
get_tim, set_tim, dly_tsk, def_cyc, act_cyc, ref_cyc, def_alm, ref_alm, ret_tmr
Compatibility Kit Error Handing
There is one
error handling function defined in tx_uITRON.c and used throughout the Compatibility Kit, as follows:
In general, this routine is called when a basic usage error occurs. This may be used as a place to catch errors that are not detected if the application source is not checking the return status. The default processing for this routine is a simple spin loop.
The file eku_demo.c contains a demonstration system that utilizes uiTRON services. This demo application will demonstrate some of the basic OS objects of uiTRON, such as task, event flags, semaphore, and message buffers. This demo application should be used as an example of how to integrate the Compatibility Kit into your application.
Future Compatibility Kit Phases
Please get in touch with us for the next phases of this Compatibility Kit.
THREADX is a registered trademark of Express Logic. POSIX Compatibility Kit is a trademark of Express Logic.