VxWorks provides dynamic memory pools and heap inspection commands.
malloc, free — Standard allocation functions exist in user code; shell offers mallocShow in some BSPs.
sysMemTop / memPartInfo — Inspect partitions and region sizes (implementation dependent). vxworks command cheat sheet
cacheShow / cacheFlush — Inspect and flush CPU caches when working with DMA or memory-mapped I/O.
Best practice: flush caches before handing buffers to DMA; prefer statically allocated buffers where possible in hard real-time paths. VxWorks provides dynamic memory pools and heap inspection
VxWorks offers multiple shell interfaces: the traditional C-based shell (sometimes called the VxWorks shell), the Tornado/Target Server remote shell, and the newer VxWorks 6+ shell variants including the vxShell and shell-like utilities accessible via network consoles (telnet, SSH) or serial ports. Access is commonly through a development host connected to the embedded target; commands entered at the shell affect the running target in real time.
Since the shell is a C interpreter, you can declare and print variables: malloc, free — Standard allocation functions exist in
int x = 42; // Declare
char * msg = "Hello"; // Declare string
printVal x; // Print value
printf("Msg: %s\n", msg); // Use stdio functions
| Command | Description |
|---------|-------------|
| help or h | Show available shell commands |
| lkup [“string”] | List symbols in system (partial match) |
| symFind <name> | Find symbol address |
| print <expr> | Evaluate expression (C syntax) |
| b <address> | Set breakpoint (if shell has debugging support) |
| c | Continue after break |
| t | Trace single step |
| tr | Trace until return |
| reboot | Restart VxWorks |
| boot | Boot from default device |
| Command | Description |
|---------|-------------|
| wdShow | Show all active watchdog timers |
| wdStart <wdId>, <delayTicks>, <func>, <arg> | Start a watchdog |
| wdCancel <wdId> | Cancel watchdog |