Article de reference

Registre de contrôle

Un registre de contrôle est un registre de processeur qui modifie ou contrôle le comportement général d'un processeur ou d'un autre périphérique numérique. Les tâches courantes ...

Un registre de contrôle est un registre de processeur qui modifie ou contrôle le comportement général d'un processeur ou d'un autre périphérique numérique. Les tâches courantes effectuées par les registres de contrôle comprennent le contrôle des interruptions , la commutation du mode d'adressage , le contrôle de la pagination et le contrôle du coprocesseur .

Histoire

Les premiers processeurs ne disposaient pas de registres de contrôle dédiés et s'appuyaient sur un ensemble limité de signaux et d'indicateurs internes. Lorsque IBM a développé une version de pagination du System/360 , ils ont ajouté 16 registres de contrôle à la conception de ce qui est devenu le 360/67 . IBM n'a pas fourni de registres de contrôle sur d'autres modèles S/360, mais en a fait un élément standard du System/370 , bien qu'avec des affectations de registres et de bits différentes. Au fur et à mesure qu'IBM a ajouté de nouvelles fonctionnalités à l'architecture, par exemple, DAS , S/370-XA , S/370-ESA , ESA/390 , ils ont ajouté des champs supplémentaires aux registres de contrôle. Avec z/Architecture , IBM a doublé la taille du registre de contrôle à 64 bits.

Registres de contrôle dans IBM 360/67

Sur le 360/67 , CR0 et CR2 sont utilisés par la traduction d'adresse, CR 4-6 contiennent divers indicateurs, notamment les masques d'interruption et le mode de contrôle étendu, et CR 8-14 contiennent les paramètres de commutation sur l'unité de configuration 2167.

M67 CR0

Le registre de contrôle 0 contient l'adresse de la table de segments pour la traduction d'adresses dynamique.

M67 CR2

Le registre de contrôle 2 est le registre d'adresses d'exception de relocalisation.

M67 CR4

CR4 est le registre de masque étendu pour les canaux 0 à 31. Chaque bit correspond au masque de canal 1/0 pour le canal correspondant.

M67 CR5

CR5 est réservé au registre de masque étendu pour les canaux 32 à 63. Chaque bit correspond au masque de canal 1/0 pour le canal correspondant.

M67 CR6

CR6 contient deux indicateurs de mode ainsi que des extensions aux bits de masque PSW.

Drapeaux et masques CR6
Champ Peu Description
0 0 Extension du masque de contrôle de la machine pour le contrôleur de canal o
1 1 Extension du masque de contrôle de la machine pour le contrôleur de canal 1
2-3 Réservé aux contrôleurs de canal 2-3
4-7 Non attribué
8 8 Mode de contrôle étendu
9 9 Bit de contrôle de configuration
10-23 Non attribué
24-31 Masquage d'interruption externe
24 Minuteur
25 Touche d'interruption
26 Alerte de dysfonctionnement - CPU 1 (Ext. Sig. 2)
27 Alerte de dysfonctionnement - CPU 2 (Ext. Sig. 3)
28 Réservé (Ext. Sig. 4)
29 Réservé (Ext. Sig. 5)
30 Interruption externe - CPU 1, 2 (Ext. Sig. 6)
31 Réservé (Ext. Sig. 7)

M67 CR8

Le registre de contrôle 8 contient les affectations des unités de stockage de processeur 1 à 4 aux unités centrales de traitement (CPU) et aux contrôleurs de canal (CC).

Affectation des unités de stockage 1 à 4 du processeur
Peu Description
0 Unité de stockage du processeur 1 vers CPU 1
1 Unité de stockage du processeur 1 vers CPU 2
2-3 Réservé aux CPU 3-4
4 Unité de stockage du processeur 1 à CC 0
5 Unité de stockage du processeur 1 à CC 1
6-7 Réservé aux CC 3-4
8 Unité de stockage du processeur 2 vers CPU 1
9 Unité de stockage du processeur 2 vers CPU 2
10-11 Réservé aux CPU 3-4
12 Unité de stockage du processeur 2 à CC 0
13 Unité de stockage du processeur 2 à CC 1
14-15 Réservé aux CC 3-4
16 Unité de stockage du processeur 3 vers CPU 1
17 Unité de stockage du processeur 3 vers CPU 2
18-19 Réservé aux CPU 3-4
20 Unité de stockage du processeur 3 à CC 0
21 Unité de stockage du processeur 3 à CC 1
22-23 Réservé aux CC 3-4
24 Unité de stockage du processeur 4 vers CPU 1
25 Unité de stockage du processeur 4 vers CPU 2
26-27 Réservé aux CPU 3-4
28 Unité de stockage du processeur 4 à CC 0
29 Unité de stockage du processeur 4 à CC 1
30-31 Réservé aux CC 3-4

