There are two types of OID: logical OIDs that are independent of the physical location of the object on disk, and physical OIDs that encode the location. In the former case, a level of indirection is required to look up the physical address of the object on disk. In both cases, however, an OID is different in size from a standard in-memory pointer, which need only be large enough to address all virtual memory.