Craig Shallahamer's Blog
|
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.
-------------------------------
<p>Figures 3-6 and 3-7 show the core latch request functions. It all starts with a process needing to access a memory structure. The Oracle kernel code developer will know which latch to request. For example, the developer may be working on a piece of code that needs to find a free buffer in an LRU list. While the developer may know the latch name, if there are multiple latches, as shown in option B in Figure 3-5, the developer might need to access another internal Oracle structure to determine the specific child latch and its associated memory address.
</p><p>Figure 3-6. First part of the pseudocode for when a process asks for a latch. This figure contains only the main Get_Latch function. Notice the distinction between the immediate and willing-to-wait requests, and the spin-sleep loop.
</p><p>Figure 3-7. Second part of the pseudocode for when a process ask for a latch. The three core supporting functions are depicted; fast_get, spin_get, and sleep.
</p>
©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.
|
|
Know what's important before it's too late!
OraPub's Performance Training is like no other...
More Class Pics...
Get student testimonials!
|