Autosave: 2024-04-16 07:50:04
This commit is contained in:
parent
7076ae6def
commit
bba55efb01
3 changed files with 29 additions and 17 deletions
BIN
.zk/notebook.db
BIN
.zk/notebook.db
Binary file not shown.
|
@ -1,17 +0,0 @@
|
||||||
---
|
|
||||||
id: 1fig
|
|
||||||
title: Stack_and_heap_memory
|
|
||||||
tags: [memory]
|
|
||||||
created: Tuesday, April 16, 2024
|
|
||||||
---
|
|
||||||
|
|
||||||
# Stack and heap memory
|
|
||||||
|
|
||||||
During runtime programs make use of two types of memory: stack and heap.
|
|
||||||
|
|
||||||
## Stack memory
|
|
||||||
|
|
||||||
Similarly to the stack data structure works on hte basis of LIFO: the last item
|
|
||||||
put on the stack is the first item to be withdrawn.
|
|
||||||
|
|
||||||
## Related notes
|
|
29
zk/Stack_memory.md
Normal file
29
zk/Stack_memory.md
Normal file
|
@ -0,0 +1,29 @@
|
||||||
|
---
|
||||||
|
id: 1fig
|
||||||
|
title: Stack_memory
|
||||||
|
tags: [memory]
|
||||||
|
created: Tuesday, April 16, 2024
|
||||||
|
---
|
||||||
|
|
||||||
|
# Stack memory
|
||||||
|
|
||||||
|
Along with heap memory, programs make use of _stack memory_ during the runtime
|
||||||
|
of programs.
|
||||||
|
|
||||||
|
## Stack memory
|
||||||
|
|
||||||
|
Similarly to the [[stack data structure]], it works on the basis of LIFO: the
|
||||||
|
last item put on the stack is the first item to be withdrawn.
|
||||||
|
|
||||||
|
Note, this doesn't mean that the data at the memory addresses that comprise the
|
||||||
|
stack can _only_ be accessed in a LIFO manner. Any item currently on the stack
|
||||||
|
can be accessed (be read or modified) at any time. LIFO applies when it is is
|
||||||
|
time to clear memory from the stack: the most recent addition is cleared first.
|
||||||
|
|
||||||
|
### Stack pointer
|
||||||
|
|
||||||
|
A **stack pointer** is used to manage the items in the stack. This value is
|
||||||
|
stored in a [[processor register]] and its value is the memory address of the
|
||||||
|
item currently on the top of the stack.
|
||||||
|
|
||||||
|
## Related notes
|
Loading…
Add table
Reference in a new issue