memory-analysis
Included with Lifetime
$97 forever
Embedded memory analysis, optimization, and leak detection
Resource Optimization
What this skill does
# Memory Analysis Skill
## Overview
This skill provides comprehensive memory analysis capabilities for embedded systems, including linker map analysis, stack usage estimation, heap fragmentation detection, and memory optimization strategies.
## Capabilities
### Linker Map Analysis
- Map file parsing and interpretation
- Symbol size analysis
- Section size breakdown
- Memory region utilization
- Unused symbol detection
- Cross-reference analysis
### Stack Analysis
- Static stack usage analysis
- Call graph generation
- Worst-case stack depth calculation
- Per-function stack usage
- Interrupt stack analysis
- Stack overflow detection strategies
### Heap Analysis
- Heap fragmentation analysis
- Allocation pattern analysis
- Memory pool sizing
- Leak detection strategies
- Peak usage tracking
- Block size distribution
### Memory Optimization
- Section placement optimization
- Flash vs RAM trade-offs
- Const correctness enforcement
- String pooling strategies
- Data structure packing
- Alignment optimization
### Memory Protection
- MPU region configuration
- Stack guard implementation
- Buffer overflow protection
- Memory isolation strategies
### Tooling Integration
- GCC map file analysis
- ARM Compiler map files
- Puncover integration
- Static analysis integration
- objdump/readelf usage
## Target Processes
- `memory-architecture-planning.js` - Memory layout design
- `code-size-optimization.js` - Size reduction strategies
- `execution-speed-profiling.js` - Memory access optimization
- `bootloader-implementation.js` - Multi-image memory layout
## Dependencies
- Linker map file parsers
- Stack analysis tools (Puncover, GCC stack analysis)
- objdump, readelf, nm utilities
## Usage Context
This skill is invoked when tasks require:
- Memory usage optimization
- Stack size determination
- Heap configuration design
- Memory leak investigation
- Code size reduction
## Analysis Outputs
### Map File Summary
```
Section Size Used Free Usage
.text 128 KB 98.5 KB 29.5 KB 76.9%
.rodata 32 KB 24.2 KB 7.8 KB 75.6%
.data 8 KB 2.1 KB 5.9 KB 26.2%
.bss 16 KB 12.4 KB 3.6 KB 77.5%
```
### Stack Analysis
```
Function Stack Depth Total
main 64 1 64
process_data 128 2 192
parse_message 256 3 448
handle_packet 96 4 544
```
## Configuration
```yaml
memory_analysis:
map_file: build/firmware.map
stack_analysis: enabled
heap_tracking: enabled
warning_threshold: 85 # percent
tools:
- puncover
- gcc-stack-analyzer
```