Everything About ___
Live briefing

Everything about Stack trace

Report of stack frames during program execution

In computing, a stack trace is a report of the active stack frames at a certain point in time during the execution of a program. When a program is run, memory is often dynamically allocated in two places: the stack and the heap. Memory is continuously allocated on a stack but not on a heap. Stack also refers to a programming construct, thus to differentiate it, this stack is referred to as the program's function call stack. Technically, once a block of memory has been allocated on the stack, it cannot be easily removed as there can be other blocks of memory that were allocated after it. Each time a function is called in a program, a block of memory called an activation record is allocated on top of the call stack. Generally, the activation record stores the function's arguments and local variables. What exactly it contains and how it's laid out is determined by the calling convention. Wikipedia →

🧭 Start here: a 6-step reading path

  1. Read the overview: Stack traceA 5-minute orientation
  2. Skim a recent paper: A stack-up electrochemical device based on metal-organic framework modified carbon paper for ultra-trace lead and cadmium ions detectionInfluential work since 2022
  3. Pick up a classic book: Fundamentals of Computer Programming with CSharp Free Book (by Nakov & Co.)The most-reprinted book on the subject
  4. Read the landmark paper: STAR: Stack Trace Based Automatic Crash Reproduction via Symbolic ExecutionCited 63 times
  5. Go sideways: Entry pointA closely related topic
  6. Go sideways: Linkage (software)A closely related topic

📖 Definitions

Noun A hierarchical trace of the function calls made by a program, used in debugging.

🗂️ The subject at a glance

  1. Language support

🏆 Landmark papers (most cited)

🆕 Influential since 2022

📚 Books worth reading

Ranked by number of editions on Open Library, a rough measure of how lasting a book is.

🔗 Related topics