title: why virtual address are 48 bits not 64 bits?
body: <p>I was reading a book which talks about virtual memory:</p>
  <blockquote>
  <p>Intel Core i7 supports a <strong>48</strong>-bit (256 TB) virtual address space and a <strong>52</strong>-bit (4 PB) physical address space
  <a href="https://i.stack.imgur.com/TwmiT.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/TwmiT.png" alt="enter image description here" /></a></p>
  </blockquote>
  <p>below is my question</p>
  <p>Q1-since we mostly use 64 bits machine, how come the virtual address is only 48 bits? Shouldn't it be 64 bits virtual memory as well?<br />
  Editor's note: this part is an exact duplicate of <a href="https://stackoverflow.com/questions/6716946/why-do-x86-64-systems-have-only-a-48-bit-virtual-address-space">Why do x86-64 systems have only a 48 bit virtual address space?</a></p>
  <p>(Editor's note: this part is an exact duplicate of <a href="https://stackoverflow.com/questions/46509152/why-in-x86-64-the-virtual-address-are-4-bits-shorter-than-physical-48-bits-vs">Why in x86-64 the virtual address are 4 bits shorter than physical (48 bits vs. 52 long)?</a>)<br />
  Q2-How come the address space of physical memory(52 bits) is greater than virtual memory's(48 bits), shouldn't it be that virtual memory's address space should be greater than physical memory's?</p>
  <p>(Editor's note: this part is a duplicate of several questions, including <a href="https://stackoverflow.com/questions/41454943/is-a-process-page-table-mapped-to-kernel-address-space">Is a process&#39; page table mapped to Kernel address space?</a> and <a href="https://stackoverflow.com/questions/56619431/where-is-page-table-located">Where is page table located?</a>)<br />
  Q3-my understanding is that: all page tables stored in kernel memory which is invisible to user, is my understanding correct?</p>