M67 CR9

Le registre de contrôle 9 contient les affectations des unités de stockage de processeur 5 à 8 aux unités centrales de traitement (CPU) et aux contrôleurs de canal (CC).

Affectation des unités de stockage 1 à 4 du processeur
Peu Description
0 Unité de stockage du processeur 5 vers CPU 1
1 Unité de stockage du processeur 5 vers CPU 2
2-3 Réservé aux CPU 3-4
4 Unité de stockage du processeur 5 à CC 0
5 Unité de stockage du processeur 5 à CC 1
6-7 Réservé aux CC 3-4
8 Unité de stockage du processeur 6 à CPU 66
9 Unité de stockage du processeur 6 vers CPU 2
10-11 Réservé aux CPU 3-4
12 Unité de stockage du processeur 6 à CC 0
13 Unité de stockage du processeur 6 à CC 1
14-15 Réservé aux CC 3-4
16 Unité de stockage du processeur 7 vers CPU 1
17 Unité de stockage du processeur 7 vers CPU 2
18-19 Réservé aux CPU 3-4
20 Unité de stockage du processeur 7 à CC 0
21 Unité de stockage du processeur 7 à CC 1
22-23 Réservé aux CC 3-4
24 Unité de stockage du processeur 8 vers CPU 1
25 Unité de stockage du processeur 8 vers CPU 2
26-27 Réservé aux CPU 3-4
28 Unité de stockage du processeur 8 à CC 0
29 Unité de stockage du processeur 8 à CC 1
30-31 Réservé aux CC 3-4

M67 CR10

Le registre de contrôle 10 contient les codes d’attribution d’adresse de stockage du processeur.

Codes d'affectation des bits 11 à 14 de l'adresse de stockage du processeur
Peu Code d'adresse de départ pour
0-3 Unité de stockage du processeur 1
4-7 Unité de stockage du processeur 2
8-11 Unité de stockage du processeur 3
12-15 Unité de stockage du processeur 4
16-19 Unité de stockage du processeur 5
20-23 Unité de stockage du processeur 6
24-27 Unité de stockage du processeur 7
28-31 Unité de stockage du processeur 8

M67 CR11

Le registre de contrôle 11 contient les affectations du contrôleur de canal (CC).

Partitionnement du contrôleur de canal CR11 (CC)
Peu Description
0 CC 0 disponible sur CPU 1
1 CC 0 disponible sur CPU 2
2-3 Réservé aux processeurs 3-4
4 CC 1 disponible sur CPU 1
5 CC 1 disponible sur CPU 2
6-7 Réservé aux processeurs 3-4
8-15 Non attribué
16 CPU 1 à CC 0 uniquement
17 CPU 1 à CC 1 uniquement
18-19 Réservé aux CC 2-3
20 CPU 2 à CC 0 uniquement
21 CPU 2 vers CC 1 uniquement
22-23 Réservé aux CC 2-3
24-31 Non attribué

M67 CR12

CR12 contient le partitionnement de l'unité de contrôle des E/S.

Unité de contrôle E/S CR12 1-16 Partitionnement
Peu Unité de contrôle E/S Interface
0 1 1
1 2
2 2 1
3 2
4 3 1
5 2
6 4 1
7 2
8 5 1
9 2
10 6 1
11 2
12 7 1
13 2
14 8 1
15 2
16 9 1
17 2
18 10 1
19 2
20 11 1
21 2
22 12 1
23 2
24 13 1
25 2
26 14 1
27 2
28 15 1
29 2
30 16 1
31 2

M67 CR13

