Logo
Unionpedia
Communication
Get it on Google Play
New! Download Unionpedia on your Android™ device!
Free
Faster access than browser!
 

Call stack

Index Call stack

In computer science, a call stack is a stack data structure that stores information about the active subroutines of a computer program. [1]

222 relations: Actor model, Address space layout randomization, Addressing mode, Aliasing (computing), Anonymous recursion, Application binary interface, Assembly (CLI), AT&T Hobbit, Atari 2600, Autocode, AutoFetch, Automatic variable, Bank switching, BASIC Programming, Behavioral pattern, Belle (chess machine), Blue Screen of Death, Branch predictor, Buffer overflow, Buffer overflow protection, Burroughs B6x00-7x00 instruction set, Burroughs large systems descriptors, C (programming language), C dynamic memory allocation, C Sharp syntax, C standard library, Call graph, Calling convention, Casio FX-702P, CFI, CHICKEN (Scheme implementation), CHIP-8, Cilk, Clobbering, Cloning (programming), Code Access Security, Common Type System, Context switch, Continuation, Continuation-passing style, Copy elision, Core dump, Corecursion, Coroutine, Cross compiler, Debugging, Delimited continuation, Display, Divide and conquer algorithm, DTrace, ..., DWARF, Dynamic software updating, DynamoRIO, Edsger W. Dijkstra, Escape analysis, Eve Online, Exception handling, Exec (system call), Executable space protection, Extensible Embeddable Language, Final (Java), Flex machine, Fork (system call), Fork bomb, FP, Frame, Free Pascal, FreeRTOS, Freescale 68HC08, Freescale RS08, Freescale S08, Ftrace, Funarg problem, Function prologue, Function prototype, Gödel, Escher, Bach, Generator (computer programming), GNU Guile, Goto, Graph traversal, Green Dam Youth Escort, Hacking: The Art of Exploitation, High-level assembler, IBM 1130, ICL 2900 Series, Immunity-aware programming, Instruction set architecture, Intel 8008, Intel 80386, Intel 8080, Intel 8086, Intel Memory Model, Interrupts in 65xx processors, Java applet, Java syntax, Java virtual machine, JavaScript, Jensen's Device, Kernel marker, KGraft, Kpatch, Lambda lifting, LC-3, Link register, List of DOS commands, Loader (computing), Local variable, Low-level programming language, Man or boy test, Memory address, Memory footprint, Memory safety, Microsoft Visual Studio, Microsoft Visual Studio Debugger, ML (programming language), Motorola 68000, Motorola 68000 series, Motorola 68HC05, MUMPS syntax, NEC V60, Nested function, Network processor, Nintendo S-SMP, Non-local variable, Object file, Off-by-one error, Opcode, Operating system, Optimizing compiler, P-code machine, Parent pointer tree, PaX, Perl language structure, PIC microcontroller, Platform Invocation Services, Process (computing), Process control block, Processor register, Profiling (computer programming), Protected mode, Protothread, Quicksort, Rabbit 2000, Record (computer science), Recursion (computer science), Red zone (computing), Reentrancy (computing), Region-based memory management, Register spring, Resource acquisition is initialization, Resource management (computing), Return statement, Return-oriented programming, Return-to-libc attack, RotateRight Zoom, Rust (programming language), Scope (computer science), Secure by design, Secure coding, Security-focused operating system, Segmentation fault, Setcontext, Setjmp.h, Shadow stack, Shellsort, Sigreturn-oriented programming, Sorting algorithm, SP, SPARC, Special function register, ST6 and ST7, Stack, Stack (abstract data type), Stack buffer overflow, Stack machine, Stack overflow, Stack register, Stack trace, Stack-based memory allocation, Stackless Python, Static variable, Status register, STM8, Storage violation, Subroutine, SWEET16, Switching loop, Symbolics, SymbOS, System call, Tail call, Task state segment, Tcl, Thread (computing), Thread control block, TI MSP430, Timeline of DOS operating systems, TinyOS, Tracing garbage collection, Transaction Application Language, Transaction Processing Facility, Tree traversal, Turbo-Basic XL, Uncontrolled format string, Uninitialized variable, V850, Variable (computer science), Vax Common Lisp, VB Watch, WDC 65816/65802, WDC 65C02, Work stealing, WoW64, X86, X86 assembly language, X86 calling conventions, X86 memory segmentation, X87, XAP processor, Zahn's construct, Zen (microarchitecture), Zilog Z80. Expand index (172 more) »

Actor model

The actor model in computer science is a mathematical model of concurrent computation that treats "actors" as the universal primitives of concurrent computation.

New!!: Call stack and Actor model · See more »

Address space layout randomization

Address space layout randomization (ASLR) is a computer security technique involved in preventing exploitation of memory corruption vulnerabilities.

New!!: Call stack and Address space layout randomization · See more »

Addressing mode

Addressing modes are an aspect of the instruction set architecture in most central processing unit (CPU) designs.

New!!: Call stack and Addressing mode · See more »

Aliasing (computing)

In computing, aliasing describes a situation in which a data location in memory can be accessed through different symbolic names in the program.

New!!: Call stack and Aliasing (computing) · See more »

Anonymous recursion

In computer science, anonymous recursion is recursion which does not explicitly call a function by name.

New!!: Call stack and Anonymous recursion · See more »

Application binary interface

In computer software, an application binary interface (ABI) is an interface between two binary program modules; often, one of these modules is a library or operating system facility, and the other is a program that is being run by a user.

New!!: Call stack and Application binary interface · See more »

Assembly (CLI)

Defined by Microsoft for use in recent versions of Windows, an assembly in the Common Language Infrastructure (CLI) is a compiled code library used for deployment, versioning, and security.

New!!: Call stack and Assembly (CLI) · See more »

AT&T Hobbit

The AT&T Hobbit is a microprocessor design that AT&T Corporation developed in the early 1990s.

New!!: Call stack and AT&T Hobbit · See more »

