SEGGER adds Stack Overflow Prevention (STOP) technology to Embedded Studio for ARM
June 19, 2023 -- The latest release of SEGGER's Embedded Studio for ARM comes with STOP technology, designed by SEGGER to reliably prevent stack overflows. With STOP enabled, the compiler adds a call to a stack limit-check routine wherever necessary, before adjusting the stack pointer.
The STOP option for the highly optimizing SEGGER Compiler can be easily switched on, without any change to application code. This way, all stack overflows are prevented. If a stack overflow has been prevented, the system can enter a safe state and recover.
STOP has a surprisingly low impact on size and speed: It adds only about 2 - 5% to code size and execution time, which typically does not have a significant impact on the performance of the system.
“An undetected stack overflow can be catastrophic,” says Rolf Segger, founder of SEGGER. “I recommend the use of STOP for all applications. However, for any safety critical application, I consider it essential. To the best of my knowledge, SEGGER is the only company offering such technology. Whether you’re a software engineer, a student, or a hobbyist, I encourage you to download and try Embedded Studio. It takes less than 15 minutes, is easy and is hassle-free. It is also cost-free for evaluation, education, and non-commercial purposes.”
A stack overflow can cause all kinds of failures in an embedded system, from hard-to-detect, seemingly random miscomputations to severe malfunctions or even crashes.
STOP simply works, protecting all stacks in the system. It protects the process stack, as well as the "main" stack used for interrupts. It can be used with any RTOS, provided the RTOS updates the stack-limit variable on a context switch.
The technology is currently available for Thumb-2 architectures such as Cortex-M4, Cortex-M7, Cortex-A9, and Cortex-A15. On ARMv7M architectures, STOP is ready to use in Embedded Studio with a single project option switch.
For more information on STOP technology as well as a project demonstrating the technology in the Embedded Studio simulator, check the following links:
Stack Overflow Prevention (STOP) technology on segger.com: https://www.segger.com/products/development-tools/embedded-studio/technology/stack-overflow-prevention/
Stack Overflow Prevention on wiki.segger.com: https://wiki.segger.com/Stack_Overflow_Prevention
About Embedded Studio
Embedded Studio is SEGGER’s multi-platform IDE (Integrated Development Environment). Characterized by its flexibility of use, it includes all the tools & features a developer needs for professional embedded C and C++ programming & development. It comes with SEGGER’s highly optimized emRun runtime and emFloat floating-point libraries, as well as SEGGER's smart Linker, all of which have been developed from the ground up specifically for resource-constrained embedded systems. In combination with the Clang-based, highly optimizing C/C++ SEGGER Compiler, extremely small yet efficient programs can be generated, putting every byte to work.
Embedded Studio is available on all platforms (Linux, macOS, and Windows) on Arm, Intel, and Apple Silicon.
With SEGGER’s friendly licensing, Embedded Studio can be used for evaluation, and for educational and non-commercial purposes, free of charge, with no restrictions in terms of code size, features or duration of use.
|
Related News
- SEGGER Embedded Studio for Arm now with hard real-time C++ support
- SEGGER adds 64-bit RISC-V support to Embedded Studio
- GigaDevice partners with SEGGER on Embedded Studio for RISC-V
- SEGGER releases new Embedded Studio for RISC-V with hard real-time C++ support
- SEGGER collaborates with HPMicro making Embedded Studio for RISC-V available at no cost
Breaking News
- Jury is out in the Arm vs Qualcomm trial
- Ceva Seeks To Exploit Synergies in Portfolio with Nano NPU
- Synopsys Responds to U.K. Competition and Markets Authority's Phase 1 Announcement Regarding Ansys Acquisition
- Alphawave Semi Scales UCIe™ to 64 Gbps Enabling >20 Tbps/mm Bandwidth Density for Die-to-Die Chiplet Connectivity
- RaiderChip Hardware NPU adds Falcon-3 LLM to its supported AI models
Most Popular
E-mail This Article | Printer-Friendly Page |