Le CR13 contient le partitionnement de l'unité de contrôle des E/S.

Unité de contrôle E/S CR13 17-32 Partitionnement
Peu Unité de contrôle E/S Interface
0 17 1
1 2
2 18 1
3 2
4 19 1
5 2
6 20 1
7 2
8 21 1
9 2
10 22 1
11 2
12 23 1
13 2
14 24 1
15 2
16 25 1
17 2
18 26 1
19 2
20 27 1
21 2
22 28 1
23 2
24 29 1
25 2
26 30 1
27 2
28 31 1
29 2
30 32 1
31 2

M67 CR14

Le CR14 contient des indicateurs.

Indicateurs CR14
Peu Indicateur
0-27 Non attribué
22 2167 Mise sous tension
23 Non attribué
24 Contrôle direct, CPU 1
25 Contrôle direct, CPU 2
26-27 Non attribué
28 Préfixe, CPU 1
29 Préfixe, CPU 2
30-31 Non attribué

Registres de contrôle dans IBM S/390

Les registres de contrôle de l'ESA/390 sur l' IBM S/390 sont une amélioration évolutive des registres de contrôle des processeurs ESA/370 , S/370-XA et S/370 . Pour plus de détails sur les champs qui dépendent de fonctions spécifiques, consultez les principes de fonctionnement.

Registres de contrôle ESA/390
CR morceaux Champ
0 1 Suppression du SSM
0 2 Contrôle de synchronisation d'horloge TOD
0 3 Contrôle de protection à faible adresse
0 4 Contrôle des autorités d'extraction
0 5 Contrôle de l'espace secondaire
0 6 Contrôle de remplacement de la protection de récupération
0 7 Contrôle de protection de stockage prioritaire
0 8-12 Format de traduction
0 13 Contrôle du registre AFP
0 14 Contrôle vectoriel
0 15 Contrôle de la fonction d'espace d'adressage
0 16 Masque de sous-classe d'alerte de dysfonctionnement
0 17 Masque de sous-classe de signal d'urgence
0 18 Masque de sous-classe d'appel externe
0 19 Masque de sous-classe de vérification de synchronisation d'horloge TOD
0 20 Masque de sous-classe de comparateur d'horloge
0 21 Masque de sous-classe de temporisateur CPU
0 22 Masque de sous-classe de signal de service
0 24 Réglé sur 1
0 25 Masque de sous-classe de clé d'interruption
0 26 Réglé sur 1
0 27 Masque de sous-classe ETR
0 28 Appel de programme rapide
0 29 Contrôle de la cryptographie
1 0 Contrôle d'événement de commutation d'espace primaire
1 1-19 Origine de la table de segments primaires
1 22 Contrôle du sous-groupe d'espace primaire
1 23 Contrôle primaire de l'espace privé
1 24 Contrôle des événements d'altération du stockage primaire
1 25-31 Longueur de la table de segments primaires
2 1-25 Origine de la table de contrôle des unités répartissables
3 0-15 Masque de touche PSW
3 16-31 ASN secondaire
4 0-15 Indice d'autorisation
4 16-31 ASN primaire
5 0 Contrôle de liaison de sous-système
5 1-24 Origine de la table de liaison
5 25-31 Longueur de la table de liaison
5 1-25 Lorsque le contrôle de la fonction d'espace d'adressage est un,
entrée de table primaire-ASN-seconde
6 0-7 Masque de sous-classe d'interruption d'E/S
7 1-19 Origine de la table de segments secondaires
7 22 Contrôle du sous-groupe d'espace secondaire
7 23 Contrôle de l'espace privé secondaire
7 24 Contrôle des événements d'altération du stockage secondaire
7 25-31 Longueur de la table de segments secondaires
8 0-15 Indice d'autorisation étendu
8 16-31 Masques de surveillance
9 0 Masque d'événement de ramification réussie
9 1 Masque d'événement de récupération d'instructions
9 2 Masque d'événement de modification de stockage
9 3 Masque d'événement d'altération GR
9 4 Masque d'événement Store-using-real-address
9 8 Contrôle des adresses de succursales
9 10 Contrôle de l'espace de stockage et de modification
9 16-31 Masques à registre général PER
10 1-31 Adresse de départ PER
11 1-31 Adresse de fin PER
12 0 Contrôle de la trace des branches
12 1-29 Adresse d'entrée de trace
12 30 Contrôle de trace ASN
12 31 Contrôle de trace explicite
13 0 Contrôle des événements par commutateur d'espace domestique
13 1-19 Origine de la table des segments d'accueil
13 23 Contrôle de l'espace privé à la maison
13 24 Stockage à domicile, modification, contrôle des événements
13 25-31 Longueur de la table des segments d'accueil
14 0 Réglé sur 1
14 1 Réglé sur 1
14 2 Contrôle de la zone de sauvegarde étendue
14 3 Masque de sous-classe en attente de rapport de canal
14 4 Masque de sous-classe de récupération
14 5 Masque de sous-classe de dégradation
14 6 Masque de sous-classe de dommages externes
14 7 Masque de sous-classe d'avertissement
14 10 Contrôle de l'horloge TOD-contrôle de substitution
14 12 Contrôle de traduction ASN
14 13-31 Origine de la première table ASN
15 1-28 Adresse d'entrée de la pile de liaison

