Mac OS 9
TaskStateWarning Struct Reference

#include <Multiprocessing.h>

Detailed Description

TaskStateWarning

Warning
This is not a real struct. This is here because Doxygen does not otherwise let me place notes on pages without making an entirely new page that shows up above everything on the sidebar, which I dislike.

The functions MPExtractTaskState and MPSetTaskState infer the size of the "info" buffer from the "kind" parameter. A given value for MPTaskStateKind will always refer to a single specific physical buffer layout. Should new register sets be added, or the size or number of any registers change, new values of MPTaskStateKind will be introduced to refer to the new buffer layouts.

The following types for the buffers are in MachineExceptions. The correspondence between MPTaskStateKind values and MachineExceptions types is:

kMPTaskStateRegistersRegisterInformation
kMPTaskStateFPUFPUInformation
kMPTaskStateVectorsVectorInformation
kMPTaskStateMachineMachineInformation
kMPTaskState32BitMemoryExceptionExceptionInfo for old-style 32-bit memory exceptions

For reference, on PowerPC the MachineExceptions types contain:

RegisterInformationThe GPRs, 32 values of 64 bits each.
FPUInformationThe FPRs plus FPSCR, 32 values of 64 bits each, one value of 32 bits.
VectorInformationThe AltiVec vector registers plus VSCR and VRSave, 32 values of 128 bits each, one value of 128 bits, and one 32 bit value
MachineInformationThe CTR, LR, PC, each of 64 bits. The CR, XER, MSR, MQ, exception kind, and DSISR, each of 32 bits. The 64 bit DAR.
ExceptionInfo

Only memory exceptions are specified, 4 fields of 32 bits each. Note that this type only covers memory exceptions on 32-bit CPUs!

The following types are declared here:

MPTaskStateTaskInfo

MPTaskInfo


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