Express Logic StackX Determines Stack Size

StackX, from Express Logic, is a development tool that helps embedded systems developers avoid stack overflow problems. StackX 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 available from Express Logic at a price of $1,000 per developer for a perpetual license.

StackX computes the required stack size automatically for developers, enabling them to allocate just the amount of memory needed to be safe, and avoid wasting any additional, unnecessary memory. StackX analyzes a program’s executable (.elf) file, mapping all function calls, interrupt service routines, local variables, and any other factors related to stack usage. This enables StackX to calculate each thread’s maximum stack memory requirements. StackX produces a “call-tree” that shows the maximum stack usage for each thread. This enables developers to see their program flow and assists them in optimizing their code.

StackX employs a proprietary, patent-pending algorithm that is accurate, efficient, and only requires an “.elf” file. While it may be used with any .elf file, StackX has particular visibility into ThreadX RTOS-based applications, with its thread-aware stack size calculation. It recognizes recursion conditions, where infinite memory would be required to avoid potential overflow, so programmers can correct the code, rather than attempt to allocate more memory.

More info: Express Logic