<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: reading blocks in Operating System - HP-UX</title>
    <link>https://community.hpe.com/t5/operating-system-hp-ux/reading-blocks/m-p/3478082#M846952</link>
    <description>Thanks Clay.</description>
    <pubDate>Fri, 04 Feb 2005 10:10:15 GMT</pubDate>
    <dc:creator>mangor</dc:creator>
    <dc:date>2005-02-04T10:10:15Z</dc:date>
    <item>
      <title>reading blocks</title>
      <link>https://community.hpe.com/t5/operating-system-hp-ux/reading-blocks/m-p/3478080#M846950</link>
      <description>Hello All,&lt;BR /&gt;I'm trying to understand how Oracle and the OS work together when retrieving data.  I have an Oracle DB.  The developer is running a query select 3 columns from a 20 column table.  Oracle needs to perform disk reads instead of finding the data in memory.  I'm thinking Oracle sends the request to the OS.  Which then looks in it's cache.  If the data is there does the OS send the entire record?  Or just the OS just send the data for those 3 columns?  Next if the OS doesn't find the data in it's cache it then must read the data from the hard drive.  Does the OS return the entire record or just the 3 columns?&lt;BR /&gt;&lt;BR /&gt;Thanks in advanced.</description>
      <pubDate>Thu, 03 Feb 2005 16:03:08 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-hp-ux/reading-blocks/m-p/3478080#M846950</guid>
      <dc:creator>mangor</dc:creator>
      <dc:date>2005-02-03T16:03:08Z</dc:date>
    </item>
    <item>
      <title>Re: reading blocks</title>
      <link>https://community.hpe.com/t5/operating-system-hp-ux/reading-blocks/m-p/3478081#M846951</link>
      <description>The OS doesn't have a clue about rows or columns; it simply reads chunks of data starting at a specified offset. It is completely up to the application to define the size of those reads and the starting offset and the number of bytes to read. If the number of bytes to reads exceeds an OS determined limit, the OS silently breaks up the read() into multiple physical reads but that is invisible to the application.&lt;BR /&gt;&lt;BR /&gt;I'll assume you are using cooked files for the database:&lt;BR /&gt;&lt;BR /&gt;When a read request is made (select), Oracle first looks in its cache (SGA) to see if the blocks are there; if not a read() system call is made (specifying the number of bytes and starting offset), the OS then determines if these blocks are in the UNIX buffer cache; if not, the data are read from disk -- which itself might have onboard cache.&lt;BR /&gt;</description>
      <pubDate>Thu, 03 Feb 2005 17:08:03 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-hp-ux/reading-blocks/m-p/3478081#M846951</guid>
      <dc:creator>A. Clay Stephenson</dc:creator>
      <dc:date>2005-02-03T17:08:03Z</dc:date>
    </item>
    <item>
      <title>Re: reading blocks</title>
      <link>https://community.hpe.com/t5/operating-system-hp-ux/reading-blocks/m-p/3478082#M846952</link>
      <description>Thanks Clay.</description>
      <pubDate>Fri, 04 Feb 2005 10:10:15 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-hp-ux/reading-blocks/m-p/3478082#M846952</guid>
      <dc:creator>mangor</dc:creator>
      <dc:date>2005-02-04T10:10:15Z</dc:date>
    </item>
  </channel>
</rss>

