CSE 3320: Memory Management (Address Space Virtualization)

0.0(0)
Studied by 0 people
call kaiCall Kai
Locked
learnLearn
examPractice Test
spaced repetitionSpaced Repetition
heart puzzleMatch
flashcardsFlashcards
GameKnowt Play
Card Sorting

1/26

flashcard set

Earn XP

Description and Tags

Vocabulary flashcards covering core operating system memory management concepts, address space virtualization, segmentation, paging, TLB mechanics, page table structures, and lazy allocation.

Last updated 9:36 PM on 9/14/26
Name
Mastery
Learn
Test
Matching
Spaced
Call with Kai
Chat

No analytics yet

Send a link to your students to track their progress

27 Terms

1
New cards

Virtual Address Space

A private, contiguous range of memory addresses allocated by the operating system to a process, allowing it to act as if it has dedicated, consecutive physical memory.

2
New cards

Virtual Memory

A memory management system that permits a process to run with only some of its virtual address space loaded into physical memory.

3
New cards

malloc(size)

A library call that requests size\text{size} bytes of heap memory and returns a void pointer (void*\text{void*}) to the allocated region.

4
New cards

free(ptr)

A library call that releases a previously allocated heap memory region back to the allocator.

5
New cards

Memory Leak

A memory management error occurring when a program fails to free memory allocated on the heap, causing the process to grow until it runs out of memory.

6
New cards

Dangling Pointer

A memory error resulting from accessing or using a pointer after the referenced memory region has been freed, causing silent data corruption.

7
New cards

Buffer Overflow

A memory error caused by allocating insufficient memory space for data, such as allocating strlen(s)\text{strlen}(s) bytes instead of strlen(s)+1\text{strlen}(s) + 1 for a string.

8
New cards
<p>Memory Management Unit (MMU)</p>

Memory Management Unit (MMU)

A hardware component responsible for performing the dynamic translation of virtual addresses to physical addresses.

9
New cards

Free List

An OS data structure used to track available physical memory regions by storing each unallocated region's starting physical address and size.

10
New cards

Dynamic Relocation

The technique where the OS moves a process to a new physical memory region while it is stopped by updating its saved base register in its PCB, keeping virtual addresses unchanged.

11
New cards

External Fragmentation

A memory issue where free physical memory is scattered into small non-contiguous holes, preventing a large contiguous allocation request from being satisfied despite sufficient total free space.

12
New cards

Compaction

An OS operation that rearranges memory segments in physical memory to consolidate scattered free space into one large contiguous free region.

13
New cards

Paging

A memory management scheme that divides virtual memory into fixed-size pages and physical memory into fixed-size frames to eliminate external fragmentation.

14
New cards

Internal Fragmentation

Memory space wasted within an allocated fixed-size page or frame because the process's memory requirement is not an exact multiple of the page size.

15
New cards

Page Table

A per-process data structure kept in physical memory that maps virtual page numbers (VPN) to physical frame numbers (PFN) and stores entry protection bits.

16
New cards

Translation Lookaside Buffer (TLB)

A small, fast hardware cache inside the MMU that stores recent virtual-to-physical address translations to accelerate memory access.

17
New cards

Hardware-Managed TLB

A TLB architecture (used in CISC like x86) where the hardware automatically walks the in-memory page table on a TLB miss, loads the PTE into the TLB, and retries the instruction.

18
New cards

Software-Managed TLB

A TLB architecture (used in RISC like MIPS) where a TLB miss raises an exception, requiring an OS trap handler to walk the page table and install the PTE.

19
New cards

Dirty Bit

A bit in a page table entry set by hardware whenever a page is written to, indicating whether the page must be written back to disk before frame eviction.

20
New cards

Accessed Bit

A page table entry bit (also called reference bit) set by hardware whenever a page is read or written, used by replacement algorithms to identify cold pages.

21
New cards

Present Bit

A page table entry bit indicating whether a virtual page is currently loaded in physical memory (11) or stored in swap space on disk (00).

22
New cards

Swap Space

A designated region on disk used to hold evicted physical pages when total active process working sets exceed physical memory capacity.

23
New cards
<p>Multi-Level Page Table</p>

Multi-Level Page Table

A hierarchical page table organization (e.g., outer and inner tables) that saves memory by allocating lower-level tables only for virtual address ranges currently in use.

24
New cards
<p>Inverted Page Table</p>

Inverted Page Table

A page table architecture with one entry per physical frame indexed by a hash of the VPN and PID, reducing page table size for large address spaces.

25
New cards

Copy-on-Write (COW)

A memory allocation technique where processes share read-only physical pages until a write occurs, triggering a fault that creates a private copy for the writing process.

26
New cards

Demand Zeroing

A lazy allocation strategy where newly allocated memory pages are marked inaccessible in the PTE until accessed, at which point the OS allocates and zeroes a physical frame.

27
New cards
<p>Page Table Entry (PTE)</p>

Page Table Entry (PTE)

A data structure entry in a page table holding translation bits such as the physical frame number (PFN), present bit (P), read/write bit (R/W), user/supervisor bit (U/S), dirty bit (D), and accessed bit (A).