The Pedigree Project  0.1
Public Member Functions | Public Attributes | List of all members
Thread::StateLevel Struct Reference
+ Collaboration diagram for Thread::StateLevel:

Public Member Functions

 StateLevel (const StateLevel &s)
 
StateLeveloperator= (const StateLevel &s)
 

Public Attributes

SchedulerState * m_State
 
VirtualAddressSpace::Stackm_pKernelStack
 
VirtualAddressSpace::Stackm_pUserStack
 
VirtualAddressSpace::Stackm_pAuxillaryStack
 
SharedPointer< ExtensibleBitmapm_InhibitMask
 
Threadm_pBlockingThread
 

Detailed Description

A level of thread state

Definition at line 466 of file Thread.h.

Member Data Documentation

SharedPointer<ExtensibleBitmap> Thread::StateLevel::m_InhibitMask

Stack of inhibited Event masks, gets pushed with a new value when an Event handler is run, and popped when one completes.

Note
A '1' here means the event is inhibited, '0' means it can be fired.

Definition at line 493 of file Thread.h.

Referenced by Thread::cleanStateLevel(), Thread::detach(), Thread::inhibitEvent(), and Thread::pushState().

VirtualAddressSpace::Stack* Thread::StateLevel::m_pAuxillaryStack

Auxillary stack, to be freed in case the kernel stack is null. This allows kernel mode threads to have stacks freed, as they are left hanging otherwise.

Definition at line 486 of file Thread.h.

Referenced by Thread::cleanStateLevel(), Thread::detach(), and Thread::Thread().

VirtualAddressSpace::Stack* Thread::StateLevel::m_pKernelStack
SchedulerState* Thread::StateLevel::m_State

The processor state for this level.

Definition at line 475 of file Thread.h.

Referenced by Thread::detach(), Thread::pokeState(), Thread::pushState(), and Thread::state().


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