Address Space Intro Qs Flashcards
What are the three main segments in a basic address space?
Code, Heap, Stack
What does the stack segment store?
function call frames(return addresses and saved registers), local variables, and function parameters
When memory is allocated using malloc() in C, in which segment is it placed?
Heap
How is code(instructions) typically placed in the address space?
at the lowest portion of the address space
Why are the stack and heap typically placed at opposite ends of the address space?
to allow them to grow dynamically towards each other
What is the primary purpose of memory virtualization?
abstract physical memory for each process, giving the illusion of having its own isolated and contiguous memory
What is a goal of virtual memory systems?
Transparency, Efficiency, Protection
What is meant by “transparency” in the context of virtual memory?
programs can run without being aware of the underlying physical memory
When a programmer prints out a pointer address in their program, what type of address are they seeing?
a virtual address
What key memory protection feature did multiprogramming introduce as an important requirement?
‘memory’
memory isolation between processes