Have you ever thought how many bits are actually used in any running 64 bit systems to manage memory? Does it use all 64 bits ?
Answer to his question in NO.
Actually instead of all 64 bits only 42 or 47 are used.(This might change in future). Reason for this is that we don't need this much memory. If we use all 64 bits then it maps to 16 EB memory. As we don't need such huge memory it becomes overhead to manage these addresses. So less bits are used to implement memory structure. With 48 bits we can get 256 TB of usable virtual memory.
Answer to his question in NO.
Actually instead of all 64 bits only 42 or 47 are used.(This might change in future). Reason for this is that we don't need this much memory. If we use all 64 bits then it maps to 16 EB memory. As we don't need such huge memory it becomes overhead to manage these addresses. So less bits are used to implement memory structure. With 48 bits we can get 256 TB of usable virtual memory.
Though less bits are used first address and last address is still 00000000'00000000 and FFFFFFFF'FFFFFFFF respectively. Then how can we say we have used less than 64 bits ? This is managed by using canonical form addresses. To know in details follow,