Registres de contrôle dans IBM z/Architecture

Les registres de contrôle de z/Architecture sont une amélioration évolutive des registres de contrôle de l' ESA/390 antérieur sur les processeurs IBM S/390 . Pour plus de détails sur les champs qui dépendent de fonctionnalités spécifiques, consultez les principes de fonctionnement. Étant donné que z/Architecture étend les registres de contrôle de 32 bits à 64 bits, la numérotation des bits diffère de celle de l'ESA/390.

Registres de contrôle du mode z/Architecture
CR morceaux Champ
0 8 Contrôle de l'exécution des transactions
0 9 Remplacement du filtrage des interruptions de programme d'exécution transactionnelle
0 10 Contrôle du signe du comparateur d'horloge
0 13 Contrôle des compteurs cryptographiques
0 14 Contrôle d'activité-instrumentation-extension du processeur
0 15 Contrôle mesure-compteur-extraction-autorisation
0 30 Masque de sous-classe de piste d'avertissement
0 32 Contrôle d'horloge TRACE TOD
0 33 Suppression du SSM
0 34 Contrôle de synchronisation d'horloge TOD
0 35 Contrôle de protection à faible adresse
0 36 Contrôle des autorités d'extraction
0 37 Contrôle de l'espace secondaire
0 38 Contrôle de remplacement de la protection de récupération
0 39 Contrôle de protection de stockage prioritaire
0 40 Contrôle d'activation DAT amélioré
0 43 Contrôle d'activation de la protection de l'exécution des instructions
0 44 Contrôle de réutilisation ASN et LX
0 45 Contrôle du registre AFP
0 46 Contrôle d'activation vectorielle
0 48 Masque de sous-classe d'alerte de dysfonctionnement
0 48 Masque de sous-classe d'alerte de dysfonctionnement
0 49 Masque de sous-classe de signal d'urgence
0 50 Masque de sous-classe d'appel externe
0 52 Masque de sous-classe de comparateur d'horloge
0 53 Masque de sous-classe de temporisateur CPU
0 54 Masque de sous-classe de signal de service
0 56 Initialisé à 1
0 57 Masque de sous-classe de clé d'interruption
0 58 Masque de sous-classe d'alerte de mesure
0 59 Masque de sous-classe d'alerte de temporisation
0 61 Contrôle de la cryptographie
1 0-51 Élément de contrôle de l'espace d'adressage principal (ASCE)
Origine de la table de région principale
Origine de la table de segments principale
Origine du jeton d'espace réel principal
1 54 Contrôle du sous-groupe d'espace primaire
1 55 Contrôle primaire de l'espace privé
1 56 Événement de modification du stockage primaire
1 57 Contrôle d'événement de commutation d'espace primaire
1 58 Contrôle primaire de l'espace réel
1 60-61 Contrôle de type désignation primaire
1 62-63 Longueur de la table principale
2 33-57 Origine de la table de contrôle des unités répartissables
2 59 Contrôle d'activation des installations de stockage surveillées
2 61 Portée du diagnostic de transaction
2 62-63 Contrôle de diagnostic des transactions
3 0-31 Numéro d'instance de la deuxième entrée de table ASN secondaire
3 32-47 Masque de touche PSW
3 48-63 ASN secondaire
4 0-31 Numéro d'instance de la deuxième entrée de table ASN principale
4 32-47 Indice d'autorisation
4 48-63 ASN primaire
5 33-57 Origine de l'entrée de la table primaire-ASN-seconde
6 32-39 Masque de sous-classe d'interruption d'E/S
7 0-51 Élément de contrôle de l'espace d'adressage secondaire (ASCE)
Origine de la table de région secondaire
Origine de la table de segments secondaire
Origine du jeton d'espace réel secondaire
7 54 Contrôle du sous-groupe d'espace secondaire
7 55 Contrôle de l'espace privé secondaire
7 56 Contrôle des événements d'altération du stockage secondaire
7 58 Contrôle secondaire de l'espace réel
7 60-61 Contrôle de type désignation secondaire
7 62-63 Longueur de la table secondaire
8 16-31 Masques de surveillance améliorés
8 32-47 Indice d'autorisation étendu
8 48-63 Masques de surveillance
9 32 Masque d'événement de ramification réussie
9 33 Masque d'événement de récupération d'instructions
9 34 Masque d'événement de modification de stockage
9 35 Masque d'événement de modification de clé de stockage
9 36 Masque d'événement Store-using-real-address
9 37 Masque d'événement de détection d'adresse zéro
9 38 Masque d'événement de fin de transaction
9 39 Masque d'événement d'annulation de récupération d'instruction
9 40 Contrôle des adresses de succursales
9 41 Contrôle de suppression d'événements PER
9 43 Contrôle de l'espace de stockage et de modification
10 0-63 Adresse de départ PER
11 0-63 Adresse de fin PER
12 0 Contrôle de la trace des branches
12 1 Contrôle de mode-trace
12 2-61 Adresse d'entrée de trace
12 62 Contrôle de trace ASN
12 63 Contrôle de trace explicite
13 0-51 Élément de contrôle de l'espace d'adressage d'origine (ASCE)
Origine de la table de régions d'origine Origine
de la table de segments d'origine
Origine du jeton d'espace réel d'origine
13 55 Contrôle de l'espace privé à la maison
13 56 Stockage-modification-événement à domicile
13 57 Contrôle des événements par commutateur d'espace domestique
13 58 Contrôle secondaire de l'espace réel
13 60-61 Contrôle de type de désignation de domicile
13 62-63 Longueur de la table d'accueil
14 32 Réglé sur 1
14 33 Réglé sur 1
14 34 Contrôle étendu de la zone de sauvegarde (mode de compatibilité ESA/390)

