Pyrogenesis HEAD
Pyrogenesis, a RTS Engine
apic.h File Reference
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Typedefs

typedef u8 ApicId
 

Functions

ApicId GetApicId ()
 
bool AreApicIdsReliable ()
 
bool IsProcessorKnown (ApicId apicId)
 
size_t ProcessorFromApicId (ApicId apicId)
 
size_t ContiguousIdFromApicId (ApicId apicId)
 
ApicId ApicIdFromProcessor (size_t contiguousId)
 
ApicId ApicIdFromContiguousId (size_t contiguousId)
 

Typedef Documentation

◆ ApicId

typedef u8 ApicId

Function Documentation

◆ ApicIdFromContiguousId()

ApicId ApicIdFromContiguousId ( size_t  contiguousId)

◆ ApicIdFromProcessor()

ApicId ApicIdFromProcessor ( size_t  contiguousId)

◆ AreApicIdsReliable()

bool AreApicIdsReliable ( )

◆ ContiguousIdFromApicId()

size_t ContiguousIdFromApicId ( ApicId  apicId)

◆ GetApicId()

ApicId GetApicId ( )
Returns
APIC ID of the currently executing processor or zero if the platform does not have an xAPIC (i.e. 7th generation x86 or below).

rationale: the alternative of accessing the APIC mmio registers is not feasible. We also don't want to interfere with the OS's constant use of the APIC registers.

◆ IsProcessorKnown()

bool IsProcessorKnown ( ApicId  apicId)

◆ ProcessorFromApicId()

size_t ProcessorFromApicId ( ApicId  apicId)