You were brought to this page based on an internet search
and as a free service to Oracle DBAs.
The text below is an except from the book,
Oracle Performance Firefighting, written by
Craig Shallahamer of
OraPub, Inc.
Figures and tables are not included on this page, only their reference.
To order the book in either print or PDF form, click
here.
©2009, 2010 by Craig Shallahamer. This is copyrighted material.
PleaseOut of respect for those involved in the creation of the book and also for
their familes, we ask you to respect the copyright both in intent and deed. Thank you.
-------------------------------
Figure 2-6. Oracle's instrumentation through an operating system lens. Oracle has submitted a multiblock IO read request to the operating system by issuing the operating system readv call. The call took 0.6 ms, which is wonderfully fast.
In Figure 2-6, the instrumented call is readv. But just before the Oracle kernel code makes the readv call, Oracle asks the operating system for the time by issuing the gettimeofday call. Then, immediately after the readv call, Oracle once again asks the operating system for the time by issuing another gettimeofday call. According to the Linux gettimeofday manual page, the second numeric output shown is a time in microseconds. Subtracting the initial time (801187) from the final time (801788), we find that this particular readv call took 601 (s (801788 - 801187), or 0.6 ms.
* According to the Linux manual page, readv is a synchronous call to the operating system that requests one or more blocks from an IO device. So, we know Oracle did not find these specific blocks in its buffer cache and was forced to ask the IO subsystem for the blocks. This is commonly called a physical IO or a block read.
©2009, 2010 by Craig Shallahamer. This is copyrighted material.
PleaseOut of respect for those involved in the creation of the book and also for
their familes, we ask you to respect the copyright both in intent and deed. Thank you.
|