title: Paging: Basic, Hierarchical, Hashed, and Inverted
body: <p>With respect to operating systems and page tables, it seems there are 4 general methods to paging and page tables</p>
  
  <p>Basic - A single page table which stores the page number and the offset</p>
  
  <p>Hierarchical - A multi-tiered table which breaks up the virtual address into multiple parts</p>
  
  <p>Hashed - A hashed page table which may often include multiple hashings mapping to the same entry</p>
  
  <p>Inverted - The logical address also includes the PID, page number and offset.  Then the PID is used to find the page in to the table and the number of rows down the table is added to the offset to find the physical address for main memory. (Rough, and probably terrible definition)</p>
  
  <p>I am just wondering what are the pros and cons of each method?  It seems like basic is the easier method but may also take up more space in memory for a larger address space.
  What else?</p>