Brevet FR2346772A1 — publié le 19771028

La présente invention concerne la détection automatique des erreurs, notamment de celles dues à des pannes fugitives dans un équipement informatique au cours du déroulement de ltexécution programmée d'une tâche, et l'essai de correction de ces erreurs par le procédé connu de la reprise de l'exécution de cette partie du programme en laquelle une erreur vient d'^etre décelée. Un système connu en soi pour une telle fin consiste à assurer deux fois l'exécution du programme de la tâche, à comparer ces deux exécutions et, si la comparaison décèle des résultats différents, à provoquer une reprise de ces exécutions puis une nouvelle comparaison de leurs résultats. Lorsqutaprès un certain nombre de reprises, infructueuses, la comparaison indique toujours une différence des résultats, la panne de l'équipement est considérée comme irrécupérable et d'autres moyens, en dehors du cadre de la présente invention, entrent en Jeu. Lorsqu'au contraire, après exécution d'une reprise avant ce nombre, les résultats concordent, des moyens, également en dehors du cadre de l'invention,entrent en Jeu pour reprendre l'exécution de la ttche dont la progression a été ainsi temporairement interrompue. Selon que l'on attache une plus grande importance aux dépenses d'équipement ou à la rapidité d'exécution des travaux, cette double exécution peut avoir recours à la duplication du matériel :- deux processeurs travaillant en simultanéité sur une mtme tache ; -ou elle peut avoir recours à une duplication du logiciel:- toute séquence est exécutée deux fois consécutives par le même matériel, les résultats de la première exécution étant garés pour leur comparaison avec les résultats de la seconde. Pour que le recours à un tel système soit, en pratique, rentable, il faut qutau cours d'une tâche, les comparaisons soient suffisamment fréquentes pour qu'une erreur éventuelle ne puisse pas se propager au-delà d'un certain niveau de transmission des informations dans 1 'équipement et (ou) au-delà d'une certaine partie de l'exécution de la tanche. Mais, contradictoirement, il convient aussi que les comparaisons soient convenablement "rares" pour ne pas trop pénaliser le rendement global de l'équipement. Un compromis consiste à n'effectuer les comparaisons que Juste avant les moments où une erreur éventuelle se propagerait n à -l'extérieur", par exemple par la modification de données communes avec d'autres taches et (ou) le transfert de données, alors erronées, à une autre unité de l'équipement telle, par exemple, qu une unité périphérique.A titre indicatif, et pour le seul but de fixer les idées, on peut retenir la liste suivante de tels "moments": - - à chaque appel ou retour d'un module moniteur non réentrant d'un programme, - à chaque acquittement d'interruption programmée, - à chaque lecture ou écriture directe, - à chaque modification de données communes, - à chaque déroutement sur violation de mode, protection de mémoire, ... et tout autre prévu dans les programmes et leur exécution par l'équipement informatique. En ce qui suit, on dénommera #séquence", le déroulement d'une tache entre deux comparaisons provoquées par l'un des évènements ci-dessus. La séquence apparaît comme la plus grande entité dans laquelle le système puisse isoler une erreur, en assurant aussi la non-propagation de cette erreur. Elle apparaît donc à un niveau de la hiérarchie des traitements compris entre celui de la tache et celui de l'instruction, et qui peut entre considéré comme optimal pour les comparaisons des resultats d'exécution intermédiaires dans les traitements des données. Lorsqu'on désire détecter l'apparition d'une erreur par ce procédé de comparaison des résultats de deux exécutions d'une même séquence de programme, sans en avoir directement la provenance, il suffit de comparer, pour diminuer le colt, deux sommes arithmétiques, qui peuvent entre dites "de vérification1, (dites dans la terminologie anglaise des "check-sums"). Chacune d'elle est calculée au cours de la séquence, à chaque instruction pouvant mémoriser ou transmettre une donnée alors modifiée dont le code et l'adresse sont entrés dans le calculateur de cette somme, laquelle est, en fin de séquence, incrémentée des valeurs, alors actuelles, des contenus des registres de ltopérateur arithmétique/logique et du compteur ordinal. Lorsque la comparaison de ces deux sommes, en fin d'une séquence, indique une erreur, il faut reprendre ltexécution de cette séquence et, pour cela, rétablir dans l'équipement les données et états qu'il avait Juste avant ltexécution, défectueuse, de ladite séquence. Il est pour cela nécessaire de sauvegarder les éléments utiles de ces données et états. Une méthode classique consiste à conserver à part, à chaque début de séquence, le contexte de la partie de la té tache qutelle concerne, plus précisément tous les mots, y compris ceux des registres et du compteur ordinal, susceptibles d'8tre ou impérativement à modifier au cours de l'exé- cution de la séquence.Cette méthode conduit en général à un coût exagéré en mémoire et temps de recopie puisque tout mot conditionnellement modifiable ne l'est pas impérativement. Un but de l'invention est d'éviter cette dépense inutile. D'autre part, une méthode classique de définir les points de reprise possibles dans le déroulement d'un programme est d'en laisser la seule initiative au programmeur qui le fait de façon explicite ou implicite selon la nature du programme. Il est difficile, en pratique, impossible, de demander au programmeur qui détermine selon la seule logique ces points de reprise, de tenir compte du matériel dans lequel ce programme va Aetre exécuté, d'autant plus que le matériel pourra, si le programme est bien conçu, varier selon les besoins des utilisateurs. Or cette seule détermination logique peut conduire également à un accroissement indu du cott en mémoire et temps de recopie lorsqu'on désire exploiter le procédé de détection d'erreur qui--vient autre ci-dessus défini. Un but complémentaire de l'invention est d'éviter aussi de telles dépenses, sans imposer de contraintes au travail de la programmation. A ces fins, et selon une caractéristique de l'invention, ne sont sauvegardés que les mots mémoires réellement modifiés au cours de la séquence, en plus évidemment des mots sus-définis de début de séquence :- contenus initiaux des registres et du compteur ordinal, mot d'état-machine à cet instant. En pratique, cette sauvegarde s'effectue en ayant recours à une pile associée à la mémoire de travail du processeur qui régit l'exécution de la séquence. Selon une autre caractéristique de l'invention, alors, toute saturation de la pile au cours de l'exécution d'une séquence est testée pour provoquer un branchement de programme sur une routine de fin de séquence, indépendamment des fins de séquence ordonnées par l'arrivée dans le déroulement d'une tache d'un des évènements de la liste donnée en début d'exposé. ta taille de la pile est un facteur dont l'appréciation peut entre basée sur un compromis rapidité-occupation de mémoire adapté aux différentes applications. A chaque application on peut, par exemple, examiner le rapport entre le nombre total de fins de séquence pour l'exécution d'une tAche au nombre de fins de séquences utiles, c'est-à-dire non provoquées par une saturation de la pile de sauvegarde, au fur et à mesure que l'on fait varier la taille de cette pile. En considérant en mtme temps ltencombre- ment de la mémoire et les contraintes de temps, la taille préfè- rable pour une telle pile peut entre empiriquement déterminée cas par cas.On doit cependant insister sur ce que le concept de la sécurité en environnement très perturbé amène à considérer désirables des-séquences très courtes pour se prémunir de pannes fugitives trop nombreuses qui risqueraient de provoquer un diagnostic d'irréoupérabilité si elles s'accumulaient en une seule séquence, trop longue. En un tel cas, la pile sera établie d'une taille inférieure à celle qui peut être choisie uniquement selon les critères énumérés en début d'exposé. Bien évidemment, pour un équipement mono-processeur dont la sécurité est réalisée par une redondance temporelle, la taille de la pile peut autre maintenue à celle que doit incorporer chacun des processeurs pour un équipement biprocesseur, toutes choses égales d'ailleurs.Toutefois, une erreur dans la sauvegarde en première exécution d'une séquence entratnerait, si elle se produisait, l'apparition d'une erreur irrécupérable. I1 est donc préférable, pour une fiabilité plus poussée, de prévoir une pile de taille double, en fait deux piles de sauvegarde d'exploitation alternée pour l'exécution des séquences. Pour exposer l'invention en plus de détail, on se reporte aux figures jointes qui reprdsetent Fig. 1, un exemple non limitatif d'exécution de l'invention en son application à un bi-processeur, Fig. 2, un exemple non limitatif d'exécution de l'invention en son application à un mono-processeur, Fig. 3, un graphique utilisé dans l'exposé et concernant le choix de dimensionnement d'une pile de sauvegarde. De ces exemples et de leur description peuvent, sans plus, se déduire toutes variantes entrant dans le cadre de l'invention. Dans le schéma de la Fig. 1, on a représenté deux processeurs à multi-microprogrammation (1) et (2), que l'on doit comprendre comme étant de structures identiques et contenant les mimes microprogrammes de dépouillement et exécution d'instructions dans leurs mémoires de micro-programmes)uPl et y 2. Les instructions leur sont fournies, en quasi#simultanéité, à partir d'une paire de mémoires "centralesl' non représentées. Chacun des processeurs incorpore une mémoire de données (MD1), respectivement (MD2), avec son registre d'adresse, RAM1, respectivement RAM2; et son registre d'écriture/lecture REM1, respectivement RELM2. Chaque processeur incorpore une unité de travail, #P1, respéctivement ssP2, dont chacune comprend une pluralité de registres, groupés en ce que cette unité comprend un registre d'adressage RA~1, respectivement R4#2, et un registre d'écriture/ lecture REL#1 et RE#2, communs à ces registres et circuits. Aux fins de l'exposé, sont seuls représentés - le registre de mémoire de micro-instruction MOI, respectivement M02, équipé d'un décodeur de fonction Dol, respectivement DO2, dont une sortie est activée lorsqu'une micro-instruction d'exécution de fin de séquence, soit FDS, est introduite en MO (première ou seconde micro-instruction de ce microprogramme d'exécution), - le compteur ordinal des micro-instructions d'un programme, COl, respectivement C02, - des registres tels que A1, respectivement A2, et BI, respectivement B2 ; il y en a plus mais ces deux suffisent en supposant que dans A viendra l'adresse de mémorisation d'une donnée et dans B,#la donnée-opérande de cette adresse, - un opérateur arithmétique-logique ~1, respectivement ~2. La sortie/entrée du registre d'écriture-lecture RE M 1 est prise par un minibus MB1, pour le processeur (1), MB2 pour le processeur (2). Les processeurs ne communiquent entre eux que par des "ponts" entre ces minibus et, pour les besoins de l'exposé, il suffit de considérer le "pont" constitué par un comparateur de codes COMP ayant ses entrées respectivement connectées aux minibus MBl et MB2 et ayant deux sorties. L'une, repercée =, est activée pour une-concordance des codes comparés, l'autre, repérée /, est activée dans le cas contraire de discordance des codes. Dans la mémoire (MD1) est réservée une pile (SV1), à laquelle est associé un circuit de pointeur PP1 et un circuit de débordement DPL. Dans la mémoire (MD2) est réservée identiquement une pile de m#me taille (SV2) avec son circuit de pointeur PP2 et son circuit de débordement DPS. également, en chacune des mémoires (MB1) et (MD2) est réservé un emplacement pour au moins un registre repéré CHS1 respectivement CHS2. Entre le minibus MBl et le registre FELMI est établie, par des portes G1, une liaison bilaterale. La liaison s éQrteve est établie par des portes G2 entre RELIT et le minibus -c dans le second processeur. Pour l'exploitation de la présente invention, le5 piles (SV1) et (SV2) sont des piles de sauvegarde de données, s nuence par séquence et selon le processus qui sera expliqué plus loin. Les registres CHS1 et CHS2 sont ceux qui contiennent les so.or,es arithmétiques dont la constitution a été précisée en début d'exposé. Ce sont les contenus de ces registres CHS1 et CHS2 qui seront comparés en COMP en chaque exécution de fin de séquence. La sortie f de COMP est dirigée sur une entrée d'un compteur de reprises REP en lequel a été pré-affiché un nombre N qui représente le nombre maximum de reprises possible avant de déclarer l'erreur irrécupérable, sortie R. Auparavant, à chaque variation de contenu de REP, a été activée la sortie R reliée à une entrée de demande (appel) de microprogramme de reprise en l'une et l'autre des mémoires de microprogrammesjuPl et#uP2. Si désiré, chacune des sorties de DP1 et DP2 pourrait ttre dirigée sur les deux mémoires de microprogramme du bi-processeur, La sortie = de COMP est dirigée simultanément sur les deux mémoires de micro-programmes des processeurs afin d'y appeler la séquence du microprogramme qui suit celle qui vient d'être exécutée. La sortie / peut, si désiré, astre dirigée sur des entrées des mémoires de microprogrammes pour y signaler l'erreur dans le déroulement de la séquence. Le comparateur COMP ne peut et ne doit être activé que lorsque, d'une part, les sorties FDS des deux décodeurs des mémoires d'instruction M01 et MC2 sont "vraies" et, de plus, lorsque les codes CHS1 et CNS2 sont réellement disponibles sur les minibus à partir des registres REL1 et RELUS. Cette dernière condition est marquée par l'apparition sur les minibus de niveaux "vrais" pour des indices en RELI et REL2, qui y sont, par exemple, introduits par les opérateurs al et #2 en fin d'exécution de la microinstruction d'appel en REL du contenu du CHS correspondant. Une porte ET reçoit les signaux FDS1, FDS2 et ces deux derniers mentionnés, désignés par WD1 et WD2. Elle devient donc passante, sa sortie devient vraie et elle débloque le comparateur COMP. On a de plus indiqué, en chaque processeur, un circuit FSN1 pour (1) et FSN2 pour (2) que l'on doit comprendre comme regrou pant, pour chacun d'eux, toutes les conditions demandant une fin de séquence "anormale", à savoir toutes les conditions précisées en début d'exposé et qui opèrent normalement selon l'état antérieur de la technique. Les sorties de ces circuits FSN sont réunies aux sorties des circuits de débordement, respectivement DP1 et DP2, qui définissent les conditions nadditionnelles selon la présente invention, à savoir le débordement des piles, pour une requête de fin de séquence telle que sus-décrite. On a enfin indiqué, en chaque décodeur Dol et D02, une sortie modl, respectivement mod2, qui sera activée chaque fois que la micro-instruction existant alors en MOI, respectivement M02, décrit une fonction susceptible d'entratner, par son accomplis- sement, une modification du mot traité en PI1, respectivement ~2. Et, en chacun de ces opérateurs, on a indiqué en ml, respectivement m2, un circuit dont la sortie devient t'vraie" uniquement si le mot y a été effectivement modifié. Les sorties modl et ml, d'une part, les sorties mod2 et m2, de l'autre, sont prises en intersection par des portes Ml, respectivement M2. Les sorties de ces portes sont, pour la simplicité du schéma, montrées ramenées sur des entrées de demande spéciale aux mémoires de micro programmes1Pl, respectivement P2. On aurait pu, en variante, les montrer dirigées sur des registres spéciaux ayant des sorties dirigées, elles, sur des entrées de "forçage" des mémoires d'instructions.De plus, tout mot à traiter dans l'opérateur ~1, respectivement PI2 est, lorsque l'indice modl, respectivement mod2, est nvrain dans une instruction en MOl, respectivement M02, introduit temporairement dans un registre, Cl, respectivement C2. Sans plus, maintenant, le fonctionnement dlun système selon la présente invention peut s'exposer comme suit dans le cas d'un bi-processeur, donc le cas où la sécurité est assurée par une redondance spatiale. Chaque séquence exécutée par les processeurs débute par une instruction de garage du contenu du compteur ordinal CO dans la pile (SV) puis par des instructions de garage des contenus des registres de l'opérateur OId, dans cette pile en même temps que les codes d'adresses des registres ayant ces contenus. Bien évidemment ces garages, comme tous les échanges, passent par le registre RE M 1 et, pour le cas ci-dessus, par le registre RELM1, les adresses de départ étant en RA~1 et les adresses de destination étant en RAM1 pour de tels transferts d'opérateur à pile. Au cous du déroulement de la séquence, chaque fois qu ne instructior contient l'indice mod et que l'opérateur ~ rend rai la sortie m, la sortie du circuit M est activée et appelle de ZP une suite de micro-instructIons qui assurent le garage en pile du contenu du registre C et son adresse, la mise à jour du pointeur de pile, puis l'addition au contenu du registre CH3 des codes du mot modifié et de son adresse.Cette dernière opération nécessite le rappel en REI~ du contenu de CHS, l'addition par l'opérateur du mot modifié, rappelé du registre où il a été rangé et le rechargement de CHS par le code résultant de ladite addition en Après quoi, la dernière instruction de cette suite enchaîne avec la micro-instruction suivante du microprogramme en cours. Lorsque se produit une fin de séquence, tant normale que décelée par le débordement de la pile, un microprogramme de fin de séquence est rappelé de la mémoire de microprogramme#P, il débute par l'addition au contenu précédemment formé dans le registre CHS des contenus des registres de l'opérateur ~, du compteur ordinal CO et de leurs adresses en cet opérateur. Après quoi les contenus ainsi rectifiés de ces registres CHS1 et CHS2 sont comparés et, selon le résultat de la comparaison, une reprise a lieu ou le déroulement du microprogramme se poursuit.Le microprogramme de reprise débute par une suite de micro-instructions ré-initialisant le compteur ordinal et les registres de l'opérateur, en revidant la pile et en remettant le pointeur à zéro, et évidemment vidant le registre CHS après quoi la séquence est reprise selon la routine sus-décrite. La Fig. 2 donne le schéma d'un exemple--non limitatif d'application de l'invention à un monoprocesseur qui comprend une mémoire de microprogrammes uP, une mémoire de données (MD) et un bloc de travail O~. La mémoire de données est équipée de son registre d'adresse RAM et de son registre d'écriture-lecture RELM. On y a préservé deux piles (SV1) et (SV2) respectivement équipées de leurs pointeurs PP1 et PP2 et de leurs circuits de test de débordement DP1 et DP2. ON a aussi réservé en kMD) deux registres particularisés, CHS1 et CHS2, pour la formation des sommes arithmétiques des tests d'exécution correcte des séquences. Le bloc de travail comporte un ensemble de registres et circuits. Il est équipé de son registre d'adresse RA~ et de son registre d'écriture-lecture REI~, lui-m?me équipé d'un minibus tE pour les relations entre le bloc de travail et tous autres éléments du processeur et du système informatique auquel appartient ce processeur, non montrés car inutiles au regard de ltin- vent on. En particulier, des liaisons de transfert bilatéral sont établies par des portes G1 entre les deux registres REI~ et RELM à partir de ce minibus.Parmi les registres du bloc de travail sont représentés la mémoire d'instruction MO avec son décodeur DO, le circuit opérateur arithmétique/logique ~ et trois registres parmi une pluralité, A, B et C. Du décodeur DO, sont représentées deux sorties spéciales aux fins de l'invention. l'une, FS, est activée en cours d'exécution du microprogramme de fin de séquence, l'autre, mod, est activée chaque fois que l'instruction figurant alors en MO concerne une donnée qui peut entre modifiée au cours de l'exécution de cette micro-instruction. ###p###t### L'opzrateur ~ contient d'ailleurs un organe de test de modificabilité dont la sortie m est activée lorsqu'une telle modification a véritablement lieu. La sortie FS est dirigée sur un basculeur du type des flip-flops > par exemple, BS, en sorte qu'une sortie de ce basculeur sera activée une fois sur deux parri-#activatio# de la-sortie FS. On a indique en FSN, dans le bloc opérateur, ltensemble des circuits pouvant demander une fin de séquence "normale" au sens défini en début d'exposé. Un débordement soit de DP1, soit de DP2 demandera une fin de séquence "spéciale" selon l'invention. Les sorties de DP1, DP2 et FSN sont réunies sur une entrée de demande de fin de séquence de la mémoire des microprogrammes JIP. Un comparateur de codes numériques COMP reçoit en permanence sur ses entrées de comparaison les codes contenus en GHS1 et CHS2. I1 n'est activé qu'à la réception, de la sortie FS du décodeur de la mémoire dtinstruction, d'un signal de valeur "vraie" ce qui, comme susdit, ne se produit que dans l'exécution d'un microprogramme de fin de séquence. Le comparateur COMP a deux sorties. L'une repérée =, est activée à la concordance des codes en CHS1 et CHS2, elle est dirigée sur une entrée de ZP qui appelle, dans le programme en cours, la séquence suivante de celle qui vient de se terminer. L'autre sortie, repérée f, est activée sur la discordance des codes et est reliée à une entrée du circuit REP. Ce circuit est, par exemple, un compteur préaffiché avec un nombre 2N qui correspond au double du nombre de reprises d'exécution de séquence autorisé dans l'équipement avant de dscider quine erreur détectée est irrécupérable, sortie R de ce compteur HEP. La sortie R du compteur, tant qu'elle n'est pas nulle, demande à la mémoire de microprogrammation P de reprendre la séquence qui vient de se terminer par une telle non-concor- dance des contenus de CHS1 et CESS. L'aefvk ation de R est réciproque de celle de R, les deux conditionsvpeuvent coexister. Les sorties mod, de DO; et m, de ~, sont prises en intersection dans la porte M et la sortie de M est dirigée sur une entrée de la mémoire de microprogrammes#P pour y appeler, quand de besoin, une routine de microprogramme qui sera précisée plus loin. Enfin, la sortie de la bascule BS qui vient au niveau vrai après deux exécutions consécutives d'une m#me séquence, est dirigée sur le registre d'adresse RAM de la mémoire (MD). Elle y produit les modifications d'adresses utiles pour que, dans la seconde exécution d'une séquence, les adresses de la pile SV1 et du registre CHS1 soient converties en adresses correspondantes de la pile SVS et du registre CHS2 sans que le programme en soit en lui-meme modifié, ce qui permet de ne pas enregistrer deux microprogrammes distincts en fi pour les deux séquences à répéter consécutivement dans le système. En fait, la sortie de BS peut passer par un modificateur d'adresse en RAM, d'une façon classique en eIle-m#me. Le fonctionnement peut maintenant s'exposer comme suit, en admettant, pour la commodité, que le registre C est destiné à contenir, avant sa modification, tout mot à modifier en En début de la première exécution d'une séquence, le microprogramme efface le contenu de (SV1) et CHS1. Il charge, pour garage, les données initiales de la séquence en (SV1). Puis le travail se poursuit normalement jusqu'à l'interruption marquée par une demande de fin de séquence, soit de FSN soit de DP1.Au cours de ce travail, chaque fois qu'une microinstruction en MO provoque le décodage de mod et que la réponse de l'opérateur PI rend vrai m, la sortie de la porte M est activée et appelle de une uns routine qui provoque le chargement en CHS1 du mot en C et de son adresse, en addition au code précédemment contenu en CHS1; pour cela le mot en CHS1 est rappelé en REL# et ltopérateur ~ assure cette addition dont le résultat est de nouveau garé en CHS1. Lorsqu ##signal de demande de fin de séquence se produit, le microprogramme entre dans la routine de fin de séquence, elle consiste en premier lieu à ajouter en CHS1 les contenus du CO et son adresse et des registres de l'opérateur et leurs adresses, puis de demander la comparaison. S'agissant de la première exécution d'une séquence, le résultat de la comparaison ne peut Autre que négatif, donc la sortie f est activée, donc la sortie R de REP est activée pour demander une reprise d'exécution de la séquence. L'exécution de cette reprise est similaire sauf que, cette fois, les garages ont lieu en (SV2) et les sommes sont mises en CHS2 en raison de la modification d'adresse susdite par l'état de la bascule BS. En fin de cette seconde exécution, la comparaison qui s'effectue alors peut donner un résultat positif, sortie = activée, sur quoi le microprogramme passe à la séquence suivante, ou un résultat négatif, sortie f activée et la séquence est, automatiquement, refaite deux fois consécutives ; et ainsi de suite. Bien entendu, toutes modifications technologiques aux deux exemples qui viennent titre décrits à titre illustratif, entrent dans le cadre de l'invention, par exemple, dans le cas d'un monoprocesseur, on peut omettre l'une des zones de sauvegarde et ne garer dans la pile alors unique que les données obtenues au cours de la première exécution dlune séquence. ta figure 3 donne, à titre indicatif, l'allure de la courbe NT/NU en fonction de TSV, c'est-à-dire l'allure de la variation du rapport nombre de séquences total sur nombre de séquences utiles pour l'exécution d'un travail en fonction de la taille de la pile de sauvegarde. Gelà permet de mieux comprendre comment peut entre choisie la taille de la pile. REVENDICATIONS =-=-=-=-x-:#e-)---r-#:---=,=,= 1. - Système de détection et d'essai de correction d'erreurs d'exécution de taches dans un équipement informatique selon le processus consistant à assurer deux fois ltexécution de chacune des séquences de la ttche, former à chaque fois un code significatif du résultat de cette exécution, comparer ces résultats, commander appel de la séquence suivante de la tâche lorsque ces résultats concordent, commander au contraire au moins une reprise de la séquence lorsque ces résultats diffèrent, les données et leurs adresses modifiables en cours d'exécution de la séquence ayant été garées et étant restituées lors d'une telle reprise, système caractérisé en ce qu'il incorpore des moyens assurant la seule sauvegarde des données modifiables de la séquence qui y sont effectivement modifiées et assurant la seule prise en compte dans la formation du mot de résultat d'exécution que des données effectivement modifiées en cette exécution. 2. - Système selon la revendication 1, caractérisé en ce que ces moyens comprennent la combinaison, à une zone de mémoire de sauvegarde et un registre de mémorisation du mot significatif de résultat, par exécution de séquence, de moyens de décodage en mémoire d'instruction activés par toute instruction pouvant conduire à la modification de la donnée désignée en cette instruction, de moyens de pointage dans l'opérateur arithmétiquelogique de traitement de la donnée activés pour toute modification effective de ladite donnée, et de moyens formant à partir des sorties de ces moyens de décodage et de ces moyens de pointage} lorsque leurs sorties sont toutes deux vraies, un appel de routines d'instructions assurant d'une part le placement dans ladite zone de sauvegarde de la donnée initiale et de l'adresse y relative et d'autre part l'addition au code du mot de résultat en formation de la donnée modifiée et de l'adresse y relative. 3. - Système selon la revendication 2, caractérisé en ce que cette zone de mémoire de sauvegarde consiste en une pile équipée d'un circuit de test de débordement et en ce que l'activation de la sortie de ce circuit de test provoque une requête d'exécution d'une routine de fin de séquence, additionnellement aux autres moyens, connus en eux-m#mes, pour un effet semblable. 4. - Système selon la revendication 3, caractérisé en ce que les mots codés de résultat des deux exécutions de la séquence sont comparés sur l'aetivation au cours de cette routine de fin de séquence, en un comparateur dont la sortie marquant l'égalité provoque l'appel d'exécution de la séquence suivante de la tAache et dont la sortie marquant l'inégalité active un circuit demandeur de la reprise de la double exécution de la mtme séquence. 5. - Système selon la revendication 4, caractérisé en ce que ce circuit demandeur de reprise incorpore des moyens propres à limiter le nombre des reprises consécutivement demandées, le dépassement de ce nombre activant une sortie de ce circuit marquant 1 t irrécupérabilitd de erreur. 6. - Système selon la revendication 4, caractérisé en ce que pour assurer ladite activation, le décodeur de la mémoire d'instruction est équipé d'une sortie activée en cette routine, et reliée à une entrée d'activation dudit comparateur. 7. - Système selon la revendication 5, caractérisé en ce que l'équipement informatique étant à monoprocesseur, deux registres de mots significatifs de résultats sont réservés en sa mémoire et des moyens pointent toute seconde exécution d'une séquence et commandent la commutation des adresses de ces registres. 8. - Système selon la revendication 7, caractérisé en ce que sont également réservées deux zones de sauvegarde distinctes et de m#me taille, dans la mémoire du processeur. 9, - Système selon les revendications 7 et 8, caractérisé en ce que ces moyens consistent en un basculeur de condition modifiée à chaque apparition d'une routine de fin de séquence et dont une sortie est dirigée sur un modificateur d'adresse de zone de sauvegarde et de registre de mot de résultat. 10. - Système selon la revendication 5, caractérisé en ce que, 1 5 équipement informatique étant bi-processeur, chacun des processeurs est équipé de sa zone de sauvegarde et de son registre de mot de résultat d'exécution de séquence propres et la commande d'activation du comparateur ne répond qu en une condition vraie d tun signal de surveillance de la synchronisation de ces deux processeurs.