Brevet FR2683061A1 — publié le 19930430

La présente invention concerne des systèmes de gestion de mémoire destinés à des ordinateurs et, plus spécifiquement, des systèmes de segmentation de mémoires destinés à accroître, dans des microprocesseurs la vitesse d'accès aux données et le rendement. Une gestion de mémoire est un mécanisme d'équipement qui fait créer, par des systèmes d'exploitation, des environnements simplifiés pour faire fonctionner les programmes d'une manière telle que, lorsque plusieurs programmes fonctionnent en même temps, il est possible de donner à chacun d'eux un espace d'adresses indépendant pour éviter une interférence entre eux Une gestion de mémoires consiste typiquement en une segmentation et une pagination Une segmentation est utilisée pour donner à chaque programme plusieurs espaces d'adresses indépendants protégés "segments" Une pagination est utilisée pour supporter un environnement o de grands espaces d'adresses sont simulés en utilisant une faible quantité de mémoire vive ("RAM") et une certaine mémorisation sur disque Les concepteurs de système peuvent choisir d'utiliser, soit l'un, soit l'autre de ces mécanismes, soit l'un et l'autre Lorsque plusieurs programmes fonctionnent en même temps, l'un ou l'autre des mécanismes peut être utilisé pour protéger des programmes contre une interférence provenant d'autres programmes. Une segmentation permet à une mémoire d'être complètement non structurée et simple, comme la mémoire modèle d'un processeur simple à 8 bits, ou d'être hautement structurée, avec une traduction et une protection d'adresses Chaque segment est un espace d'adresses indépendant, protégé Un accès à des segments est commandé par une donnée qui décrit sa dimension, le niveau de privilège nécessaire pour y accéder, les types de références de mémoires qui peuvent y être faites (rechercher instruction, pousser ou faire sortir une pile, opération de lecture, opération d'écriture, etc), et s'il est présent dans la mémoire. On se réfère maintenant à la Fig 1 (a) qui est une représentation d'un mécanisme de traduction d'adresses de mémoires Le mécanisme de segmentation traduit une adresse segmentée (logique) 100 en une adresse prévue pour un espace d'adresses continu, non segmenté, appelée adresse linéaire 110 Si une pagination est validée, le mécanisme de pagination 115 traduit l'adresse linéaire 110 en une adresse physique Si la pagination 115 n'est pas validée, l'adresse linéaire 110 est utilisée comme adresse physique 120. L'adresse physique 120 apparait finalement sur le bus d'adresses sortant du processeur. On peut trouver un exemple d'un système de gestion de mémoire implanté dans les microprocesseurs i 486 TM fabriqué par Intel Corporation à Santa Clara, Californie, le Cessionnaire de la présente demande. Dans les microprocesseurs i 486 TN, une adresse logique est constituée par un sélecteur de segments de 16 bits, pour son segment, et un décalage de 32 bits vers le segment En se référant à la Fig 1 (a), une adresse logique 100 est traduite en adresse linéaire 110 en ajoutant un décalage 101 à l'adresse de base 103 du segment L'adresse de base 103 est dérivée d'un descripteur de segments 104, qui est une structure de données en mémoire qui fournit la dimension et l'emplacement d'un segment, ainsi qu'une information de commande d'accès Par exemple, le descripteur de segments dans un microprocesseur i 486 TM provient de l'une de deux tables, la table globale de descripteurs (GDT) ou la table locale de descripteurs (LDT) Il existe une table globale de descripteurs pour tous les programmes du système, et une table locale de descripteurs pour chaque programme, ou tâche, à mettre en oeuvre Si le système d'exploitation le permet, différents programmes peuvent partager la même table locale de descripteurs Le système peut également être installé sans aucune table locale de descripteurs; tous les programmes utiliseront alors la table globale de descripteurs En vue d'une information plus détaillée concernant les microprocesseurs i 486 TM, on se référera au i 486 TM Microprocessor: Programmer's Reference Manual (ou Manuel de référence du programmeur du microprocesseur i 486 TM), disponible chez Intel Corporation, Santa Clara, Californie. L'adresse traduite est une adresse linéaire 110. Si un mécanisme de pagination n'est pas utilisé, l'adresse linéaire 110 est une adresse physique 120 Si une pagination est utilisée, il faut un deuxième niveau de traduction d'adresses pour produire une adresse physique 120. On se réfère à nouveau à la Fig 1 (a) Le sélecteur de segments 102 est représenté comme indiquant un descripteur de segments 104 qui définit un segment Un programme des microprocesseurs i 486 TN peut demander davantage de segments que les sélecteurs de segments occupant actuellement des registres de segments Lorsque tel est le cas, le programme utilise des formes d'instructions MOVE (c'est-à-dire déplacer) pour modifier le contenu des registres de segments lorsqu'il doit accéder à un nouveau segment Comme représenté à la Fig 1 (b), le sélecteur de segments 132 identifie un descripteur de segments en spécifiant une table de descripteurs 133 et un index de descripteurs 134 à l'intérieur de cette table. On se réfère maintenant à la Fig 2, o est illustré un format de descripteur dans le microprocesseur i 486 TM Cependant, puisque le format de descripteur doit obligatoirement fournir une compatibilité vers l'arrière pour des architectures de processeurs antérieurs, le format de descripteur devient brouillé lorsqu'il est mémorisé dans la mémoire Pour simplifier des opérations internes de processeur, un descripteur brut brouillé doit être transformé en un descripteur débrouillé Cette transformation d'un descripteur brouillé de segments 300 en un descripteur débrouillé de segments 310, pour les processeurs i 486 TM, est illustrée à la Fig 3. La présente invention réalise un système de gestion de mémoire perfectionné pour des opérations de mémoires dans le microprocesseur Comme décrit plus loin, un cache de descripteurs de segments est utilisé pour retenir des descripteurs précédemment recherchés, débrouillés et essayés, d'une manière telle que, lors de charges ultérieures de registres de segments, le descripteur de segments peut utiliser le cache comme source et peut être chargé directement, en un signal d'horloge, dans le fichier de registres de descripteurs de segments, en contournant ainsi tout le travail et toutes les servitudes habituellement associés à des charges de registres de segments Ainsi qu'il ressortira à l'homme de l'art, le système de mémoire de la présente invention permet de charger directement des descripteurs de segments dans le registre de segments, après une exploration associative par le sélecteur de segments, dès lors que les descripteurs de segments sont mémorisés en cache dans le cache de descripteurs de segments Si le descripteur n'est pas présent dans le cache de descripteurs, le sélecteur est utilisé pour rechercher le descripteur dans une table de descripteurs en mémoire, il débrouille et essaie le descripteur, et met à jour le cache de descripteurs à l'aide du nouveau descripteur recherché, débrouillé et essayé, de sorte que le descripteur peut être rendu ultérieurement disponible. C'est donc un but de la présente invention que de réaliser un système de mémoire perfectionné pour parvenir à accroître la vitesse d'accès aux données et le rendement. C'est un autre but de la présente invention que de réaliser un système de mémoire perfectionné comprenant un cache de descripteurs de segments tel que les descripteurs de segments précédemment recherchés et débrouillés peuvent être mémorisés en cache pour un usage ultérieur. Selon un premier aspect de l'invention, il est réalisé un système de segmentation de mémoires pour microprocesseur qui charge vers un registre de segments, en réponse à une instruction de charge d'un sélecteur de segments, un descripteur de segments formaté dans un deuxième format, caractérisé en ce qu'il comprend: un moyen de cache de descripteurs pour recevoir ledit sélecteur de segments, ledit moyen de cache de descripteurs mémorisant dans ledit deuxième format une série de descripteurs de segments, chacun desdits descripteurs de segments dans ledit deuxième format étant associé à une série de sélecteurs de segments d'une manière telle que chaque moyen de cache de descripteurs envoie vers ledit registre de segments un descripteur de segments dans ledit deuxième format si ledit descripteur de segments dans ledit deuxième format est associé audit sélecteur de segments; un moyen d'essai de sélecteur pour recevoir ledit sélecteur de segments lorsqu'aucun descripteur de segments dans le deuxième format dans ledit moyen de cache de descripteurs n'est associé audit sélecteur de segments, ledit moyen d'essai de sélecteur déterminant si ledit sélecteur de segments possède un premier niveau prédéterminé de privilège; un moyen générateur d'adresses linéaires de descripteurs couplé audit moyen d'essai de sélecteur pour engendrer à partir dudit sélecteur de segments une adresse linéaire de descripteur; un moyen de recherche de descripteurs pour rechercher dans une table de descripteurs, sur la base de ladite adresse linéaire de descripteur, un descripteur de segments dans un premier format; un moyen d'essai de descripteur pour déterminer si ledit descripteur de segments dans ledit premier format possède un deuxième niveau prédéterminé de privilège; et un moyen de format de descripteur pour formater dans ledit deuxième format ledit descripteur formaté dans le premier format si ledit descripteur de segments dans ledit premier format comprend ledit deuxième niveau prédéterminé de privilège, ledit moyen de format envoyant ledit deuxième format audit moyen de cache de descripteurs afin de mettre à jour son contenu si ledit deuxième segment de descripteur dans ledit deuxième format est associé audit deuxième sélecteur de segments, ledit moyen de cache de descripteurs envoyant aussi vers ledit registre de segments ledit descripteur de segments dans ledit deuxième format, grâce à quoi ledit descripteur de segments dans ledit deuxième format est directement chargé depuis ledit moyen de cache de descripteurs lorsque ledit sélecteur de segments est reçu par ledit moyen de cache de descripteurs. De façon avantageuse, ledit moyen de cache de descripteurs comprend en outre: un réseau d'ensembles comprenant une série d'ensembles, l'un desdits ensembles étant choisi par ledit sélecteur de segments, chacun desdits ensembles étant remplacé selon un algorithme de remplacement prédéterminé; un réseau d'étiquettes comprenant une série d'étiquettes de descripteurs, ledit réseau d'étiquettes étant organisé en une série d'ensembles, chacun desdits ensembles étant, de plusieurs manières, associatif d'ensemble à ensemble avec lesdits ensembles dudit réseau d'ensembles; et un réseau de données comprenant une série de descripteurs de segments dans ledit deuxième format, ledit réseau de données étant associatif d'ensemble à en ensemble avec chacun desdits ensembles dudit réseau d'étiquettes. De préférence, ledit réseau met alors en oeuvre au moins un algorithme de remplacement d'élément le moins récemment utilisé. Selon un deuxième aspect de l'invention, il est fourni un procédé de chargement, dans un système de gestion de mémoire de microprocesseur, d'un descripteur de segments dans un deuxième format vers un registre de segments en réponse à une instruction de chargement de sélecteur de segments, lorsque ledit segment de la mémoire est spécifié par ledit descripteur de segments dans ledit deuxième format dans ledit registre de segments et que ledit descripteur de segments dans ledit deuxième format est spécifié par ledit sélecteur de segments, caractérisé en ce qu'il comprend les étapes consistant à: entrer un sélecteur de segments dans le moyen de cache de descripteurs; explorer ledit moyen de cache de descripteurs pour déterminer si un descripteur de segments dans un deuxième format correspondant audit sélecteur de segments est présent dans ledit moyen de cache de descripteurs et, si tel et le cas, charger vers ledit registre de segments ledit descripteur de segments dans ledit deuxième format, ledit moyen de cache de descripteurs comprenant une série de descripteurs de segments dans ledit deuxième format qui est associée à une série de sélecteurs correspondants de segments; si ledit descripteur de segments dans ledit deuxième format n'est pas présent dans ledit moyen de cache de descripteurs, essayer ledit sélecteur de segments dans un moyen d'essai de sélecteur pour déterminer si ledit sélecteur de segments possède un premier niveau prédéterminé de privilège; engendrer dans un moyen générateur d'adresses linéaires une adresse linéaire de descripteur; rechercher dans une table de descripteurs, sur la base de ladite adresse linéaire de descripteur, ledit descripteur de segments dans un premier format, ladite table de descripteurs mémorisant une série de descripteurs de segments dans ledit premier format; essayer ledit descripteur de segments dans ledit premier format dans le moyen d'essai de descripteurs afin de déterminer si ledit descripteur de segments dans ledit premier format possède un deuxième niveau prédéterminé de privilège; formater dans ledit deuxième format ledit descripteur de segments formaté dans ledit premier format, dans le moyen de formatage de descripteurs; charger vers ledit registre de segments ledit descripteur de segments dans ledit deuxième format; mettre à jour ledit moyen de cache de descripteurs à l'aide dudit descripteur de segments dans ledit deuxième format d'une manière telle que, si le même sélecteur de segments est reçu ultérieurement par ledit moyen de cache de descripteurs, ledit moyen de cache de descripteurs amène directement ledit descripteur de segments dans ledit deuxième format à être chargé dans ledit registre de segments, grâce à quoi un segment est spécifié sur la base dudit descripteur de segments dans ledit deuxième format chargé vers ledit registre de segments. Ledit moyen de cache de descripteurs comprend de préférence un réseau d'ensembles, un réseau d'étiquettes et un réseau de données, caractérisé en ce que ladite exploration dudit moyen de cache de descripteurs comprend en outre les étapes suivantes: ledit sélecteur spécifie un ensemble dans ledit réseau d'ensembles; une étiquette dudit réseau d'étiquettes est choisie pour correspondre audit ensemble dudit réseau d'ensembles, chaque réseau d'étiquettes étant, de plusieurs manières, organisé pour être associatif d'ensemble à ensemble avec lesdits ensembles dudit réseau d'ensembles; ledit descripteur de segments dans ledit deuxième format est choisi en correspondance avec ladite étiquette dudit réseau d'étiquettes. De façon avantageuse, le procédé comprend en outre un remplacement de chacun desdits ensembles dudit réseau d'ensembles selon un algorithme prédéterminé de remplacement. Les buts et avantages de la présente invention, ainsi que d'autres, ressortiront mieux de la description détaillée d'un exemple de réalisation donné ci-dessous, prise en liaison avec les dessins Les figures représentent: la FIGURE 1 (a) un mécanisme de traduction d'adresses de mémoires; la FIGURE 1 (b) le format d'un sélecteur de segments; la FIGURE 2 le format d'un descripteur de segments; la FIGURE 3 le processus de débrouillage d'un descripteur brouillé de segments; la FIGURE 4 un schéma logique du processus de charge d'un registre de segments en mode protégé; la FIGURE 5 un schéma fonctionnel d'un système de segmentation de mémoire incorporant l'enseignement de la présente invention; la FIGURE 6 un schéma logique illustrant l'opération d'une charge de descripteur de segments; la FIGURE 7 un cache de descripteurs actuellement implanté; la FIGURE 8 un pseudo algorithme, implanté actuellement, de remplacement de l'élément le moins fréquemment utilisé (le LRU). On décrit maintenant un système de gestion de mémoire perfectionné, destiné à des opérations de mémoire dans des ordinateurs, qui présente des applications particulières pour une utilisation dans des systèmes de mémoires de microprocesseurs employant une technique de segmentation afin d'améliorer l'efficacité d'accès aux mémoires Pour les buts de l'explication, on exposera, dans la description qui suit, des mémoires, des organisations, des architectures, des vitesses de données spécifiques, etc afin de permettre une compréhension complète de la présente invention Cependant, l'homme de l'art comprendra que la présente invention peut être mise en oeuvre sans ces détails spécifiques Dans d'autres cas, des circuits bien connus sont représentés sous formes de schémas fonctionnels afin de ne pas obscurcir de façon inutile la présente invention. On se réfère maintenant à la Fig 4, dans laquelle le processus de chargement d'un registre de segments est décrit dans un format de schéma fonctionnel L'homme de l'art comprendra que la charge de registre de segments est à la base de tout schéma de il gestion de mémoire par segmentation Comme représenté, lorsque le processeur rencontre un sélecteur provenant d'une instruction telle que MOVE SEG REG, le processeur essaie d'abord le sélecteur quant à toute violation de privilège d'une manière telle qu'un programme moins privilégié ne puisse pas utiliser un programme plus privilégié pour accéder à des données protégées Si l'on ne trouve aucune violation de privilège, un descripteur à 8 octets est recherché par le processeur dans la mémoire/le cache de données sur la base de l'identification, par le sélecteur, d'une table de descripteurs et d'un descripteur à l'intérieur de cette table Ce descripteur est essayé quant à des violations de privilège Si l'on ne trouve aucune violation de privilège, le descripteur est débrouillé et une information concernant le segment, par exemple la dimension et l'emplacement du segment, ainsi que l'information de commande et de statut, peut être chargée dans le registre de segments pour que le programme l'exécute. Comme le comprend l'homme de l'art, la présente invention fournit un système de mémoire perfectionné en permettant à des descripteurs précédemment recherchés et essayés d'être retenus dans une mémoire associative. Au cours de charges ultérieures de descripteur de segments du même descripteur, le cache de descripteurs de segments est exploré Si le cache de descripteurs de segments contient l'entrée souhaitée, le fichier de registres de segments peut être chargé directement depuis le cache de descripteurs de segments, en contournant ainsi toutes les étapes nécessaires dans un processus dépourvu du cache de descripteurs de segments Par conséquent, la performance du système de segmentation de mémoire est fortement améliorée. On se réfère maintenant à la Fig 5, dans laquelle est représenté le système de mémoire, prévu pour une charge de registre de segments et incorporant l'enseignement de la présente invention L'homme de l'art doit comprendre que les dimensions des bus ne sont données qu'à titre d'illustration seulement et que la présente invention peut être mise en oeuvre sans le détail spécifique de l'illustration Comme représenté à la Fig 5, un système 500 comprend un dispositif d'essai 510 de privilège de sélecteur pour vérifier des violations quelconques de privilège dans un sélecteur 501 d'une manière telle qu'un programme moins privilégié ne puisse pas gagner un accès à une donnée protégée Tel qu'il est utilisé dans la mise en oeuvre actuelle, lorsque le champ de privilège du sélecteur de segments contient un niveau de privilège à valeur plus élevée (c'est-à-dire moins privilégié) que le programme, le sélecteur a priorité par rapport au niveau de privilège du programme Si le sélecteur 501 est satisfaisant, c'est-à- dire qu'il réussit, au dispositif d'essai de privilège 510, il est transféré au générateur 520 d'adresses de descripteurs Le générateur 520 d'adresses de descripteurs engendre ensuite l'adresse appropriée du descripteur dans la table de descripteurs pour le sélecteur Actuellement, on utilise deux tables de descripteurs: table globale et table locale de descripteurs Le processus de génération d'adresses implique de modifier le segment actuel, pour spécifier une table sur la base de la sélection effectuée par le sélecteur 501, et de placer l'Adresse Effective à la valeur d'index du sélecteur A l'aide de l'Adresse Effective, un descripteur peut être recherché dans la mémoire 530 et entré en sas dans le débrouilleur 550 et le dispositif d'essai 540 de descripteurs Le dispositif d'essai 540 de descripteurs vérifie le descripteur pour commander son accès aux segments S'il apparait une violation d'accès, un défaut est engendré vers le processeur Si aucune violation n'apparait, le débrouilleur 550 transforme le descripteur en une forme interne débrouillée comme représenté à la Fig 3 Un descripteur satisfaisant est chargé dans un fichier 560 de registres de segments et mis à jour dans le cache 570 de descripteurs pour être utilisé ultérieurement. On se réfère maintenant à la Fig 6 dans laquelle est représenté un schéma logique identifiant la séquence d'opérations d'une charge de descripteur de segments Lorsque le sélecteur 501 est rencontré, par exemple dans une instruction MOV Sreg, le cache 570 de descripteurs est consulté Si un descripteur correspondant est trouvé ("une réussite"), le descripteur est chargé à partir du cache 570 de descripteurs vers le fichier 560 de registre de segments, en même temps que le sélecteur 501 Si aucun descripteur correspondant n'est trouvé ("une erreur"), le sélecteur 501 est essayé quant à des violations de privilège d'une manière telle qu'un défaut puisse être engendré pour un sélecteur à niveau insuffisant de privilège Si le sélecteur 501 est satisfaisant au dispositif d'essai 510 de privilège, l'adresse linéaire de descripteur peut être calculée et le descripteur est recherché dans la mémoire 530 Le descripteur est également essayé quant à son niveau de privilège et un défaut est engendré pour toutes violations de privilège Le descripteur est débrouillé et le descripteur débrouillé est chargé dans le fichier 560 de registre de segments Le descripteur non débrouillé est également utilisé pour mettre à jour le cache 570 de descripteur,. On se réfère maintenant à la Fig 7, dans laquelle est représenté un schéma du cache de descripteurs de segments mis en oeuvre actuellement. Bien que l'on ait illustré un cache associatif d'ensemble à ensemble de 4-par-16, l'homme de l'art comprendra que d'autres organisations peuvent facilement être mises en oeuvre pour parvenir à la fonctionnalité souhaitée Le cache 770 de descripteurs est divisé en trois réseaux: le réseau d'étiquettes 720, le réseau de données 730, le réseau d'éléments le moins récemment utilisés ("LRU") Les bits de sélecteur l 4:3 l sont utilisés comme le numéro d'ensemble et l'index vers le cache de descripteurs Chaque ensemble est composé de 4 "routes", dont chacune est explorée de manière associative quant à l'entrée souhaitée. L'entrée la moins fréquemment utilisée 715 est composée de 3 bits utilisés pour déterminer quelle "route" est l'ensemble le moins récemment utilisé. Lorsqu'une nouvelle entrée doit être placée dans le cache de descripteurs, l'entrée LRU de cet ensemble détermine quelle entrée sera remplacée avec un minimum d'impact sur la performance Comme représenté à la Fig. 8, on utilise un pseudo algorithme de LRU comprenant 3 bits de LRU, appelés LO, Ll et L 2, pour déterminer quelle entrée il faut remplacer. L'étiquette 740 de descripteur provenant du réseau 720 d'étiquettes comprend les bits restants de sélecteur et le niveau de privilège du processeur lorsque l'entrée a été placée dans le cache de descripteurs L'étiquette contient aussi un bit valide 741 indiquant si l'entrée est valide, et un drapeau de segment de çode (CS) 742 Le drapeau CS 742 est utilisé pour identifier le type de descripteur mémorisé dans le cache, puisque différentes vérifications de protection sont appliquées pour CS, à la différence du cas des segments de données Le réseau de données 730 contient des descripteurs débrouillés de segments, dont chacun contient des droits d'accès 751, une adresse de base 752, et une limite 753. Alors que la présente invention a été décrite en se référant aux Fig 1 à 8, on comprendra que les figures ne sont données qu'à titre d'illustration et ne limitent ni l'esprit ni le cadre de la présente invention. t REVENDICATIONS 1 Système ( 500) de segmentation de mémoires pour microprocesseur qui charge vers un registre de segments ( 560), en réponse à une instruction de charge d'un sélecteur ( 501) de segments, un descripteur de segments formaté dans un deuxième format, caractérisé en ce qu'il comprend: un moyen de cache ( 570) de descripteurs pour recevoir ledit sélecteur ( 501) de segments, ledit moyen de cache ( 570) de descripteurs mémorisant dans ledit deuxième format une série de descripteurs de segments, chacun desdits descripteurs de segments dans ledit deuxième format étant associé à une série de sélecteurs ( 501) de segments d'une manière telle que chaque moyen de cache ( 570) de descripteurs envoie vers ledit registre ( 560) de segments un descripteur de segments dans ledit deuxième format si ledit descripteur de segments dans ledit deuxième format est associé audit sélecteur ( 501) de segments; un moyen d'essai ( 510) de sélecteur ( 501) pour recevoir ledit sélecteur ( 501) de segments lorsqu'aucun descripteur de segments dans le deuxième format dans ledit moyen de cache ( 570) de descripteurs n'est associé audit sélecteur ( 501) de segments, ledit moyen d'essai ( 510) de sélecteur ( 501) déterminant si ledit sélecteur ( 501) de segments possède un premier niveau prédéterminé de privilège; un moyen générateur ( 120) d'adresses linéaires de descripteurs couplé audit moyen d'essai ( 510) de sélecteur ( 501) pour engendrer à partir dudit sélecteur ( 501) de segments une adresse linéaire de descripteur; un moyen de recherche de descripteurs pour rechercher dans une table ( 530) de descripteurs, sur la base de ladite adresse linéaire de descripteur, un descripteur de segments dans un premier format; un moyen d'essai ( 540) de descripteur pour déterminer si ledit descripteur de segments dans ledit premier format possède un deuxième niveau prédéterminé de privilège; et un moyen de format de descripteur pour formater dans ledit deuxième format ledit descripteur formaté dans le premier format si ledit descripteur de segments dans ledit premier format comprend ledit deuxième niveau prédéterminé de privilège, ledit moyen de format envoyant ledit deuxième format audit moyen de cache ( 570) de descripteurs afin de mettre à jour son contenu si ledit deuxième segment de descripteur dans ledit deuxième format est associé audit deuxième sélecteur ( 501) de segments, ledit moyen de cache ( 570) de descripteurs envoyant aussi vers ledit registre ( 560) de segments ledit descripteur de segments dans ledit deuxième format, grâce à quoi ledit descripteur de segments dans ledit deuxième format est directement chargé depuis ledit moyen de cache ( 570) de descripteurs lorsque ledit sélecteur ( 501) de segments est reçu par ledit moyen de cache ( 570) de descripteurs. 2 Système ( 500) selon la revendication 1, caractérisé en ce que ledit moyen de cache ( 570) de descripteurs comprend en outre: un réseau d'ensembles ( 710) comprenant une série d'ensembles, l'un desdits ensembles étant choisi par ledit sélecteur ( 501) de segments, chacun desdits ensembles ( 710) étant remplacé selon un algorithme de remplacement prédéterminé; un réseau ( 720) d'étiquettes comprenant une série d'étiquettes de descripteurs, ledit réseau d'étiquettes étant organisé en une série d'ensembles, chacun desdits ensembles étant, de plusieurs manières, associatif d'ensemble à ensemble avec lesdits ensembles dudit réseau d'ensembles; et un réseau ( 730) de données comprenant une série de descripteurs de segments dans ledit deuxième format, ledit réseau de données étant associatif d'ensemble à en ensemble avec chacun desdits ensembles dudit réseau d'étiquettes. 3 Système ( 500) selon la revendication 2, caractérisé en ce que ledit réseau ( 710) met en oeuvre au moins un algorithme de remplacement d'élément le moins récemment utilisé ( 710). 4 Procédé de chargement, dans un système de gestion de mémoire de microprocesseur, d'un descripteur de segments dans un deuxième format vers un registre de segments en réponse à une instruction de chargement de sélecteur de segments, lorsque ledit segment de la mémoire est spécifié par ledit descripteur de segments dans ledit deuxième format dans ledit registre de segments et que ledit descripteur de segments dans ledit deuxième format est spécifié par ledit sélecteur de segments, caractérisé en ce qu'il comprend les étapes consistant à: entrer un sélecteur de segments dans le moyen de cache de descripteurs; explorer ledit moyen de cache de descripteurs pour déterminer si un descripteur de segments dans un deuxième format correspondant audit sélecteur de segments est présent dans ledit moyen de cache de descripteurs et, si tel et le cas, charger vers ledit registre de segments ledit descripteur de segments dans ledit deuxième format, ledit moyen de cache de descripteurs comprenant une série de descripteurs de segments dans ledit deuxième format qui est associée à une série de sélecteurs correspondants de segments; si ledit descripteur de segments dans ledit deuxième format n'est pas présent dans ledit moyen de cache de descripteurs, essayer ledit sélecteur de segments dans un moyen d'essai de sélecteur pour déterminer si ledit sélecteur de segments possède un premier niveau prédéterminé de privilège; engendrer dans un moyen générateur d'adresses linéaires une adresse linéaire de descripteur; rechercher dans une table de descripteurs, sur la base de ladite adresse linéaire de descripteur, ledit descripteur de segments dans un premier format, ladite table de descripteurs mémorisant une série de descripteurs de segments dans ledit premier format; essayer ledit descripteur de segments dans ledit premier format dans le moyen d'essai de descripteurs afin de déterminer si ledit descripteur de segments dans ledit premier format possède un deuxième niveau prédéterminé de privilège; formater dans ledit deuxième format ledit descripteur de segments formaté dans ledit premier format, dans le moyen de formatage de descripteurs; charger vers ledit registre de segments ledit descripteur de segments dans ledit deuxième format; mettre à jour ledit moyen de cache de descripteurs à l'aide dudit descripteur de segments dans ledit deuxième format d'une manière telle que, si le même sélecteur de segments est reçu ultérieurement par ledit moyen de cache de descripteurs, ledit moyen de cache de descripteurs amène directement ledit descripteur de segments dans ledit deuxième format à être chargé dans ledit registre de segments, grâce à quoi un segment est spécifié sur la base dudit descripteur de segments dans ledit deuxième format chargé vers ledit registre de segments. Procédé selon la revendication 4 dans lequel ledit moyen de cache de descripteurs comprend un réseau d'ensembles, un réseau d'étiquettes et un réseau de données, caractérisé en ce que ladite exploration dudit moyen de cache de descripteurs comprend en outre les étapes suivantes: ledit sélecteur spécifie un ensemble dans ledit réseau d'ensembles; une étiquette dudit réseau d'étiquettes est choisie pour correspondre audit ensemble dudit réseau d'ensembles, chaque réseau d'étiquettes étant, de plusieurs manières, organisé pour être associatif d'ensemble à ensemble avec lesdits ensembles dudit réseau d'ensembles; ledit descripteur de segments dans ledit deuxième format est choisi en correspondance avec ladite t étiquette dudit réseau d'étiquettes. 6 Procédé selon la revendication 5, caractérisé en ce qu'il comprend en outre un remplacement de chacun desdits ensembles dudit réseau d'ensembles selon un algorithme prédéterminé de remplacement.