title: Why mmap() is faster than sequential IO?
body: <blockquote>
    <p><strong>Possible Duplicate:</strong><br>
    <a href="https://stackoverflow.com/questions/45972/mmap-vs-reading-blocks">mmap() vs. reading blocks</a>  </p>
  </blockquote>
  
  
  
  <p>I heard (read it on the internet somewhere) that <code>mmap()</code> is faster than sequential IO. Is this correct? If yes then why it is faster?</p>
  
  <ul>
  <li><code>mmap()</code> is not reading sequentially.</li>
  <li><code>mmap()</code> has to fetch from the disk itself same as <code>read()</code> does</li>
  <li>The mapped area is not sequential - so no DMA (?).</li>
  </ul>
  
  <p>So <code>mmap()</code> should actually be slower than <code>read()</code> from a file? Which of my assumptions above are wrong?</p>