Memory management Flashcards
Q: What is memory management in an OS?
A: It is the process of managing computer memory, including allocation, protection, and sharing between processes.
Q: What are the three main memory management tasks?
A: 1) Memory allocation, 2) Protection, 3) Sharing.
Q: What is fixed partitioning?
A: Memory is divided into fixed-size blocks; each process is allocated a partition big enough to fit it.
Q: What is internal fragmentation?
A: Wasted memory inside a partition when a process is smaller than the partition.
Q: What is dynamic partitioning?
A: Partitions are sized dynamically to fit processes; leads to external fragmentation.
Q: What is external fragmentation?
A: Wasted space between partitions due to non-contiguous memory allocation.
Q: What is memory compaction?
A: Rearranging memory contents to combine free spaces into one contiguous block.
Q: What is segmentation in memory management?
A: Memory is divided into segments (e.g., code, data); each segment can be placed independently in memory.
Q: What is virtual memory segmentation?
A: Segments are stored on disk and loaded into memory as needed, not all at once.
Q: What is paging?
A: Memory is divided into fixed-size frames called pages and are then swapped between ram and secondary storage as needed.
Q: What is virtual memory paging?
A: Pages are loaded only when needed, not all at once; uses page tables to manage mappings.
Q: What is a benefit of paging over segmentation?
A: Paging avoids external fragmentation but can have minor internal fragmentation.
Q: What is the difference in protection/sharing between segmentation and paging?
A: Segmentation makes protection and sharing easier due to logical division into code/data.
Q: What is a page table?
A: A data structure that maps virtual page numbers to physical frame addresses.