WESTON, Fla., March 30, 2011 /PRNewswire/ -- Micrium today announced that its uC/OS-II and uC/OS-III kernels are the first to offer improved support for the IAR Embedded Workbench for ARM v 6.20 multi-threaded applications. Application developers who write code for use in a multi-threaded environment will find the support critical when protecting shared objects using system locks, file-stream locks, and thread-local storage (TLS) in multi-threaded environments.
"Micrium and IAR collaborated in providing the first thread (task) safe support in our uC/OS kernels for the IAR DLIB run-time library. Now users can access all inherent non-reentrant features of C/C++ in a thread-safe manner. Protection for such non-reentrant functions as strtok(), rand(), errno() and more are local to each thread," said Jean Labrosse, founder and CEO of Micrium. "Global and static variables typically used by these functions are now protected by the Micrium kernels," he added.
Thread safety is a programming concept applicable in the context of multi-threaded programs, and represents a key challenge to programmers. A piece of code is considered thread-safe when it can be used in a multi-threaded environment. Within this environment, the C/C++ library must handle all library objects differently based on whether they are global or local.
In order to have a true global object, any updates of its state must be guarded by a locking mechanism so that only one thread can update it at a time, in which case, an object is local to each thread, and the static variables containing the object state must reside in a variable area local for the thread (the thread-local storage or, TLS). The DLIB library employs two locks, system and file-stream locks, to protect objects that belong to the runtime environment.
"As more and more embedded systems becomes multi-threaded when complexity grows, thread safety becomes critical," said Lotta Frimanson, Product Manager at IAR Systems. She concluded: "Micrium's offering for multi-threaded applications is important for the development of safety-critical systems."
Micrium provides the highest quality embedded software components by way of cleanest source code, unsurpassed documentation, and customer support. Starting with Micrium's flagship product, uC/OS through its complete line of software, Micrium shortens time to market throughout all product development cycles and builds products that address today's increased design complexity. For additional information, visit: www.Micrium.com.