Break a memory descriptor into its physically contiguous segments.
A byte offset into the memory whose physical address to return.
If non-zero, getPhysicalSegment will store here the length of the physically contiguous segement at the given offset.
A physical address, or zero if the offset is beyond the length of the memory.
This method returns the physical address of the byte at the given offset into the memory, and optionally the length of the physically contiguous segment from that offset.