Translating the Logical Address Space
Problem: the system must locate the slot for each block on-the-fly as programs reference their data.
Applications name data through a logical (virtual) address space that isolates them from the details of how storage is allocated.
Translate addresses indirectly through a logical-physical map.
The map M is a function that maps a logical block number in the address space to a physical slot number in storage.
slot_index = Map(logical_address >> N)
Block offset (low-order N bits of the address) is unchanged.
offset = logical_address & ((2**N) - 1)
physical_address = (slot_index << N) + offset