Logo Search packages:      
Sourcecode: virtualbox-ose version File versions

PGMCHUNKR3MAPTLB Struct Reference
[Internals]

#include <PGMInternal.h>

List of all members.


Detailed Description

Allocation chunk ring-3 mapping TLB.

Remarks:
We use a TLB to speed up lookups by avoiding walking the AVL. At first glance this might look kinda odd since AVL trees are supposed to give the most optimial lookup times of all trees due to their balancing. However, take a tree with 1023 nodes in it, that's 10 levels, meaning that most searches has to go down 9 levels before they find what they want. This isn't fast compared to a TLB hit. There is the factor of cache misses, and of course the problem with trees and branch prediction. This is why we use TLBs in front of most of the trees.
Todo:
Generalize this TLB + AVL stuff, shouldn't be all that difficult when we switch to the new inlined AVL trees (from kStuff).

Definition at line 1214 of file PGMInternal.h.


Public Attributes

PGMCHUNKR3MAPTLBE aEntries [PGM_CHUNKR3MAPTLB_ENTRIES]

The documentation for this struct was generated from the following file:

Generated by  Doxygen 1.6.0   Back to index