| Zeile 2: | Zeile 2: | ||
Die '''Machine-Specific Register'''s bzw. '''Model-Specific Register'''s ('''MSR''') sind Prozessorregister. Sie können im Gegensatz zu anderen Registern nur mit den Instruktionen ''rdmsr'' und ''wrmsr'' ([[x86]] und [[x86-64]]) angesprochen werden. Außerdem sind diese Register spezifisch für eine bestimmte Prozessorfamilie/-generation, d.h. sie müssen von folgenden Prozessoren nicht bzw. nicht genauso implementiert werden. | Die '''Machine-Specific Register'''s bzw. '''Model-Specific Register'''s ('''MSR''') sind Prozessorregister. Sie können im Gegensatz zu anderen Registern nur mit den Instruktionen ''rdmsr'' und ''wrmsr'' ([[x86]] und [[x86-64]]) angesprochen werden. Außerdem sind diese Register spezifisch für eine bestimmte Prozessorfamilie/-generation, d.h. sie müssen von folgenden Prozessoren nicht bzw. nicht genauso implementiert werden. | ||
| + | |||
| + | Ob eine bestimmte CPU MSRs besitzt und somit die Befehle ''rdmsr'' und ''wrmsr'' ohne Exception ausführt, kann per [[CPUID]] herausgefunden werden. Ist nach einem ''cpuid''-Befehl mit EAX = 0x00000001 in EDX Bit 5 gestzt, dann werden diese Instruktionen unterstützt (s. auch [[CPUID#EDX - Featureflags|EDX - Featureflags]] im CPUID-Artikel). | ||
== WRMSR/RDMSR == | == WRMSR/RDMSR == | ||