seulement)

14 35 Masque de sous-classe en attente de rapport de canal
14 36 Masque de sous-classe de récupération
14 37 Masque de sous-classe de dégradation
14 38 Masque de sous-classe de dommages externes
14 39 Masque de sous-classe d'avertissement
14 42 Contrôle de l'horloge TOD-contrôle de substitution
14 44 Contrôle de traduction ASN
14 45-63 Origine de la première table ASN
15 0-60 Adresse d'entrée de la pile de liaison

Registres de contrôle dans Intelx86série

CR0

Le registre CR0 est long de 32 bits sur les processeurs 386 et supérieurs. Sur les processeurs x64 en mode long , il (et les autres registres de contrôle) est long de 64 bits. CR0 possède divers indicateurs de contrôle qui modifient le fonctionnement de base du processeur. Le registre CR0 est la version 32 bits de l'ancien registre Machine Status Word (MSW). Le registre MSW a été étendu au registre de contrôle avec l'apparition du processeur i386.

Peu Nom Nom et prénom Description
0 Éducation physique Activation du mode protégé Si 1, le système est en mode protégé , sinon, le système est en mode réel
1 Député Coprocesseur de surveillance Contrôle l'interaction des instructions WAIT/FWAIT avec l'indicateur TS dans CR0
2 EM Émulation Si défini, aucune unité à virgule flottante x87 n'est présente, si effacé, FPU x87 présente
3 TS Tâche commutée Permet de sauvegarder le contexte de la tâche x87 lors d'un changement de tâche uniquement après l'utilisation de l'instruction x87
4 ET Type d'extension Sur le 386, il permettait de préciser si le coprocesseur mathématique externe était un 80287 ou 80387
5 NE Erreur numérique Activer le rapport d'erreurs à virgule flottante interne x87 lorsqu'il est défini, sinon activer la détection d'erreurs x87 de style PC
16 WP Protection en écriture Lorsqu'il est défini, le processeur ne peut pas écrire sur des pages en lecture seule lorsque le niveau de privilège est 0
18 SUIS Masque d'alignement Vérification de l'alignement activée si AM est défini, l'indicateur AC (dans le registre EFLAGS ) est défini et le niveau de privilège est 3
29 Nord-Ouest Ne pas écrire à travers Activer/désactiver globalement la mise en cache en écriture directe
30 CD Désactiver le cache Active/désactive globalement le cache mémoire
31 PG Pagination Si 1, activez la pagination et utilisez le registre § CR3, sinon désactivez la pagination.

