New tool identifies maximum stack usage, ending guesswork and stack overflow
Express Logic, Inc., the worldwide leader in royalty-free real-time operating systems (RTOS), today announced that its new StackX™ development tool was selected by eg3.com as “Best of Show” at this year’s Embedded Systems Conference (ESC) in San Jose. Each year, eg3.com selects a small number of new products at major industry conferences such as ESC, and names them Best of Show. Last year, Express Logic’s BenchX® Eclipse-based IDE won an Editor’s Tech Choice award from eg3.com. This year, StackX garnered a Best Of Show selection.
“Express Logic’s new StackX tool enables developers to avoid stack overflow in embedded systems,” stated Jason McDonald, President of eg3.com. “We awarded it Best of Show because stack overflows are omnipresent problem in many embedded software designs. What’s cool about StackX is that it performs a comprehensive analysis of a complete application at the executable code level, computing the worst case stack usage the application can experience.”
StackX is a new development tool that helps embedded developers avoid stack overflow problems that traditionally have plagued embedded systems, while at the same time avoiding overly cautious memory allocation for the stack, which wastes precious system resources. StackX performs a comprehensive static analysis of a complete application at the executable code level, computing the worst-case stack usage the application can experience. Express Logic is the only RTOS company that can tell its customers how large a stack they need for each application thread.
Notably, stack overflows have challenged embedded system design for many years. Industry commentator Jack Ganssle has observed:
""With experience, one learns the standard, scientific way to compute the proper size for a stack: Pick a size at random and hope.""
-- Jack Ganssle, “The Art of Designing Embedded Systems,” Elsevier, 1999.
After seeing StackX at ESC, Ganssle commented, “Express Logic (makers of the ThreadX RTOS) had a huge booth where they demonstrated the latest in their X-series of products: StackX. StackX analyzes your .elf file and computes exactly how much stack space your application will require. There are some limitations, of course. It can't handle recursion or a few other oddball techniques. But StackX does change the standard way off calculating stack size (take a wild guess and sacrifice a goat) to nearly a science.”
Jim Turley, editor of Embedded Technology Journal, added his enthusiasm for StackX, commenting, “So let us heap praise on StackX for its ability to quantify a hitherto informal process. Any tool that improves code reliability is a good thing. If it decreases programmer frustration, so much the better. A well-proportioned stack is a thing of beauty, and StackX provides a way for interested programmers to stay abreast of their memory requirements. “
“We greatly appreciate eg3.com’s award for StackX as Best Of Show, and we’re proud to have earned their praise,” commented William E. Lamie, president of Express Logic. “StackX joins our award-winning BenchX IDE, and our new TraceX V5 analyzer as we continue to expand our tools offerings to better serve the needs of embedded software developers.”
Shipping and Availability
StackX is available from Express Logic at a price of $1,000 per developer for a perpetual license.
About Express Logic and ThreadX
Headquartered in San Diego, CA, Express Logic offers the most advanced run-time solution for deeply embedded applications, including the popular ThreadX® RTOS, the high-performance NetX™ TCP/IP stack, the FileX® embedded FAT compatible file system, the new GUIX™ GUI development toolkit, and the USBX™ Host/Device USB protocol stack. All products from Express Logic include full source-code and have no run-time royalties. For more information about Express Logic solutions, please visit our web site at http://www.rtos.com, call 1-888-THREADX, or email inquiries to email@example.com.
ThreadX, BenchX, TraceX, and FileX are registered trademarks, and NetX, CANX, USBX, StackX, preemption-threshold, picokernel, and UDP fast path technology, are trademarks of Express Logic, Inc. All other brands or product names are the property of their respective holders.