Brevet FR2681963A1 — publié le 19930402

ARRIERE PLAN DE L'INVENTION 1 Domaine de l'invention La présente invention concerne le domaine de l'architecture de microprocesseur En particulier, la présente invention est un procédé et un dispositif pour fournir des interruptions transparentes pour le système avec redémarrage automatique de la rupture de la séquence d'entrée/sortie. 2 Demande de brevet connexe Cette demande est connexe à la demande de brevet U S No 07/594 278 déposée le 9 octobre 1990, attribué à l'ayant droit de la présente demande, Intel Corporation, et intitulée interruption transparente pour le système (en anglais: Transparent System Interrupt). 3 Arrière-plan Dans la demande de brevet U S connexe en instance, on divulgue un procédé et un dispositif pour fournir des interruptions transparentes pour le système qui ont une application particulière dans une architecture de microprocesseur Le procédé et le dispositif divulgués dans la demande de brevet U S. connexe en instance résolvent le problème inhérent aux microprocesseurs de l'art antérieur, en particulier ceux qui ont un mode de fonctionnement protégé ainsi qu'un mode réel, de l'impossibilité pour un intégrateur système ou pour un fabricant d'équipements originaux (OEM) de fournir des interruptions transparentes pour le système. Des interruptions transparentes pour le système sont des interruptions au niveau système qui ne peuvent être translatées ou écrasées par tout système d'exploitation ou toute application, permettant ainsi, à un intégrateur système utilisant le microprocesseur de fournir des interruptions qui fonctionneront de manière fiable dans tout environnement d'exploitation Selon le mode de réalisation préféré divulgué dans la demande de brevet U S connexe en instance, une interruption transparente pour le système est invoquée par l'assertion d'un signal électrique sur une broche externe de la puce de l'unité centrale (UC) d'un jeu de puces à base de microprocesseur. Suite à l'assertion d'un signal électrique sur une broche externe de la puce de l'unité centrale (UC), l'unité centrale (UC) "cartographie" une zone mémoire dynamique (RAM) dédiée normalement "non cartographiée" dans laquelle le programme utilitaire d'interruption transparente pour le système est stocké dans une zone pré-déterminée de l'espace mémoire principal, l'unité centrale UC sauvegarde l'état en cours de l'unité centrale (UC) dans un emplacement dédié de la RAM, et elle commence l'exécution du programme utilitaire d'interruption transparente pour le système Le programme utilitaire d'interruption transparente pour le système comprend typiquement des instructions qui sont uniques pour une application particulière des interruptions transparentes pour le système du système dans lequel la puce de l'unité centrale (UC) est installée La récupération de l'interruption transparente pour le système est accomplie suite à la reconnaissance d'un événement externe qui invoque une instruction "Reprendre" (en anglais "Resume") provoquant la restauration de l'unité centrale (UC) exactement dans le même état que celui qui existait avant l'interruption transparente pour le système. Une application importante des interruptions transparentes pour le système est la mise en oeuvre des fonctions d'exploitation par lesquelles le processeur et/ou les autres dispositifs du système peuvent être arrêtés effectivement pendant des périodes de non- utilisation et ensuite redémarrés sans avoir besoin de passer par un programme de démarrage Cette fonction est particulièrement utile dans le cas d'ordinateurs fonctionnant sur batterie dans lesquels il est primordial d'économiser l'énergie Ainsi, par exemple, si un opérateur d'ordinateur est interrompu pendant le travail sur un programme d'application, le système peut être éteint pour prolonger la durée de vie de la batterie. Lorsque l'opérateur revient pour employer le système, il repart au même point dans le programme d'application comme si le système avait fonctionné pendant la période de temps intermédiaire L'opérateur n'a ni besoin de prendre une action quelconque pour sauvegarder des résultats du programme d'application avant l'interruption, ni de recharger le programme d'application lorsqu'il revient utiliser l'ordinateur. Dans la demande de brevet U S connexe en instance, l'interruption transparente pour le système ne fournit aucun support spécifique pour interrompre l'unité centrale (UC) pendant l'exécution d'une instruction entrée/sortie Cependant, le programme utilitaire transparent pour le système grâce à des instructions spécifiques d'application a la responsabilité de tester pour déterminer si l'unité centrale (Uc) a été interrompue pendant l'exécution d'une instruction d'entrée/sortie Si l'unité centrale (UC) a été interrompue pendant l'exécution d'une instruction d'entrée/sortie, le programme utilitaire transparent pour le système a de plus la responsabilité de déterminer quelle instruction d'entrée/sortie a été interrompue, d'arranger les registres appropriés concernant l'état de l'unité centrale (UC) sauvegardé dans l'emplacement mémoire dédié, de sorte que lorsque l'instruction "Reprendre" est exécutée pour restaurer l'état de l'unité centrale l'instruction d'entrée/sortie interrompue, si nécessaire. La manière dont le programme utilitaire transparent pour le système peut déterminer si l'unité centrale (UC) a été interrompue pendant l'exécution d'une instruction d'entrée/sortie, dépend du microprocesseur, cela est typiquement plutôt difficile à déterminer Pour le système, en exemple, à base du microprocesseur "i 386 R SX" exposé dans la demande de brevet U S connexe en instance, le programme utilitaire transparent pour le système détermine d'abord si l'unité centrale (UC) a été interrompue pendant l'exécution d'une instruction d'entrée/sortie en cherchant dans l'espace mémoire utilisateur à déterminer s'il s'est produit une rupture de séquence. Après avoir déterminé qu'une rupture de séquence s'est produite, le programme utilitaire transparent pour le système détermine quelle instruction d'entrée/sortie a été exécutée en déterminant o est située l'instruction. Pour faire cela, le programme utilitaire transparent pour le système doit déterminer le mode d'exécution de l'unité centrale (UC), obtenir l'adresse logique, et traduire l'adresse logique en adresse physique Ensuite, le programme utilitaire transparent pour le système détermine le type d'instruction, d'instruction d'entrée/sortie interrompue, la longueur de l'instruction, la longueur de l'adresse, et la longueur de l'opérande Pour faire cela, le programme utilitaire transparent pour le système doit déterminer un nombre de paramètres comprenant la dimension du segment mémoire, toute priorité d'adresse préfixée et toute priorité de code d'opération préfixé. L'approche d'avoir le programme utilitaire transparent pour le système responsable du redémarrage de l'unité centrale (UC) par une instruction d'entrée/sortie interrompue a au moins deux inconvénients: 1) la lourde charge de redémarrer l'unité centrale (UC) pour continuer l'exécution d'une instruction d'entrée/sortie interrompue est placée dans le programme utilitaire transparent pour le système, et 2) la manière dont l'unité centrale (UC) a redémarré après avoir été interrompue par une instruction d'entrée/sortie dépend du microprocesseur. RESUME DE L'INVENTION Ainsi, un but de la présente invention est de fournir une interruption transparente pour le système améliorée avec un redémarrage automatique de la rupture de séquence d'entrée/sortie. Selon la présente invention, les instructions d'écriture d'entrée/sortie ne sont pas annotées L'unité centrale (UC) attend jusqu'à ce que l'unité de bus ait fini l'écriture avant d'exécuter l'instruction suivante. Une interruption transparente pour le système est invoquée par l'assertion du signal électrique sur la broche externe de la puce de l'unité centrale (UC) d'un jeu de puces à base de microprocesseur Suite à l'assertion d'un signal électrique sur une broche externe de la puce de l'unité centrale (UC), l'unité centrale (UC) "cartographie" une zone mémoire dynamique (RAM) dédiée, normalement "non cartographiée" dans laquelle le programme utilitaire transparent pour le système est stocké dans une zone pré-déterminée de l'espace mémoire principal, l'unité centrale sauvegarde l'état en cours de l'unité centrale (UC) dans un emplacement dédié de la mémoire RAM, et elle commence l'exécution du programme utilitaire transparent pour le système. L'état de l'unité centrale (UC) sauvegardé comprend un pointeur d'une instruction, un pointeur de l'instruction précédente, et une pluralité de registres de paramètres d'entrée/sortie Le programme utilitaire transparent pour le système place un indicateur de rupture de séquence d'entrée/sortie dans l'espace dédié en mémoire RAM, pour le cas o l'unité centrale (UC) serait interrompue pendant l'exécution d'une instruction d'entrée/sortie et que le programme utilitaire transparent pour le système veuille que l'instruction d'entrée/sortie interrompue redémarre, lorsque l'exécution reprend Le programme utilitaire transparent pour le système comprend typiquement des instructions qui sont uniques pour une application particulière des interruptions transparentes pour le système du système dans lequel on a installé la puce de l'unité centrale (UC). La récupération de l'interruption transparente pour le système est accomplie par la reconnaissance d'un événement externe qui invoque une instruction "Reprendre" provoquant la restauration de l'unité centrale (UC) exactement dans le même état que celui dans lequel elle était avant l'interruption transparente pour le système comprenant la ré-exécution de l'instruction d'entrée/sortie interrompue En particulier, pendant la restauration de l'état de l'unité centrale (UC), l'instruction "Reprendre" restaure le pointeur d'instruction, et le pointeur de l'instruction précédente, teste l'indicateur de rupture de séquence d'entrée/sortie, et recule conditionnellement le pointeur d'instruction d'un incrément au pointeur d'instruction précédent si l'indicateur de rupture de séquence a été activé De plus, si l'indicateur de rupture de séquence a été activé, les registres de paramètres d'entrée/sortie sont restaurés dans des registres polyvalents appropriés. Il en résulte que lorsque l'instruction "Reprendre" redémarre l'unité centrale (UC) pour exécuter l'instruction "suivante", une instruction d'entrée/sortie interrompue sera automatiquement ré-exécutée. BREVE DESCRIPTION DES DESSINS Les buts, les caractéristiques et les avantages de la présente invention seront explicités par la description détaillée qui suit du mode de réalisation préféré de l'invention en se référant aux dessins dans lesquels: la figure 1 est un bloc diagramme fonctionnel d'un exemple de système microprocesseur concrétisant la présente invention. la figure 2 est un organigramme fonctionnel du logiciel câble (en anglais microcode) pour l'interruption transparente pour le système avec redémarrage automatique de la séquence de rupture d'entrée/sortie de la présente invention. DESCRIPTION DETAILLEE Vue d'ensemble du système En se référant maintenant à la figure 1, il est montré un bloc diagramme illustrant un exemple d'un système microprocesseur concrétisant la présente invention Le système microprocesseur en exemple est brièvement décrit ci-dessous; cependant, il est bien entendu que la présente invention n'est pas limitée à cette conception microprocesseur particulière, et peut être incorporée dans virtuellement toute conception. Le système microprocesseur en exemple 10 comprend trois composants principaux désignés sous GENCPU, GENIO et GENVGA GENCPU est une unité de traitement centrale étendue; GENIO est une unité d'entrée/sortie sur une seule puce; et GENVGA est une interface graphique sur une seule puce Les trois composants communiquent entre eux et avec les autres composants du système (par exemple des connecteurs d'extension, le contrôleur de clavier, les contrôleurs disque) par le bus ISA 42. GENCPU comprend une unité centrale (UC) 12, un contrôleur mémoire 14, un contrôleur de mémoire cache 16, une logique de commande 18 du bus et des mémoires tampons en ligne L'unité centrale (UC) 12 a, au moins deux modes de fonctionnement, un mode réel et un mode protégé. L'unité centrale (UC) 12 est essentiellement un R microprocesseur "i 386 SX" fabriqué, par Intel Corporation, la société ayant droit de cette invention. Dans cette description, on emploie une certaine terminologie concernant le microprocesseur "i 386 Rsx" r comme des noms de registres, une nomenclature de signaux, pour décrire la présente invention Une telle35 terminologie est comprise par des spécialistes du domaine de la conception de microprocesseur et ainsi ne sera pas expliquée en détail ici. En particulier, l'unité centrale (UC) 12 comprend une pluralité de registres généraux (non montrés), un registre pointeur d'instruction (non montré) contenant un pointeur d'instruction, et un registre pointeur de l'instruction précédente (non montré) contenant un pointeur de l'instruction précédente Le pointeur d'instruction commande l'accès instruction L'unité centrale (UC) 12 augmente automatiquement d'un incrément le pointeur de l'instruction et du pointeur de l'instruction précédente pour pointer respectivement, l'instruction suivante à exécuter et l'instruction qui vient juste d'être exécutée après exécution d'une instruction. L'unité centrale (UC) 12 comprend aussi des logiques (non montrées) pour exécuter une pluralité d'instructions Les instructions comprennent une pluralité d'instructions d'entrée/sortie de lecture et d'instructions d'entrée/sortie d'écriture Les instructions d'entrée/sortie d'écriture ne sont pas annotées et l'exécution de l'instruction suivante est différée par l'unité centrale (UC) 12 jusqu'à ce que l'unité de bus ait terminé l'écriture Chaque instruction d'entrée/sortie de lecture/écriture comprend une pluralité de paramètres d'entrée/sortie Les paramètres d'entrée/sortie sont stockés dans les registres polyvalents Les instructions, comprenant les instructions d'entrée/sortie de lecture/écriture, fonctionnent soit avec zéro, un opérande soit avec deux opérandes Un opérande réside soit dans l'instruction, dans un registre soit dans un emplacement mémoire. L'unité centrale (UC) 12 a deux modes de fonctionnement, un mode réel et un mode protégé Les différences principales entre le mode réel et le mode protégé sont il comment une adresse logique est traduite en adresse linéaire, la taille de l'emplacement adresse, et la capacité de pagination. De plus, l'unité centrale (UC) 12 comprend des logiques (non montrées) pour exécuter une pluralité d'interruptions de matériel (en anglais hardware) Des interruptions de matériel se produisent comme résultat d'un événement externe et sont classées en deux types: masquable et non masquable Des interruptions sont mises à jour après exécution de l'instruction en cours Lorsque le programme utilitaire d'interruption a terminé la mise à jour de l'interruption, l'exécution avance à l'instruction immédiatement après l'instruction interrompue Des interruptions masquables sont utilisées typiquement pour répondre à des événements matériels (hardware) externes asynchrones Des interruptions non masquables sont utilisées typiquement pour prendre en charge des événements à très haute priorité. Pour une description détaillée concernant les registres et la structure interne d'une unité centrale (UC) 12, voir i 38 R SX Microprocessor, publié par Intel corporation sous le numéro de publication 240 187 et les publications connexes. GENIO comprend des ports parallèles (PIO) 22, deux ports séries (SIO) 24 a, 24 b, des unités horloge temps réel (RTC) 26, deux contrôleurs d'interruptions programmables (PIC) 28 a, 28 b, deux compteurs de temps programmables (PIT) 30 a, 30 b et deux contrôleurs d'accès mémoire directe (DMA) 32 a, 32 b GENGVA comprend un contrôleur graphique VGA 36, un contrôleur de mémoire vidéo 38 et une interface 40 pour une unité d'affichage à écran plat. De plus, en dehors de ces trois composants principaux, il y a la mémoire système 44, la mémoire cache 46, la mémoire vidéo 48, et une interface (PAL/DAC) pour un moniteur VGA conventionnel La mémoire système 44, la mémoire cache 46 et la mémoire vidéo 48 sont accessibles respectivement par le contrôleur de mémoire 14, le contrôleur de mémoire cache 16 et le contrôleur de mémoire vidéo 38 On peut aussi accéder à la mémoire vidéo 48 par le bus ISA 42, et les deux interfaces 40, 50. Pour une description détaillée concernant le microprocesseur "i 38 b SX" voir i 38 e SX Microprocessor Hardware Référence Manual, publié par Intel corporation sous le numéro de publication 240 332 et les publications connexes. Interruption Transparente pour le système Avec Redemarrage Automatique de Rupture de Séquence d'entrée/sortie La présente invention est mise en oeuvre au moyen de trois améliorations de l'architecture microprocesseur de l'art antérieur conventionnel, par exemple, dans l'architecture du 'i 38 b' des ayants-droit, comme suit: 1 Une nouvelle interruption appelée interruption de supervision système (SSI) permettant de supplanter le mécanisme entier de protection du système microprocesseur avec un support spécifique afin de supplanter le mécanisme de protection alors que le microprocesseur exécute une instruction d'entrée/sortie L'interruption SSI est non masquable et a une priorité plus haute que toutes les autres interruptions, y compris tout autre interruption non masquable L'interruption SSI est mise à jour par un programme utilitaire d'interruption SSI. 2 Une zone mémoire spéciale transparente pour le système appelée système d'exploitation RAM ou SMRAM (en anglais "System Management RAM ou SMRAM") pour stocker le programme utilitaire d'interruption SSI, l'état de l'unité centrale (UC) au moment o elle a été interrompue, et un indicateur de rupture de séquence d'entrée/sortie L'indicateur de rupture de séquence d'entrée/sortie indiquant si l'unité centrale (UC) a été interrompue pendant l'exécution d'une instruction d'entrée/sortie Dans le microprocesseur, l'unité de mémoire peut comprendre une mémoire dynamique RAM sur la carte, la zone mémoire dédiée étant une partie de ladite mémoire dynamique située sur la carte L'unité de mémoire peut aussi comprendre une mémoire dynamique située en dehors de la carte, couplée à un contrôleur de mémoire dynamique RAM située sur la carte, la zone de mémoire l 4 is dédiée étant une partie de la RAM située en dehors de la carte. 3 Une nouvelle instruction, appelée "Reprendre" (en anglais "Resume") pour replacer le système microprocesseur dans l'état oà il était juste avant avoir été interrompu par une interruption SSI et pour reprendre l'exécution à l'instruction suivante ou pour ré- exécuter automatiquement l'instruction d'entrée/sortie interrompue. le En se référant maintenant à la figure 2, il est montré un organigramme illustrant le logiciel câble (en anglais microcode) de l'interruption SSI de la présente invention Une interruption SSI est invoquée par l'assertion d'un signal électrique sur une broche externe d'une puce de l'unité centrale (UC) Suite à la détection du signal sur la broche externe de la puce de l'unité centrale (UC) (événement SSI), l'unité centrale (UC) "cartographie" la mémoire SMRAM comme une zone prédéterminée de l'espace mémoire principal, bloc 102 La mémoire SMRAM est normalement non "cartographiée" comme une partie de l'espace mémoire principal, la rendant ainsi inaccessible au système d'exploitation et aux applications De plus, l'unité centrale (UC) sauvegarde l'état de l'unité centrale (UC) dans l'espace mémoire SMRAM, bloc 104, elle commute l'unité centrale (UC) en mode réel, bloc 106, elle ré-initialise les registres de commande du programme de l'unité centrale (UC), bloc 108 et elle démarre l'exécution du programme utilitaire d'interruption SSI, bloc 110. L'état de l'unité centrale (UC) sauvegardé comprend le pointeur d'instruction, le pointeur de l'instruction précédente, les registres des paramètres d'entrée/sortie Le programme utilitaire d'interruption SSI place l'indicateur de rupture de séquence d'entrée/sortie dans l'emplacement dédié de la RAM, pour le cas o l'unité centrale (UC) serait interrompue pendant l'exécution d'une instruction d'entrée/sortie et que le programme utilitaire d'interruption veuille redémarrer l'instruction d'entrée/sortie interrompue lorsque l'exécution reprend Le programme utilitaire d'interruption SSI comprend typiquement des instructions qui sont uniques pour une application particulière de l'interruption SSI du système dans lequel on a installé la puce de l'unité centrale (UC). La récupération de l'interruption SSI est accomplie suite à la reconnaissance d'un événement externe qui invoque l'instruction "Reprendre" (événement RSM) Suite à la détection d'un événement externe, l'unité centrale (UC) restaure l'état de l'unité centrale (UC) stocké dans la zone mémoire SMRAM, bloc 112, elle teste afin de déterminer si l'indicateur de rupture de séquence d'entrée/sortie a été activé, bloc 113 Si l'indicateur de rupture de séquence d'entrée/sortie a été activé, branche 113 a, l'unité centrale (UC) recule le pointeur d'instruction d'un incrément au pointeur de l'instruction précédente, bloc 114 De plus, les registres de paramètres d'entrée/sortie sont restaurés avec les valeurs qu'ils avaient avant que l'interruption se soit produite. Si l'indicateur de rupture de séquence d'entrée/sortie n'est pas activé, branche 113 b, ou suite au recul du pointeur d'instruction d'un incrément au pointeur de l'instruction précédente, bloc 115, l'unité centrale (UC) sort de la zone mémoire SMRAM et la "cartographie" comme une partie de la place mémoire principale, bloc 116, et elle continue l'exécution du système d'exploitation interrompu ou du programme d'application, bloc 117 Ainsi, si l'indicateur de rupture de séquence d'entrée/sortie a été activé suite à une reprise du programme utilitaire d'interruption système, l'interruption d'entrée/sortie interrompue sera ré-exécutée Cependant, si l'indicateur de rupture de séquence d'entrée/sortie n'est pas activé suite à une reprise du programme utilitaire système, l'instruction suivante sera exécutée. A l'exception de la sauvegarde du pointeur d'instruction et du pointeur de l'instruction précédente, de la sauvegarde des registres de paramètres d'entrée/sortie, du test de l'indicateur de rupture de it séquence d'entrée/sortie, du recul du pointeur d'instruction d'un incrément et de la restauration conditionnelle des registres de paramètres d'entrée/sortie, on a décrit en détail ces améliorations, comprenant une application spécifique de l'interruption de SSI, l'interruption de l'exploitation de l'énergie (en anglais Power Management Interrupt PMI), dans la demande de brevet U S connexe en instance, qui est entièrement incorporée ici, à titre de référence. Alors que le procédé de la présente invention a été décrit à présent dans les termes de son mode de réalisation préféré, les spécialistes reconnaîtront que le procédé de la présente invention n'est pas limité à la forme du mode de réalisation préféré décrit, en ce moment Le procédé de la présente invention peut être appliqué avec des modifications et des transformations dans l'esprit et le but des revendications annexées Les spécifications et les dessins doivent être regardés, par conséquent, à titre d'illustration plutôt que dans un sens restrictif. t, REVENDICATIONS 1 Système microprocesseur amélioré comprenant une unité centrale (UC) ( 12) couplée au moins à une unité mémoire ( 44) et au moins à une unité de bus ( 18) pour exécuter un système d'exploitation et au moins un programme d'application comprenant une pluralité d'instructions d'unité centrale ( 12), ladite unité centrale ( 12) ayant de plus au moins deux modes d'exécution de programme, un mode réel, et un mode protégé, et au moins une interruption pour interrompre l'exécution du programme, dans lequel l'amélioration dudit système microprocesseur comprend: (a) ladite unité centrale (UC) ( 12) attend que cette unité de bus ait terminé d'exécuter une instruction d'entrée/sortie d'écriture avant d'exécuter une instruction suivante, lesdites instructions comprenant au moins une instruction d'entrée/sortie comprenant ladite instruction d'entrée/sortie d'écriture20 (b) lesdites unités de mémoires ( 44) ayant une zone mémoire dédiée pour le stockage d'un programme de traitement d'interruption, des données d'état du processeur de ladite unité centrale (UC) ( 12), et un indicateur de rupture de séquence d'entrée/sortie, ladite zone mémoire dédiée n'étant pas organisée comme une partie de l'espace mémoire principal conservant ainsi ladite zone mémoire dédiée inaccess Lb-le audit système d'exploitation et auxdits programmes d'application, ledit programme de traitement d'interruption comprenant des instructions pour déterminer si ladite unité centrale (UC) ( 12) a été interrompue pendant une desdites instructions d'entrée/sortie et pour activer conditionnellement ledit indicateur de rupture d'entrée/sortie pour indiquer que ladite unité centrale ( 12) a été interrompue pendant une desdites instructions d'entrée/sortie et ladite instruction d'entrée/sortie interrompue est à redémarrer lorsque ladite unité centrale ( 12) reprend l'exécution; lesdites données d'état du processeur comprenant un pointeur d'instruction, un pointeur d'instruction précédente, et au moins un registre de paramètres d'entrée/sortie, ledit pointeur d'instruction et ledit pointeur de l'instruction précédente pointant une première et une seconde instruction dudit système d'exploitation et des instructions du programme d'application, ladite première instruction étant la prochaine instruction à être exécutée par ladite unité centrale ( 12), ladite seconde instruction venant juste d'être une instruction exécutée par ladite unité centrale (UC) ( 12), lesdits registres de paramètres d'entrée/sortie étant associés aux instructions d'entrée/sortie exécutées le plus récemment; ledit indicateur de rupture de séquence d'entrée/sortie indiquant si ladite unité centrale (UC) ( 12) a été interrompue pendant l'exécution de l'une desdites instructions d'entrée/sortie; (c) lesdites interruptions ayant une interruption de supervision du système (SSI) pour interrompre l'exécution dudit système d'exploitation et desdits programmes d'application, pour entrer dans la zone mémoire dédiée et pour cartographier ( 102) ladite zone mémoire dédiée comme un segment pré-déterminé de l'espace mémoire principal, pour stocker ( 104) lesdites données d'état du processeur de ladite unité centrale (UC) ( 12) dans ladite zone mémoire dédiée, pour commuter ( 105) ladite unité centrale (UC) ( 12) dans ledit mode réel d'exécution, et pour débuter ( 106) l'exécution dudit programme de traitement d'interruption, ladite SSI n'étant pas masquable par ledit système d'exploitation et par lesdits programmes d'applications, et ladite SSI ayant une priorité plus haute que les autres interruptions; (d) lesdites instructions ayant une instruction "Reprendre" pour restaurer ( 112) lesdites données d'état du processeur sauvegardées, à partir de ladite zone mémoire dédiée vers ladite unité centrale (UC) ( 12), pour tester ( 118) ledit indicateur de rupture de séquence d'entrée/sortie pour déterminer s'il est activé, pour reculer conditionnellement ledit pointeur d'instruction restauré d'un incrément audit pointeur de l'instruction précédente si ledit indicateur de rupture d'entrée/sortie a été activé ( 113 a), pour charger ledit pointeur du port d'entrée/sortie restauré et ladite taille constante de la mémoire tampon d'entrée/sortie restauré, dans deux registres polyvalents de ladite unité centrale (UC) ( 12), pour sortir de la zone mémoire ( 116) et pour "décartographier" ladite zone de mémoire dédiée dans l'espace mémoire principal, et pour reprendre l'exécution dudit système d'exploitation ( 108) et desdits programmes d'application ( 110); permettant ainsi à ladite unité centrale (UC) ( 12) d'être interrompue de manière fiable et au redémar- rage automatique ( 118) de la rupture de la séquence d'en- trée/sortie d'être affecté audit programme utilitaire d'interruption de manière transparente pour ledit système d'exploitation et pour lesdits programmes d'application. 2 Système microprocesseur amélioré selon la revendication 1, dans lequel ladite unité mémoire comprend une mémoire dynamique (RAM) sur la carte, et ladite zone mémoire dédiée est une partie de ladite mémoire dynamique RAM située sur la carte. 3 Système microprocesseur amélioré selon la revendication 1, dans lequel ladite unité mémoire ( 44) comprend une mémoire dynamique située en dehors de la carte, couplée à un contrôleur de mémoire dynamique RAM située sur la carte. 4 Système microprocesseur amélioré selon la revendication 1, dans lequel ladite unité centrale (UC) ( 12) comprend un moyen d'interruption pour le déclenche- ment desdites interruptions comprenant ladite SSI, ladi- te SSI étant déclenchée suite à la réception d'un signal électrique, ledit moyen d'interruption comprenant une interface pour recevoir ledit signal électrique. 5 Système microprocesseur amélioré selon la revendication 4, dans lequel ladite interface est une broche d'un circuit externe. 6 Système microprocesseur amélioré selon la revendication 4, dans lequel le système microprocesseur comprend en outre, un moyen de détection d'événement couplé à au moins une unité système dudit système microprocesseur et audit moyen interruption pour détecter un événement prédéterminé associé avec ladite unité système et pour générer pour ladite interface ledit signal électrique suite à ladite détection. 7 Système microprocesseur amélioré selon la revendication 1, dans lequel ladite unité centrale (UC) ( 12) comprend un moyen d'instruction pour exécuter lesdites instructions comprenant lesdites instructions d'entrée/sortie et ladite instruction "Reprendre". 8 Dans un système microprocesseur comprenant une unité centrale (UC) ( 12) couplée au moins à une unité mémoire et à une unité bus ( 18) pour exécuter un système d'exploitation et au moins un programme d'application comprenant une pluralité d'instructions d'unité centrale (UC) ( 12), ladite unité centrale (UC) ( 12) ayant en outre au moins deux modes d'exécution de programme, un mode réel et un mode protégé, et au moins une interruption pour interrompre l'exécution du programme, un procédé pour interrompre de manière fiable ladite unité centrale (UC) ( 12) et pour fournir un redémarrage automatique de la rupture de la séquence d'entrée/sortie, d'une manière transparente pour ledit système d'exploitation et pour lesdits programmes d'application comprenant les étapes de: (a) stockage d'un programme de traitement d'interruption dans une zone mémoire dédiée de ladite unité mémoire, ladite zone mémoire dédiée étant non organisée comme une partie de l'espace mémoire principal conservant ainsi ladite zone mémoire dédiée inaccessible audit système d'exploitation et auxdits programmes d'application; (b) attente jusqu'à ce que cette unité de bus ait terminé l'exécution d'une instruction d'entrée/sortie d'écriture avant d'exécuter une instruction suivante, lesdites instructions comprenant une instruction d'entrée/sortie qui comprend ladite instruction d'entrée/sortie d'écriture (c) interruption de l'exécution dudit système d'exploitation et desdits programmes d'application suite à la réception d'une entrée pré-déterminée, ladite interruption étant impossible à masquer par ledit système d'exploitation et par lesdits programmes d'application et ayant une priorité plus haute que les autres interruptions; (d) commutation dans la zone mémoire dédiée et cartographie de ladite zone mémoire dédiée comme un segment prédéterminé de l'espace mémoire principal; (e) stockage des données d'état du processeur de ladite unité centrale (UC) ( 12) dans ladite zone mémoire dédiée; lesdites données d'état du processeur comprenant un pointeur d'instruction, un pointeur d'instruction précédente, et au moins un registre de paramètres d'entrée/sortie, ledit pointeur d'instruction et ledit pointeur d'instruction précédente pointant une première instruction et une seconde instruction dudit système d'exploitation et desdits programmes d'applications, ladite première instruction étant l'instruction suivante à exécuter par l'unité centrale (UC) ( 12), ladite seconde instruction étant l'instruction venant juste d'être exécutée par l'unité centrale (UC) ( 12), lesdits registres de paramètres d'entrée/sortie étant associés à l'instruction d'entrée/sortie exécutée le plus récemment; (e' commutation de ladite unité centrale (UC) ( 12) en mode réel d'exécution; (g) détermination ( 106) si ladite unité centrale (UC) ( 12) a été interrompue pendant l'exécution de l'une desdites instructions d'entrée/sortie, et dans le cas o ladite unité centrale (UC) ( 12) serait interrompue pendant l'exécution de l'une desdites instructions d'entrée/sortie et que ladite instruction d'entrée/sortie interrompue soit à ré-exécuter lorsque ladite unité centrale (UC) ( 12) reprend l'exécution, pour stocker ( 107) ledit indicateur de rupture de séquence d'entrée/sortie dans ladite zone mémoire dédiée; (h) démarrage ( 108) de l'exécution dudit programme de traitement d'interruption; (i) restauration desdites données sauvegardées de l'état du processeur, ladite restauration étant commandée par ledit programme utilitaire d'interruption; (j) détermination ( 113) si ledit indicateur de rupture de séquence d'entrée/sortie est activé et si ledit indicateur de rupture de séquence d'entrée/sortie est activé ( 113 a), recul dudit pointeur d'instruction restauré d'un incrément audit pointeur d'instruction précédente restauré, et restauration desdits registres de paramètres d'entrée/sortie; (k) commutation pour sortir de la zone mémoire dédiée ( 116) et "décartographie" de ladite zone mémoire dédiée dans ledit espace mémoire principal; et (i) reprise ( 118) de l'exécution dudit système d'exploitation et desdits programmes d'application à l'instruction pointée par ledit pointeur d'instruction. 9 Procédé selon la revendication 8, dans lequel ladite unité mémoire comprend de la mémoire dynamique (RAM) située sur la carte, et ladite zone mémoire dédiée est une partie de ladite mémoire RAM sur la carte. Procédé selon la revendication 8, dans lequel ladite unité mémoire comprend de la mémoire RAM située hors de la carte couplée audit contrôleur de mémoire RAM située sur la carte, et ladite zone mémoire dédiée est une partie de la RAM située en dehors de la carte. 11 Procédé selon la revendica- tion 8, dans lequel lesdites étapes (c) à (h) sont réalisées par des moyens d'interruption de ladite unité centrale (UC) ( 12) suite à la réception d'un signal électrique, ledit moyen d'interruption comprenant une interface pour recevoir ledit signal électrique. 12 Procédé selon la revendication 11, dans lequel ladite interface est une broche d'un circuit externe. 2 E; 13 Procédé selon la revendication 11, dans lequel ledit signal électrique est généré et fourni par ladite interface par un moyen de détection d'événement couplé au moins à une unité du système dudit système microprocesseur et audit moyen d'interruption suite à la détection d'un événement pré-déterminé associé avec ladite unité du système. 14 Procédé selon la revendication 11, dans lequel ladite étape (b) et lesdites étapes (i) à ( 1) sont réalisées par un moyen d'instruction de ladite unité centrale (UC). il