Paged Memory Management Unit

/ˈpɛɪdʒd ˈmɛməri ˈmænɪdʒmənt ˈjuːnɪt/

noun — "hardware that translates virtual pages into physical memory."

PMMU, short for Paged Memory Management Unit, is a hardware component responsible for implementing paged virtual memory by translating virtual addresses used by software into physical memory addresses used by the hardware. It sits between the CPU and main memory, enforcing memory isolation, access control, and address translation on every memory reference made by a running program.

Memory Management Unit

/ˈmɛməri ˈmænɪdʒmənt ˈjuːnɪt/

noun — "hardware that translates and protects memory."

Memory Management Unit is a hardware component of a processor responsible for translating virtual memory addresses into physical memory addresses and enforcing memory protection rules. It sits between the CPU core and physical memory, acting as the gatekeeper that ensures programs see a consistent, isolated view of memory while preventing illegal or unsafe access.

Virtual Memory

/ˈvɜːrtʃuəl ˈmɛməri/

noun — "memory abstraction larger than physical RAM."

Virtual Memory is a memory management technique that allows a computer system to present each process with the illusion of a large, contiguous address space, regardless of the actual amount of physical memory installed. It decouples a program’s view of memory from the hardware reality, enabling systems to run applications whose memory requirements exceed available RAM while maintaining isolation, protection, and efficiency.

Page Replacement

/ˈpeɪdʒ rɪˈpleɪsmənt/

noun — "choosing which memory page to evict."

Page Replacement is the mechanism used by an operating system to decide which memory page should be removed from physical memory when space is needed to load a new page. It is a core component of virtual memory systems, enabling programs to operate as if they have access to more memory than is physically available by transparently moving data between fast main memory and slower secondary storage.

Heap

/hiːp/

noun … “Dynamic memory area for runtime allocation.”

Heap is a region of memory used for dynamic allocation, where programs request and release blocks of memory at runtime rather than compile-time. Unlike the stack, which operates in a last-in, first-out manner, the heap allows arbitrary allocation sizes and lifetimes. Proper management of the heap is crucial to prevent fragmentation, leaks, and performance degradation.

Key characteristics of Heap include:

INT32

/ˌɪnt ˈθɜːrtiːˌtuː/

noun … “a signed 32-bit integer with a wide numeric range.”

INT32 is a fixed-width numeric data type that occupies exactly 32 bits of memory and can represent both negative and positive whole numbers. Using Two's Complement encoding, it provides a range from -2147483648 to 2147483647. The most significant bit is reserved for the sign, while the remaining 31 bits represent magnitude, enabling predictable arithmetic across the entire range.

INT16

/ˌɪnt ˈsɪksˌtiːn/

noun … “a signed 16-bit integer with a defined range.”

INT16 is a numeric data type that occupies exactly 16 bits of memory and can represent both negative and positive values. Using Two's Complement encoding, it provides a range from -32768 to 32767. The sign bit is the most significant bit, while the remaining 15 bits represent the magnitude, enabling arithmetic operations to behave consistently across the entire range.

UINT16

/ˌjuːˌɪnt ˈsɪksˌtiːn/

noun … “a non-negative 16-bit integer in a fixed, predictable range.”

UINT16 is an unsigned integer type that occupies exactly 16 bits of memory, representing values from 0 to 65535. Because it has no sign bit, all 16 bits are used for magnitude, maximizing the range of non-negative numbers that can fit in two Bytes. This makes UINT16 suitable for counters, indexes, pixel channels, and network protocol fields where negative values are not required.