13. Address Spaces Flashcards
What is multiprogramming?
It is when multiple processes are loaded into memory and the CPU switches between them when needed. For example, when an I/O request happens.
What is the difference between time sharing and multiprogramming?
Time sharing switches automatically between many processes and run each of them for a short period of time.
Multiprogramming switches only when it’s needed, for example I/O request.
What is address space
The process view of the memory
What is inside of an address space
Code, stack, heap
What are the arrangements of the components in an address space
Code (located at the top and does not grow)
Stack (located at the bottom and grows upwards)
Heap (located below the code and grows downwards)
What is a virtual address
An abstracted version of the physical address that exists in the process address space
What are the goals of a Virtual Memory (VM)?
- Transparency
- Efficiency
- Protection