Atari 2600

The Atari 2600 (or Atari Video Computer System before November 1982) is a home video game console from Atari, Inc. Released on September 11, 1977, it is credited with popularizing the use of microprocessor-based hardware and games contained on ROM cartridges, a format first used with the Fairchild Channel F in 1976.

New!!: Call stack and Atari 2600 · See more »

Autocode

Autocode is the name of a family of "simplified coding systems", later called programming languages, devised in the 1950s and 1960s for a series of digital computers at the Universities of Manchester, Cambridge and London.

New!!: Call stack and Autocode · See more »

AutoFetch

AutoFetch is a mechanism for automatically tuning object-relational mapping queries.

New!!: Call stack and AutoFetch · See more »

Automatic variable

In computer programming, an automatic variable is a local variable which is allocated and deallocated automatically when program flow enters and leaves the variable's scope.

New!!: Call stack and Automatic variable · See more »

Bank switching

Bank switching is a technique used in computer design to increase the amount of usable memory beyond the amount directly addressable by the processor.

New!!: Call stack and Bank switching · See more »

BASIC Programming

BASIC Programming (Model# CX2620) is an Atari 2600 cartridge that teaches simple computer programming.

New!!: Call stack and BASIC Programming · See more »

Behavioral pattern

In software engineering, behavioral design patterns are design patterns that identify common communication patterns between objects and realize these patterns.

New!!: Call stack and Behavioral pattern · See more »

Belle (chess machine)

Belle was a chess computer developed by Joe Condon (hardware) and Ken Thompson (software) at Bell Labs.

New!!: Call stack and Belle (chess machine) · See more »

Blue Screen of Death

A stop error, better known as a Blue Screen of Death (also known as a blue screen or BSOD) is an error screen displayed on a Windows computer system after a fatal system error, also known as a system crash: when the operating system reaches a condition where it can no longer operate safely.

New!!: Call stack and Blue Screen of Death · See more »

Branch predictor

In computer architecture, a branch predictor is a digital circuit that tries to guess which way a branch (e.g. an if–then–else structure) will go before this is known definitively.

New!!: Call stack and Branch predictor · See more »

Buffer overflow

In information security and programming, a buffer overflow, or buffer overrun, is an anomaly where a program, while writing data to a buffer, overruns the buffer's boundary and overwrites adjacent memory locations.

New!!: Call stack and Buffer overflow · See more »

Buffer overflow protection

Buffer overflow protection is any of various techniques used during software development to enhance the security of executable programs by detecting buffer overflows on stack-allocated variables, and preventing them from causing program misbehavior or from becoming serious security vulnerabilities.

New!!: Call stack and Buffer overflow protection · See more »

Burroughs B6x00-7x00 instruction set

The Burroughs B6x00-7x00 instruction set includes the set of valid operations for the Burroughs B6500, B7500 and later Burroughs large systems, including the current (as of 2006) Unisys Clearpath/MCP systems; it does not include the instruction for other Burroughs large systems including the B5000, B5500, B5700 and the B8500.

New!!: Call stack and Burroughs B6x00-7x00 instruction set · See more »

Burroughs large systems descriptors

Descriptors are an architectural feature of Burroughs large systems, including the current (as of 2006) Unisys Clearpath/MCP systems.

New!!: Call stack and Burroughs large systems descriptors · See more »

C (programming language)

C (as in the letter ''c'') is a general-purpose, imperative computer programming language, supporting structured programming, lexical variable scope and recursion, while a static type system prevents many unintended operations.

New!!: Call stack and C (programming language) · See more »

C dynamic memory allocation

C dynamic memory allocation refers to performing manual memory management for dynamic memory allocation in the C programming language via a group of functions in the C standard library, namely,, and.

New!!: Call stack and C dynamic memory allocation · See more »

C Sharp syntax

This article describes the syntax of the C# programming language.

New!!: Call stack and C Sharp syntax · See more »

C standard library

The C standard library or libc is the standard library for the C programming language, as specified in the ANSI C standard.

New!!: Call stack and C standard library · See more »

Call graph

A call graph (also known as a call multigraph) is a control flow graph, which represents calling relationships between subroutines in a computer program.

New!!: Call stack and Call graph · See more »

Calling convention

In computer science, a calling convention is an implementation-level (low-level) scheme for how subroutines receive parameters from their caller and how they return a result.

New!!: Call stack and Calling convention · See more »

Casio FX-702P

The FX-702P is a Pocket Computer, manufactured by Casio from 1981 to 1984.

New!!: Call stack and Casio FX-702P · See more »

CFI

CFI may refer to.

New!!: Call stack and CFI · See more »

CHICKEN (Scheme implementation)

CHICKEN is a compiler and interpreter for the Scheme programming language that compiles Scheme code to standard C. It is mostly R5RS compliant and offers many extensions to the standard.

New!!: Call stack and CHICKEN (Scheme implementation) · See more »

CHIP-8

CHIP-8 is an interpreted programming language, developed by Joseph Weisbecker.

New!!: Call stack and CHIP-8 · See more »

Cilk

Cilk, Cilk++ and Cilk Plus are general-purpose programming languages designed for multithreaded parallel computing.

New!!: Call stack and Cilk · See more »

Clobbering

In software engineering, clobbering a file or computer memory is overwriting its contents.

New!!: Call stack and Clobbering · See more »

Cloning (programming)

In computer science, cloning refers to the making of an exact copy of an object, frequently under the paradigm of instance-based programming, or object-oriented programming (OOP).

New!!: Call stack and Cloning (programming) · See more »

Code Access Security

Code Access Security (CAS), in the Microsoft.NET framework, is Microsoft's solution to prevent untrusted code from performing privileged actions.

New!!: Call stack and Code Access Security · See more »

Common Type System

In Microsoft's.NET Framework, the Common Type System (CTS) is a standard that specifies how type definitions and specific values of types are represented in computer memory.

New!!: Call stack and Common Type System · See more »

Context switch

In computing, a context switch is the process of storing the state of a process or of a thread, so that it can be restored and execution resumed from the same point later.

New!!: Call stack and Context switch · See more »

Continuation

In computer science and computer programming, a continuation is an abstract representation of the control state of a computer program.

New!!: Call stack and Continuation · See more »

Continuation-passing style

In functional programming, continuation-passing style (CPS) is a style of programming in which control is passed explicitly in the form of a continuation.

New!!: Call stack and Continuation-passing style · See more »

Copy elision

In C++ computer programming, copy elision refers to a compiler optimization technique that eliminates unnecessary copying of objects.

New!!: Call stack and Copy elision · See more »

Core dump

In computing, a core dump, crash dump, memory dump, or system dump consists of the recorded state of the working memory of a computer program at a specific time, generally when the program has crashed or otherwise terminated abnormally.

New!!: Call stack and Core dump · See more »

Corecursion

In computer science, corecursion is a type of operation that is dual to recursion.

New!!: Call stack and Corecursion · See more »

Coroutine

Coroutines are computer-program components that generalize subroutines for non-preemptive multitasking, by allowing multiple entry points for suspending and resuming execution at certain locations.

New!!: Call stack and Coroutine · See more »

Cross compiler

A cross compiler is a compiler capable of creating executable code for a platform other than the one on which the compiler is running.

New!!: Call stack and Cross compiler · See more »

Debugging

Debugging is the process of finding and resolving defects or problems within a computer program that prevent correct operation of computer software or a system.

New!!: Call stack and Debugging · See more »

Delimited continuation

In programming languages, a delimited continuation, composable continuation or partial continuation, is a "slice" of a continuation frame that has been reified into a function.

New!!: Call stack and Delimited continuation · See more »

Display

Display may refer to.

New!!: Call stack and Display · See more »

Divide and conquer algorithm

In computer science, divide and conquer is an algorithm design paradigm based on multi-branched recursion.

New!!: Call stack and Divide and conquer algorithm · See more »

DTrace

DTrace is a comprehensive dynamic tracing framework created by Sun Microsystems for troubleshooting kernel and application problems on production systems in real time.

New!!: Call stack and DTrace · See more »

DWARF

DWARF is a widely used, standardized debugging data format.

New!!: Call stack and DWARF · See more »

Dynamic software updating

In computer science, dynamic software updating (DSU) is a field of research pertaining to upgrading programs while they are running.

New!!: Call stack and Dynamic software updating · See more »

DynamoRIO

DynamoRIO is a BSD licensed dynamic binary instrumentation framework for the development of dynamic program analysis tools.

New!!: Call stack and DynamoRIO · See more »

Edsger W. Dijkstra

Edsger Wybe Dijkstra (11 May 1930 – 6 August 2002) was a Dutch systems scientist, programmer, software engineer, science essayist, and early pioneer in computing science.

New!!: Call stack and Edsger W. Dijkstra · See more »

Escape analysis

In compiler optimization, escape analysis is a method for determining the dynamic scope of pointers where in the program a pointer can be accessed.

New!!: Call stack and Escape analysis · See more »

Eve Online

Eve Online (stylised EVE Online) is a space-based, persistent world massively multiplayer online role-playing game (MMORPG) developed and published by CCP Games.

New!!: Call stack and Eve Online · See more »

Exception handling

Exception handling is the process of responding to the occurrence, during computation, of exceptions – anomalous or exceptional conditions requiring special processing – often changing the normal flow of program execution.

New!!: Call stack and Exception handling · See more »

Exec (system call)

In computing, exec is a functionality of an operating system that runs an executable file in the context of an already existing process, replacing the previous executable.

New!!: Call stack and Exec (system call) · See more »

Executable space protection

In computer security, executable-space protection marks memory regions as non-executable, such that an attempt to execute machine code in these regions will cause an exception.

New!!: Call stack and Executable space protection · See more »

Extensible Embeddable Language

The Extensible Embeddable Language (EEL) is a scripting and programming language in development by David Olofson.

New!!: Call stack and Extensible Embeddable Language · See more »

Final (Java)

In the Java programming language, the final keyword is used in several contexts to define an entity that can only be assigned once.

New!!: Call stack and Final (Java) · See more »

Flex machine

The Flex Computer System was developed by Michael Foster and Ian Currie of Royal Signals and Radar Establishment (RSRE) in Malvern, England, during the late 1970s and 1980s.

New!!: Call stack and Flex machine · See more »

Fork (system call)

In computing, particularly in the context of the Unix operating system and its workalikes, fork is an operation whereby a process creates a copy of itself.

New!!: Call stack and Fork (system call) · See more »

Fork bomb

In computing, a fork bomb (also called rabbit virus or wabbit) is a denial-of-service attack wherein a process continually replicates itself to deplete available system resources, slowing down or crashing the system due to resource starvation.

New!!: Call stack and Fork bomb · See more »

FP

FP may refer to.

New!!: Call stack and FP · See more »

Frame

A frame is often a structural system that supports other components of a physical construction and/or steel frame that limits the construction's extent.

New!!: Call stack and Frame · See more »

Free Pascal

Free Pascal Compiler (FPC) is a compiler for the closely related programming language dialects, Pascal and Object Pascal.

New!!: Call stack and Free Pascal · See more »

FreeRTOS

FreeRTOS is a real-time operating system kernel for embedded devices that has been ported to 35 microcontrollers.

New!!: Call stack and FreeRTOS · See more »

Freescale 68HC08

The 68HC08 (HC08 in short) is a broad family of 8-bit microcontrollers from Freescale Semiconductor (formerly Motorola Semiconductor).

New!!: Call stack and Freescale 68HC08 · See more »

Freescale RS08

The RS08 core is a reduced-resource version of the Freescale MC68HCS08 central processing unit (CPU), a member of the 6800 microprocessor family.

New!!: Call stack and Freescale RS08 · See more »

Freescale S08

The 9S08 (68HCS08 or S08 for short) is a 8-bit microcontroller (µC) family originally produced by Motorola, later by Freescale Semiconductor,, and currently by NXP, descended from the Motorola 6800 microprocessor.

New!!: Call stack and Freescale S08 · See more »

Ftrace

ftrace (abbreviated from Function Tracer) is a tracing framework for the Linux kernel.

New!!: Call stack and Ftrace · See more »

Funarg problem

In computer science, the funarg problem refers to the difficulty in implementing first-class functions (functions as first-class objects) in programming language implementations so as to use stack-based memory allocation of the functions.

New!!: Call stack and Funarg problem · See more »

Function prologue

In assembly language programming, the function prologue is a few lines of code at the beginning of a function, which prepare the stack and registers for use within the function.

New!!: Call stack and Function prologue · See more »

Function prototype

In computer programming, a function prototype or function interface is a declaration of a function that specifies the function's name and type signature (arity, data types of parameters, and return type), but omits the function body.

New!!: Call stack and Function prototype · See more »

Gödel, Escher, Bach

Gödel, Escher, Bach: An Eternal Golden Braid, also known as GEB, is a 1979 book by Douglas Hofstadter.

New!!: Call stack and Gödel, Escher, Bach · See more »

Generator (computer programming)

In computer science, a generator is a special routine that can be used to control the iteration behaviour of a loop.

New!!: Call stack and Generator (computer programming) · See more »

GNU Guile

GNU Guile is the preferred extension system for the GNU Project, which features an implementation of the Scheme programming language.

New!!: Call stack and GNU Guile · See more »

Goto

GoTo (goto, GOTO, GO TO or other case combinations, depending on the programming language) is a statement found in many computer programming languages.

New!!: Call stack and Goto · See more »

Graph traversal

In computer science, graph traversal (also known as graph search) refers to the process of visiting (checking and/or updating) each vertex in a graph.

New!!: Call stack and Graph traversal · See more »

Green Dam Youth Escort

Green Dam Youth Escort is content-control software for Windows developed in the People's Republic of China (PRC).

New!!: Call stack and Green Dam Youth Escort · See more »

Hacking: The Art of Exploitation

Hacking: The Art of Exploitation is a book by Jon "Smibbs" Erickson about computer security and network security.

New!!: Call stack and Hacking: The Art of Exploitation · See more »

High-level assembler

High-level assemblers in computing are assemblers for assembly language that incorporate features found in high-level programming languages.

New!!: Call stack and High-level assembler · See more »

IBM 1130

The IBM 1130 Computing System, introduced in 1965, was IBM's least expensive computer at that time.

New!!: Call stack and IBM 1130 · See more »

ICL 2900 Series

The ICL 2900 Series was a range of mainframe computer systems announced by the UK manufacturer ICL on 9 October 1974.

New!!: Call stack and ICL 2900 Series · See more »

Immunity-aware programming

When writing firmware for an embedded system, immunity-aware programming refers to programming techniques which improve the tolerance of transient errors in the program counter or other modules of a program that would otherwise lead to failure.

New!!: Call stack and Immunity-aware programming · See more »

Instruction set architecture

An instruction set architecture (ISA) is an abstract model of a computer.

New!!: Call stack and Instruction set architecture · See more »

Intel 8008

The Intel 8008 ("eight-thousand-eight" or "eighty-oh-eight") is an early byte-oriented microprocessor designed and manufactured by Intel and introduced in April 1972.

New!!: Call stack and Intel 8008 · See more »

Intel 80386

The Intel 80386, also known as i386 or just 386, is a 32-bit microprocessor introduced in 1985.

New!!: Call stack and Intel 80386 · See more »

Intel 8080

The Intel 8080 ("eighty-eighty") was the second 8-bit microprocessor designed and manufactured by Intel and was released in April 1974.

New!!: Call stack and Intel 8080 · See more »

Intel 8086

The 8086 (also called iAPX 86) is a 16-bit microprocessor chip designed by Intel between early 1976 and mid-1978, when it was released.

New!!: Call stack and Intel 8086 · See more »

Intel Memory Model

In computing, Intel Memory Model refers to a set of six different memory models of the x86 CPU operating in real mode which control how the segment registers are used and the default size of pointers.

New!!: Call stack and Intel Memory Model · See more »

Interrupts in 65xx processors

The 65xx family of microprocessors, consisting of the MOS Technology 6502 and its derivatives, the WDC 65C02, WDC 65C802 and WDC 65C816, and CSG 65CE02, all handle interrupts in a similar fashion.

New!!: Call stack and Interrupts in 65xx processors · See more »

Java applet

A Java applet was a small application that is written in the Java programming language, or another programming language that compiles to Java bytecode, and delivered to users in the form of Java bytecode.

New!!: Call stack and Java applet · See more »

Java syntax

The syntax of the Java programming language is the set of rules defining how a Java program is written and interpreted.

New!!: Call stack and Java syntax · See more »

Java virtual machine

A Java virtual machine (JVM) is a virtual machine that enables a computer to run Java programs as well as programs written in other languages and compiled to Java bytecode.

New!!: Call stack and Java virtual machine · See more »

JavaScript

JavaScript, often abbreviated as JS, is a high-level, interpreted programming language.

New!!: Call stack and JavaScript · See more »

Jensen's Device

Jensen's Device is a computer programming technique that exploits call by name.

New!!: Call stack and Jensen's Device · See more »

Kernel marker

Kernel markers were a static kernel instrumentation support mechanism for Linux kernel source code, allowing special tools such as LTTng, LTTng's Tracing Wiki or SystemTap, SystemTap Wiki to trace information exposed by these probe points.

New!!: Call stack and Kernel marker · See more »

KGraft

kGraft is a feature of the Linux kernel that implements live patching of a running kernel, which allows kernel patches to be applied while the kernel is still running.

New!!: Call stack and KGraft · See more »

Kpatch

kpatch is a feature of the Linux kernel that implements live patching of a running kernel, which allows kernel patches to be applied while the kernel is still running.

New!!: Call stack and Kpatch · See more »

Lambda lifting

Lambda lifting is a meta-process that restructures a computer program so that functions are defined independently of each other in a global scope.

New!!: Call stack and Lambda lifting · See more »

LC-3

Little Computer 3, or LC-3, is a type of computer educational programming language, an assembly language, which is a type of low-level programming language.

New!!: Call stack and LC-3 · See more »

Link register

A link register is a special-purpose register which holds the address to return to when a function call completes.

New!!: Call stack and Link register · See more »

List of DOS commands

This article presents a list of commands used by DOS operating systems, especially as used on x86-based IBM PC compatibles (PCs).

New!!: Call stack and List of DOS commands · See more »

Loader (computing)

In computer systems a loader is the part of an operating system that is responsible for loading programs and libraries.

New!!: Call stack and Loader (computing) · See more »

Local variable

In computer science, a local variable is a variable that is given local scope.

New!!: Call stack and Local variable · See more »

Low-level programming language

A low-level programming language is a programming language that provides little or no abstraction from a computer's instruction set architecture—commands or functions in the language map closely to processor instructions.

New!!: Call stack and Low-level programming language · See more »

Man or boy test

The man or boy test was proposed by computer scientist Donald Knuth as a means of evaluating implementations of the ALGOL 60 programming language.

New!!: Call stack and Man or boy test · See more »

Memory address

In computing, a memory address is a reference to a specific memory location used at various levels by software and hardware.

New!!: Call stack and Memory address · See more »

Memory footprint

Memory footprint refers to the amount of main memory that a program uses or references while running.

New!!: Call stack and Memory footprint · See more »

Memory safety

Memory safety is the state of being protected from various software bugs and security vulnerabilities when dealing with memory access, such as buffer overflows and dangling pointers.

New!!: Call stack and Memory safety · See more »

Microsoft Visual Studio

Microsoft Visual Studio is an integrated development environment (IDE) from Microsoft.

New!!: Call stack and Microsoft Visual Studio · See more »

Microsoft Visual Studio Debugger

The Microsoft Visual Studio Debugger is a debugger that ships along with all versions of Microsoft Visual Studio.

New!!: Call stack and Microsoft Visual Studio Debugger · See more »

ML (programming language)

ML (Meta Language) is a general-purpose functional programming language.

New!!: Call stack and ML (programming language) · See more »

Motorola 68000

The Motorola 68000 ("'sixty-eight-thousand'"; also called the m68k or Motorola 68k, "sixty-eight-kay") is a 16/32-bit CISC microprocessor, which implements a 32-bit instruction set, with 32-bit registers and 32-bit internal data bus, but with a 16-bit data ALU and two 16-bit arithmetic ALUs and a 16-bit external data bus, designed and marketed by Motorola Semiconductor Products Sector.

New!!: Call stack and Motorola 68000 · See more »

Motorola 68000 series

The Motorola 68000 series (also termed 680x0, m68000, m68k, or 68k) is a family of 32-bit CISC microprocessors.

New!!: Call stack and Motorola 68000 series · See more »

Motorola 68HC05

The 68HC05 (HC05 in short) is a broad family of 8-bit microcontrollers from Freescale Semiconductor (formerly Motorola Semiconductor).

New!!: Call stack and Motorola 68HC05 · See more »

MUMPS syntax

MUMPS syntax allows multiple commands to appear on a line, grouped into procedures (subroutines) in a fashion similar to most structured programming systems.

New!!: Call stack and MUMPS syntax · See more »

NEC V60

NEC V60 is a CISC microprocessor once manufactured by NEC started in 1986.

New!!: Call stack and NEC V60 · See more »

Nested function

In computer programming, a nested function (or nested procedure or subroutine) is a function which is defined within another function, the enclosing function.

New!!: Call stack and Nested function · See more »

Network processor

A network processor is an integrated circuit which has a feature set specifically targeted at the networking application domain.

New!!: Call stack and Network processor · See more »

Nintendo S-SMP

The Nintendo S-SMP is the audio processing unit of the Super Nintendo Entertainment System (SNES) video game console.

New!!: Call stack and Nintendo S-SMP · See more »

Non-local variable

In programming language theory, a non-local variable is a variable that is not defined in the local scope.

New!!: Call stack and Non-local variable · See more »

Object file

An object file is a file containing object code, meaning relocatable format machine code that is usually not directly executable.

New!!: Call stack and Object file · See more »

Off-by-one error

An off-by-one error (OBOE), also commonly known as an OBOB (off-by-one bug), or OB1 error is a logic error involving the discrete equivalent of a boundary condition.

New!!: Call stack and Off-by-one error · See more »

Opcode

In computing, an opcode (abbreviated from operation code, also known as instruction syllable, instruction parcel or opstring) is the portion of a machine language instruction that specifies the operation to be performed.

New!!: Call stack and Opcode · See more »

Operating system

An operating system (OS) is system software that manages computer hardware and software resources and provides common services for computer programs.

New!!: Call stack and Operating system · See more »

Optimizing compiler

In computing, an optimizing compiler is a compiler that tries to minimize or maximize some attributes of an executable computer program.

New!!: Call stack and Optimizing compiler · See more »

P-code machine

In computer programming, a p-code machine, or portable code machine is a virtual machine designed to execute p-code (the assembly language of a hypothetical CPU).

New!!: Call stack and P-code machine · See more »

Parent pointer tree

In computer science, an in-tree or parent pointer tree is an -ary tree data structure in which each node has a pointer to its parent node, but no pointers to child nodes.

New!!: Call stack and Parent pointer tree · See more »

PaX

PaX is a patch for the Linux kernel that implements least privilege protections for memory pages.

New!!: Call stack and PaX · See more »

Perl language structure

The structure of the Perl programming language encompasses both the syntactical rules of the language and the general ways in which programs are organized.

New!!: Call stack and Perl language structure · See more »

PIC microcontroller

PIC (usually pronounced as "pick") is a family of microcontrollers made by Microchip Technology, derived from the PIC1650"PICmicro Family Tree", PIC16F Seminar Presentation originally developed by General Instrument's Microelectronics Division.

New!!: Call stack and PIC microcontroller · See more »

Platform Invocation Services

Platform Invocation Services, commonly referred to as P/Invoke, is a feature of Common Language Infrastructure implementations, like Microsoft's Common Language Runtime, that enables managed code to call native code.

New!!: Call stack and Platform Invocation Services · See more »

Process (computing)

In computing, a process is an instance of a computer program that is being executed.

New!!: Call stack and Process (computing) · See more »

Process control block

Process Control Block (PCB, also called Task Controlling Block, Entry of the Process Table, Task Struct, or Switchframe) is a data structure in the operating system kernel containing the information needed to manage the scheduling of a particular process.

New!!: Call stack and Process control block · See more »

Processor register

In computer architecture, a processor register is a quickly accessible location available to a computer's central processing unit (CPU).

New!!: Call stack and Processor register · See more »

Profiling (computer programming)

In software engineering, profiling ("program profiling", "software profiling") is a form of dynamic program analysis that measures, for example, the space (memory) or time complexity of a program, the usage of particular instructions, or the frequency and duration of function calls.

New!!: Call stack and Profiling (computer programming) · See more »

Protected mode

In computing, protected mode, also called protected virtual address mode, is an operational mode of x86-compatible central processing units (CPUs).

New!!: Call stack and Protected mode · See more »

Protothread

A protothread is a low-overhead mechanism for concurrent programming.

New!!: Call stack and Protothread · See more »

Quicksort

Quicksort (sometimes called partition-exchange sort) is an efficient sorting algorithm, serving as a systematic method for placing the elements of an array in order.

New!!: Call stack and Quicksort · See more »

Rabbit 2000

The Rabbit 2000 is a high-performance 8-bit microcontroller designed by Rabbit Semiconductor for embedded system applications.

New!!: Call stack and Rabbit 2000 · See more »

Record (computer science)

In computer science, a record (also called a structure, struct, or compound data) is a basic data structure.

New!!: Call stack and Record (computer science) · See more »

Recursion (computer science)

Recursion in computer science is a method of solving a problem where the solution depends on solutions to smaller instances of the same problem (as opposed to iteration).

New!!: Call stack and Recursion (computer science) · See more »

Red zone (computing)

In computing, a red zone is a fixed-size area in a function's stack frame beyond the current stack pointer which is not preserved by that function.

New!!: Call stack and Red zone (computing) · See more »

Reentrancy (computing)

In computing, a computer program or subroutine is called reentrant if it can be interrupted in the middle of its execution and then safely be called again ("re-entered") before its previous invocations complete execution.

New!!: Call stack and Reentrancy (computing) · See more »

Region-based memory management

In computer science, region-based memory management is a type of memory management in which each allocated object is assigned to a region.

New!!: Call stack and Region-based memory management · See more »

Register spring

In computer security, a register spring is a sort of trampoline.

New!!: Call stack and Register spring · See more »

Resource acquisition is initialization

Resource acquisition is initialization (RAII)Bjarne Stroustrup Accessed on 2013-01-02.

New!!: Call stack and Resource acquisition is initialization · See more »

Resource management (computing)

In computer programming, resource management refers to techniques for managing resources (components with limited availability).

New!!: Call stack and Resource management (computing) · See more »

Return statement

In computer programming, a return statement causes execution to leave the current subroutine and resume at the point in the code immediately after where the subroutine was called, known as its return address.

New!!: Call stack and Return statement · See more »

Return-oriented programming

Return-oriented programming (ROP) is a computer security exploit technique that allows an attacker to execute code in the presence of security defenses such as executable space protection and code signing.

New!!: Call stack and Return-oriented programming · See more »

Return-to-libc attack

A "return-to-libc" attack is a computer security attack usually starting with a buffer overflow in which a subroutine return address on a call stack is replaced by an address of a subroutine that is already present in the process’ executable memory, bypassing the NX bit feature (if present) and ridding the attacker of the need to inject their own code.

New!!: Call stack and Return-to-libc attack · See more »

RotateRight Zoom

Zoom is a performance analysis tool for applications running on the Linux and Mac OS X operating systems from RotateRight.

New!!: Call stack and RotateRight Zoom · See more »

Rust (programming language)

Rust is a systems programming language sponsored by Mozilla which describes it as a "safe, concurrent, practical language," supporting functional and imperative-procedural paradigms.

New!!: Call stack and Rust (programming language) · See more »

Scope (computer science)

In computer programming, the scope of a name binding – an association of a name to an entity, such as a variable – is the region of a computer program where the binding is valid: where the name can be used to refer to the entity.

New!!: Call stack and Scope (computer science) · See more »

Secure by design

Secure by design, in software engineering, means that the software has been designed from the ground up to be secure.

New!!: Call stack and Secure by design · See more »

Secure coding

Secure coding is the practice of developing computer software in a way that guards against the accidental introduction of security vulnerabilities.

New!!: Call stack and Secure coding · See more »

Security-focused operating system

This is a list of operating systems with a sharp security focus.

New!!: Call stack and Security-focused operating system · See more »

Segmentation fault

In computing, a segmentation fault (often shortened to segfault) or access violation is a fault, or failure condition, raised by hardware with memory protection, notifying an operating system (OS) the software has attempted to access a restricted area of memory (a memory access violation).

New!!: Call stack and Segmentation fault · See more »

Setcontext

setcontext is one of a family of C library functions (the others being getcontext, makecontext and swapcontext) used for context control.

New!!: Call stack and Setcontext · See more »

Setjmp.h

setjmp.h is a header defined in the C standard library to provide "non-local jumps": control flow that deviates from the usual subroutine call and return sequence.

New!!: Call stack and Setjmp.h · See more »

Shadow stack

In computer security, a shadow stack is a mechanism for protecting a procedure's stored return address, such as from a stack buffer overflow.

New!!: Call stack and Shadow stack · See more »

Shellsort

Shellsort, also known as Shell sort or Shell's method, is an in-place comparison sort.

New!!: Call stack and Shellsort · See more »

Sigreturn-oriented programming

Sigreturn-oriented programming (SROP) is a computer security exploit technique that allows an attacker to execute code in presence of security measures such as non-executable memory and code signing.

New!!: Call stack and Sigreturn-oriented programming · See more »

Sorting algorithm

In computer science, a sorting algorithm is an algorithm that puts elements of a list in a certain order.

New!!: Call stack and Sorting algorithm · See more »

SP

Sp or SP may refer to.

New!!: Call stack and SP · See more »

SPARC

SPARC, for Scalable Processor Architecture, is a reduced instruction set computing (RISC) instruction set architecture (ISA) originally developed by Sun Microsystems.

New!!: Call stack and SPARC · See more »

Special function register

A Special Function Register (or Special Purpose Register, or simply Special Register) is a register within a microprocessor, which controls or monitors various aspects of the microprocessor's function.

New!!: Call stack and Special function register · See more »

ST6 and ST7

The ST6 and ST7 are 8-bit microcontroller product lines from STMicroelectronics.

New!!: Call stack and ST6 and ST7 · See more »

Stack

Stack may refer to.

New!!: Call stack and Stack · See more »

Stack (abstract data type)

In computer science, a stack is an abstract data type that serves as a collection of elements, with two principal operations.

New!!: Call stack and Stack (abstract data type) · See more »

Stack buffer overflow

In software, a stack buffer overflow or stack buffer overrun occurs when a program writes to a memory address on the program's call stack outside of the intended data structure, which is usually a fixed-length buffer.

New!!: Call stack and Stack buffer overflow · See more »

Stack machine

In computer science, computer engineering and programming language implementations, a stack machine is a type of computer.

New!!: Call stack and Stack machine · See more »

Stack overflow

In software, a stack overflow occurs if the call stack pointer exceeds the stack bound.

New!!: Call stack and Stack overflow · See more »

Stack register

A stack register is a computer central processor register whose purpose is to keep track of a call stack.

New!!: Call stack and Stack register · See more »

Stack trace

In computing, a stack trace (also called stack backtrace or stack traceback) is a report of the active stack frames at a certain point in time during the execution of a program.

New!!: Call stack and Stack trace · See more »

Stack-based memory allocation

Stacks in computing architectures are regions of memory where data is added or removed in a last-in-first-out (LIFO) manner.

New!!: Call stack and Stack-based memory allocation · See more »

Stackless Python

Stackless Python, or Stackless, is a Python programming language interpreter, so named because it avoids depending on the C call stack for its own stack.

New!!: Call stack and Stackless Python · See more »

Static variable

In computer programming, a static variable is a variable that has been allocated "statically", meaning that its lifetime (or "extent") is the entire run of the program.

New!!: Call stack and Static variable · See more »

Status register

A status register, flag register, or condition code register (CCR) is a collection of status flag bits for a processor.

New!!: Call stack and Status register · See more »

STM8

The STM8 is an 8-bit microcontroller family by STMicroelectronics an extended variant of the ST7 microcontroller architecture.

New!!: Call stack and STM8 · See more »

Storage violation

In computing a storage violation is a hardware or software fault that occurs when a task attempts to access an area of computer storage which it is not permitted to access.

New!!: Call stack and Storage violation · See more »

Subroutine

In computer programming, a subroutine is a sequence of program instructions that performs a specific task, packaged as a unit.

New!!: Call stack and Subroutine · See more »

SWEET16

SWEET16 is an interpreted byte-code language invented by Steve Wozniak and implemented as part of the Integer BASIC ROM in the Apple II series of computers.

New!!: Call stack and SWEET16 · See more »

Switching loop

A Switching loop or bridge loop occurs in computer networks when there is more than one Layer 2 (OSI model) path between two endpoints (e.g. multiple connections between two network switches or two ports on the same switch connected to each other).

New!!: Call stack and Switching loop · See more »

Symbolics

Symbolics refers to two companies: now-defunct computer manufacturer Symbolics, Inc., and a privately held company that acquired the assets of the former company and continues to sell and maintain the Open Genera Lisp system and the Macsyma computer algebra system.

New!!: Call stack and Symbolics · See more »

SymbOS

SYmbiosis Multitasking Based Operating System (SymbOS) is a multitasking operating system for Zilog Z80-based 8-bit computer systems.

New!!: Call stack and SymbOS · See more »

System call

In computing, a system call is the programmatic way in which a computer program requests a service from the kernel of the operating system it is executed on.

New!!: Call stack and System call · See more »

Tail call

In computer science, a tail call is a subroutine call performed as the final action of a procedure.

New!!: Call stack and Tail call · See more »

Task state segment

The task state segment (TSS) is a special structure on x86-based computers which holds information about a task.

New!!: Call stack and Task state segment · See more »

Tcl

Tcl (pronounced "tickle" or tee cee ell) is a high-level, general-purpose, interpreted, dynamic programming language.

New!!: Call stack and Tcl · See more »

Thread (computing)

In computer science, a thread of execution is the smallest sequence of programmed instructions that can be managed independently by a scheduler, which is typically a part of the operating system.

New!!: Call stack and Thread (computing) · See more »

Thread control block

Thread Control Block (TCB) is a data structure in the operating system kernel which contains thread-specific information needed to manage it.

New!!: Call stack and Thread control block · See more »

TI MSP430

The MSP430 is a mixed-signal microcontroller family from Texas Instruments.

New!!: Call stack and TI MSP430 · See more »

Timeline of DOS operating systems

This article presents a timeline of events in the history of x86 DOS operating systems from 1973 to 2016.

New!!: Call stack and Timeline of DOS operating systems · See more »

TinyOS

TinyOS is an embedded, component-based operating system and platform for low-power wireless devices, such as those used in wireless sensor networks (WSNs), smartdust, ubiquitous computing, personal area networks, building automation, and smart meters.

New!!: Call stack and TinyOS · See more »

Tracing garbage collection

In computer programming, tracing garbage collection is a form of automatic memory management that consists of determining which objects should be deallocated ("garbage collected") by tracing which objects are reachable by a chain of references from certain "root" objects, and considering the rest as "garbage" and collecting them.

New!!: Call stack and Tracing garbage collection · See more »

Transaction Application Language

Transaction Application Language or TAL (originally "Tandem Application Language") is a block-structured, procedural language optimized for use on Tandem hardware.

New!!: Call stack and Transaction Application Language · See more »

Transaction Processing Facility

Transaction Processing Facility (TPF) is an IBM real-time operating system for mainframe computers descended from the IBM System/360 family, including zSeries and System z9.

New!!: Call stack and Transaction Processing Facility · See more »

Tree traversal

In computer science, tree traversal (also known as tree search) is a form of graph traversal and refers to the process of visiting (checking and/or updating) each node in a tree data structure, exactly once.

New!!: Call stack and Tree traversal · See more »

Turbo-Basic XL

Turbo-Basic XL is an advanced version of BASIC for the Atari 8-bit family of home computers.

New!!: Call stack and Turbo-Basic XL · See more »

Uncontrolled format string

Uncontrolled format string is a type of software vulnerability discovered around 1989 that can be used in security exploits.

New!!: Call stack and Uncontrolled format string · See more »

Uninitialized variable

In computing, an uninitialized variable is a variable that is declared but is not set to a definite known value before it is used.

New!!: Call stack and Uninitialized variable · See more »

V850

V850 is the trademark name for a 32-bit RISC CPU architecture of Renesas Electronics for embedded microcontrollers, introduced in early 90's by NEC and still being developed as of 2018.

New!!: Call stack and V850 · See more »

Variable (computer science)

In computer programming, a variable or scalar is a storage location (identified by a memory address) paired with an associated symbolic name (an identifier), which contains some known or unknown quantity of information referred to as a value.

New!!: Call stack and Variable (computer science) · See more »

Vax Common Lisp

VAX LISP was an implementation of Common Lisp for VMS and ULTRIX on 32-bit VAXs.

New!!: Call stack and Vax Common Lisp · See more »

VB Watch

VB Watch is a Visual Basic programming utility.

New!!: Call stack and VB Watch · See more »

WDC 65816/65802

The W65C816S (also 65C816 or 65816) is a 16-bit microprocessor (MPU) developed and sold by the Western Design Center (WDC).

New!!: Call stack and WDC 65816/65802 · See more »

WDC 65C02

The Western Design Center (WDC) 65C02 microprocessor is an enhanced CMOS version of the popular NMOS-based 8-bit MOS Technology 6502 microprocessor—the CMOS redesign being made by Bill Mensch in 1978.

New!!: Call stack and WDC 65C02 · See more »

Work stealing

In parallel computing, work stealing is a scheduling strategy for multithreaded computer programs.

New!!: Call stack and Work stealing · See more »

WoW64

In computing on Microsoft platforms, WoW64 (Windows 32-bit on Windows 64-bit) is a subsystem of the Windows operating system capable of running 32-bit applications that is included in all 64-bit versions of Windows—including Windows XP Professional x64 Edition, IA-64 and x64 versions of Windows Server 2003, as well as 64-bit versions of Windows Vista, Windows Server 2008, Windows 7, Windows 8, Windows Server 2012, Windows 8.1 and Windows 10.

New!!: Call stack and WoW64 · See more »

X86

x86 is a family of backward-compatible instruction set architectures based on the Intel 8086 CPU and its Intel 8088 variant.

New!!: Call stack and X86 · See more »

X86 assembly language

x86 assembly language is a family of backward-compatible assembly languages, which provide some level of compatibility all the way back to the Intel 8008 introduced in April 1972.

New!!: Call stack and X86 assembly language · See more »

X86 calling conventions

This article describes the calling conventions used when programming x86 architecture microprocessors.

New!!: Call stack and X86 calling conventions · See more »

X86 memory segmentation

x86 memory segmentation refers to the implementation of memory segmentation in the Intel x86 computer instruction set architecture.

New!!: Call stack and X86 memory segmentation · See more »

X87

x87 is a floating point-related subset of the x86 architecture instruction set.

New!!: Call stack and X87 · See more »

XAP processor

The XAP processor is a RISC processor architecture developed by Cambridge Consultants since 1994.

New!!: Call stack and XAP processor · See more »

Zahn's construct

Zahn's construct, in computer science, was a proposed structure for structured control flow in computer programming languages first described by Charles T. Zahn in 1974.

New!!: Call stack and Zahn's construct · See more »

Zen (microarchitecture)

Zen is the codename for a computer processor microarchitecture from AMD, and was first used with their Ryzen series of CPUs in February 2017.

New!!: Call stack and Zen (microarchitecture) · See more »

Zilog Z80

The Z80 CPU is an 8-bit based microprocessor.

New!!: Call stack and Zilog Z80 · See more »

Redirects here:

Access link, Activation frame, Activation record, Call Frame Information, Call Stack, Call chain, Call frame, Call stack inspection, CallStack, Callout area, Callstack, Callstacks, Control stack, Display register, Frame pointer, Framepointer, Function stack, Mark pointer, Outgoing arguments area, Process stack, Return pointer, Run-time stack, Runtime stack, Stack frame, Stack pointer, Stack unwinding.

References

[1] https://en.wikipedia.org/wiki/Call_stack

OutgoingIncoming
Hey! We are on Facebook now! »