CR1

Réservé, le CPU lancera une exception # UD en essayant d'y accéder.

CR2

Contient une valeur appelée adresse linéaire de défaut de page (PFLA). Lorsqu'un défaut de page se produit, l'adresse à laquelle le programme a tenté d'accéder est stockée dans le registre CR2.

CR3

Utilisation typique de CR3 dans la traduction d'adresses avec des pages de 4 Ko

Utilisé lorsque l'adressage virtuel est activé, donc lorsque le bit PG est défini dans CR0. CR3 permet au processeur de traduire les adresses linéaires en adresses physiques en localisant le répertoire de pages et les tables de pages pour la tâche en cours. En général, les 20 bits supérieurs de CR3 deviennent le registre de base du répertoire de pages (PDBR), qui stocke l'adresse physique du premier répertoire de pages. Si le bit PCIDE dans CR4 est défini, les 12 bits les plus bas sont utilisés pour l' identifiant de contexte de processus (PCID).

CR4

Utilisé en mode protégé pour contrôler des opérations telles que la prise en charge virtuelle 8086, l'activation des points d'arrêt d'E/S, l'extension de la taille de page et les exceptions de vérification de la machine .

Peu Nom Nom et prénom Description
0 VME Extensions virtuelles du mode 8086 Si défini, active la prise en charge de l'indicateur d'interruption virtuelle (VIF) en mode virtuel-8086.
1 PVI Interruptions virtuelles en mode protégé Si cette option est définie, elle active la prise en charge de l'indicateur d'interruption virtuelle (VIF) en mode protégé.
2 TSD Désactiver l'horodatage Si cette option est définie, l'instruction RDTSC ne peut être exécutée que dans l'anneau 0 , sinon RDTSC peut être utilisé à n'importe quel niveau de privilège.
3 DE Extensions de débogage Si défini, active les interruptions basées sur le registre de débogage lors de l'accès à l'espace d'E/S .
4 PSE Extension de la taille de la page Si défini, permet au mode de pagination 32 bits d'utiliser des pages volumineuses de 4 Mio en plus des pages de 4 Kio.

Si PAE est activé ou si le processeur est en mode long x86-64, ce bit est ignoré.

