Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Kontextová data pro ukončení Arm64 způsobená zachyceným přístupem k registraci
Poznámka:
Tento důvod ukončení a jeho kontextová struktura se vztahují pouze na oddíly Arm64.
Syntaxe
//
// Context data for an exit caused by an intercepted register access
// (WHvMessageTypeRegisterIntercept)
//
//
// Define register intercept message structure.
//
typedef union WHV_REGISTER_ACCESS_INFO
{
WHV_REGISTER_VALUE SourceValue;
WHV_REGISTER_NAME DestinationRegister;
} WHV_REGISTER_ACCESS_INFO;
typedef struct WHV_REGISTER_CONTEXT
{
WHV_INTERCEPT_MESSAGE_HEADER Header;
struct
{
UINT8 IsMemoryOp:1;
UINT8 Reserved:7;
};
UINT8 Reserved8;
UINT16 Reserved16;
WHV_REGISTER_NAME RegisterName;
WHV_REGISTER_ACCESS_INFO AccessInfo;
} WHV_REGISTER_CONTEXT;
Remarks
Informace o ukončení způsobeném virtuálním procesorem, který přistupuje k zachycené systémové registraci, jsou uvedeny ve struktuře WHV_REGISTER_CONTEXT . Výstup se ohlásí s WHvMessageTypeRegisterIntercept důvodem ukončení.
Ukončení se vygeneruje, když host zapíše některý ze syntetických registrů chyb hosta – WHvRegisterGuestCrashP0 prostřednictvím WHvRegisterGuestCrashP4nebo WHvRegisterGuestCrashCtl – který host může použít k nahlášení chybového ukončení do zásobníku virtualizace.
Člen Header je WHV_INTERCEPT_MESSAGE_HEADER, který hlásí čítač programu (Pc) a uložený stav procesoru (Cpsr) v době přístupu spolu se směrem přístupu ( WHV_INTERCEPT_MESSAGE_HEADER.InterceptAccessTypeWHV_MEMORY_ACCESS_TYPE hodnota).
Člen RegisterName je WHV_REGISTER_NAME zachycený registr. Člen AccessInfo má hodnotu zápisu registru a identifikuje cíl čtení registru:
-
AccessInfo.SourceValueje hodnotaWHV_REGISTER_VALUEzapsaná pro zápis do registru. -
AccessInfo.DestinationRegisterje objekt,WHV_REGISTER_NAMEkterý identifikuje cílový registr pro čtení registru.
Bit IsMemoryOp označuje, jestli je zachycený přístup operací paměti.