๐Ÿ“Shadow stack

Shadow stack is a technique of maintaining a linked list of frames that mimics the call stack. The frames can carry useful information.

The shadow stack does not have to correspond to actual call stack though. e.g., with the presence of CSP it will not

Usages

  • can be used in garbage collection to track GC roots Henderson2002

  • in debugger

  • I believe it is used in Haskell to maintain stacktraces (even though stacktraces do not correspond to actual call stack because of lazy evaluation)

Backlinks