5 PAE Extension d'adresse physique Si défini, modifie la disposition de la table des pages pour traduire les adresses virtuelles 32 bits en adresses physiques 36 bits étendues.
6 MCE Exception de vérification de la machine Si cette option est définie, elle permet aux interruptions de vérification de la machine de se produire.
7 PGE Page Globale Activée Si cette option est définie, les traductions d'adresses (enregistrements PDE ou PTE) peuvent être partagées entre les espaces d'adressage.
8 PCE Activation du compteur de surveillance des performances Si défini, RDPMC peut être exécuté à n'importe quel niveau de privilège, sinon RDPMC ne peut être utilisé que dans l'anneau 0.
9 OSFXSR Prise en charge du système d'exploitation pour les instructions FXSAVE et FXRSTOR Si défini, active les instructions Streaming SIMD Extensions (SSE) et la sauvegarde et la restauration rapides du FPU.
10 OSXMMEXCPT Prise en charge du système d'exploitation pour les exceptions à virgule flottante SIMD non masquées Si défini, active les exceptions SSE non masquées.
11 UMIP Prévention des instructions en mode utilisateur Si cette option est définie, les instructions SGDT, SIDT, SLDT, SMSW et STR ne peuvent pas être exécutées si CPL > 0.
12 LA57 Adresses linéaires 57 bits Si défini, active la pagination à 5 niveaux.
13 VMXE Activation des extensions de machine virtuelle voir virtualisation Intel VT-x x86 .
14 SMXE Activation des extensions du mode sécurisé voir Trusted Execution Technology (TXT)
15 (Réservé)
16 Base de données FSGS Activation de FSGSBASE Si défini, active les instructions RDFSBASE, RDGSBASE, WRFSBASE et WRGSBASE.
17 PCIDE Activation PCID Si défini, active les identifiants de contexte de processus (PCID).
18 OSX SAUVEGARDER Activation de XSAVE et des états étendus du processeur
19 KL Activation du casier à clés Si défini, active les instructions AES Key Locker.
20 SMEP Activation de la protection d'exécution du mode superviseur Si cette option est définie, l'exécution du code dans un anneau supérieur génère une erreur .
21 Carte de la région de la SMAP Activation de la prévention d'accès en mode superviseur Si cette option est définie, l'accès aux données dans un anneau supérieur génère une erreur .
22 PKE Activation de la clé de protection Voir le manuel du développeur de logiciels pour les architectures Intel 64 et IA-32.
23 CET Technologie de contrôle du flux Si cette option est définie, elle active la technologie de contrôle du flux.
24 PKS Activer les clés de protection pour les pages en mode superviseur Si cette option est définie, chaque adresse linéaire en mode superviseur est associée à une clé de protection lorsque la pagination à 4 ou 5 niveaux est utilisée.
25 UINTR Activation des interruptions utilisateur Si cette option est définie, elle active les interruptions interprocesseurs en mode utilisateur et leurs instructions et structures de données associées.
63-26 (Réservé)

CR5–7

Réservé, même cas que CR1.

Registres de contrôle supplémentaires dans Intelx86-64série

EFER

Le registre EFER (Extended Feature Enable Register) est un registre spécifique au modèle ajouté au processeur AMD K6 , pour permettre l'activation de l' instruction SYSCALL /SYSRET, et plus tard pour entrer et sortir du mode long . Ce registre devient architectural dans AMD64 et a été adopté par Intel sous le nom IA32_EFER. Son numéro MSR est 0xC0000080.

