[Autogenerated] Next, I'd like to discuss,
two object types, which are used for synchronization,
but they're not dispatch, your object,
and can only be used within the kernel itself by the kernel and device drivers,
they error not exposed,
to user mode the first one is a fast tex also referred to as an executive tex.
This is a synchronization object which you might guess works very similarly.
To a Tex.
However,
it is not a dispatcher object you need to use a
certain structure called fast tex, to to use that object.
You need to allocate, that structure from non page memory,
and then use this specific API these object type exposes to get the
functionality of a tex or something very similar.
To it, and So the idea, is the same, the idea of a fast tex,
is to protect, shared data from concurrent access by lying,
only one thread, to acquire the fast tex at a time.
However, the fast tex as the name suggests has better performance.
Why is that first there, is no os acquisition supported,
which means that If you try to acquire the fast tex
the second time by the same thread,
you will deadlock and that means it is slightly faster.
It's also faster because once it's acquired the a PC level,
is the current R R Q L.
So at that point, no,
a PCs can interfere with that code including special kernel ap,
CSS We have no os requisition supported either.
So we have these special functions in order to acquire and
release the fast tex X acquire fast tex and X release fast
xss are the most common to use.
In fact, the fast Tex is much more common within kernel code and device,
driver, code than a normal Tex.
However, in some cases, the fast Tex, is not a Good choice.
For example, if you need to perform an IPO operation.
Wi you, are holding the mu attack you can't use a fast tex,
that would cause the deadlock because io completion happens using special
kernel a PCs which cannot interfere the current thread,
which means you will simply deadlock.
So if you need to perform io operations within an acquisition of a mute,
attack You should go with the standard Tex and not a fast tex.
However, in the majority of cases, the fast tex,
is used in kernel code and kernel device,
driver, code