Peu But
0 SCE (Extensions d'appel système)
1 DPE (AMD K6 uniquement : activation de la prélecture des données)
2 SEWBED (AMD K6 uniquement : Désactiver EWBE# spéculatif)
3 GEWBED (AMD K6 uniquement : Global EWBE# Disable)
4 L2D (AMD K6 uniquement : désactivation du cache L2)
5-7 Réservé, lu comme zéro
8 LME (Mode Long Activé)
9 Réservé
10 LMA (Mode Long Actif)
11 NXE ( activation sans exécution )
12 SVME ( Activation de la machine virtuelle sécurisée )
13 LMSLE (Activation de la limite de segment en mode long)
14 FFXSR (Sauvegarde rapide des effets FX/STOR)
15 TCE (Extension du cache de traduction)
16 Réservé
17 MCOMMIT (activation de l'instruction MCOMMIT)
18 INTWB (Activation de l'interruptibilité WBINVD/WBNOINVD)
19 Réservé
20 UAIE (Activation de l'ignorance des adresses supérieures)
21 AIBRSE (Activation automatique de l'IBRS)
22–63 Réservé

CR8

CR8 est un nouveau registre accessible en mode 64 bits à l'aide du préfixe REX. CR8 est utilisé pour hiérarchiser les interruptions externes et est appelé registre de priorité des tâches (TPR).

L' architecture AMD64 permet au logiciel de définir jusqu'à 15 classes de priorité d'interruption externes. Les classes de priorité sont numérotées de 1 à 15, la classe de priorité 1 étant la plus basse et la classe de priorité 15 la plus élevée. CR8 utilise les quatre bits de poids faible pour spécifier une priorité de tâche et les 60 bits restants sont réservés et doivent être écrits avec des zéros.

Le logiciel système peut utiliser le registre TPR pour empêcher temporairement les interruptions de faible priorité d'interrompre une tâche de haute priorité. Pour ce faire, il faut charger le registre TPR avec une valeur correspondant à l'interruption de priorité la plus élevée à bloquer. Par exemple, le chargement du registre TPR avec une valeur de 9 (1001b) bloque toutes les interruptions avec une classe de priorité de 9 ou moins, tout en permettant la reconnaissance de toutes les interruptions avec une classe de priorité de 10 ou plus. Le chargement du registre TPR avec 0 active toutes les interruptions externes. Le chargement du registre TPR avec 15 (1111b) désactive toutes les interruptions externes.

Le TPR est remis à 0 lors de la réinitialisation.

XCR0 et XSS

XCR0, ou Extended Control Register 0, est un registre de contrôle qui est utilisé pour basculer le stockage ou le chargement de registres liés à des fonctionnalités spécifiques du processeur à l'aide des instructions XSAVE/XRSTOR. Il est également utilisé avec certaines fonctionnalités pour activer ou désactiver la capacité du processeur à exécuter les instructions correspondantes. Il peut être modifié à l'aide de la lecture privilégiée XSETBV à l'aide des instructions non privilégiées XGETBV.

Peu Nom Fonctionnalité activée But
0 X87 Unité de traitement en mode 87 bits État x87 FPU/MMX, doit être « 1 »
1 SSE SSE Registres MXCSR et 16 XMM
2 AVX AVX 16 moitiés supérieures des registres YMM
3 BNDREG MPX Quatre registres BND
4 BNDCSR Registres BNDCFGU et BNDSTATUS
5 MASQUE OP AVX-512 Huit registres k-mask
6 ZMM_Hi256 16 moitiés supérieures des registres ZMM
7 Salut16_ZMM 16 registres ZMM « élevés » (ZMM16 à ZMM31)
8 PT Trace du processeur
9 PKRU Clés de protection Registre PKRU
10 PASID
11 CET_U Intel CET Pile d'ombres utilisateur
12 CET_S Pile d'ombres du superviseur
13 HDC Cycle de service du matériel
14 UINTR Interruptions de l'utilisateur
15 LBR Enregistrements de la dernière succursale
16 HWP États P matériels
17 XTILECFG Intel AMX Registre TILECFG de 64 octets
18 Données XTILED Huit registres TILE de 1024 octets
19 APX Intel APX 16 GPR « élevés » (R16 à R31)
20–63 Réservé

Il existe également le MSR IA32_XSS, qui se trouve à l'adresse DA0h. Le MSR IA32_XSS contrôle les bits de XCR0 qui sont considérés comme l'état du « superviseur » et qui devraient être invisibles pour les programmes normaux. Il fonctionne avec les instructions privilégiées XSAVES et XRSTORS en ajoutant l'état du superviseur aux données avec lesquelles ils fonctionnent. En termes simples, si l'état X87 était activé dans XCR0 et l'état PT était activé dans IA32_XSS, l'instruction XSAVE ne stockerait que l'état X87, tandis que l'instruction privilégiée XSAVES stockerait à la fois les états X87 et PT. Comme il s'agit d'un MSR, il est accessible à l'aide des instructions RDMSR et WRMSR.

Peu But
0–7 Réservé ; doit être 0.
8 PT (Permet la sauvegarde et le chargement de neuf MSR de trace de processeur.)
10 État de l'ID de l'espace d'adressage du processeur (PASID)
11 État utilisateur de la technologie de contrôle de flux (CET)
12 État du superviseur de la technologie d'application du contrôle de flux (CET)
13 HDC (Permet la sauvegarde et le chargement du MSR IA32_PM_CTL1.)
14 État des interruptions utilisateur (UINTR)
15 État de l'enregistrement de la dernière branche (LBR)
16 HWP (permet la sauvegarde/le chargement de IA32_HWP_REQUEST MSR)
17–63 Réservé ; doit être 0.

Plus d articles de Worldlex Wiki

Revenez a l index pour explorer davantage de pages sur l histoire, la science, la culture, la geographie et la societe en francais.

Explorer l index