Brevet FR2231051A1 — publié le 19741220

La présente invention concerne des dispositifs de mesure empirique des caractéristiques du fonctionnement d'ensembles de calcul numérique, et particulièrement d'ensembles de ce genre comportant un grand calculateur dont le temps est partagé entre un certain nombre d'utilisateurs situés, typiquement, dans une pluralité d'emplacements éloigné. la mesure empirique des caractéristiques de fonctionnement dt -r alculateur constitue un complément utile des techniques de modélisation et de simulation mathématiquesuti- lisées pour l'élaboration de nouveaux ensembles de calcul, et elle est particulièrement utile, comme aide, au personnel qui a la charge d'exploiter aussi efficacement que possible un ensemble de calcul en temps-partagé. Le but de la surveillance des caractéristiques du fonctionnement d'un calculateur est de fournir des statistiques représentatives de ces caractéristiques au cours des variations qu'elles subissent en réponse à la charge effective imposée aux ressources de l'ensemble de calcul. Dans les dispositifs à temps-partagé, cette charge dépend de l'intensité d'utilisation par les utilisateurs éloignés, et du-caractère des demandes faites par chaque utilisateur aux ressources du calculateur.Il est facile de voir que la charge d'un ensemble fonctionnant en temps-partagé est variable, et le plus souvent imprévisible, mais qu'une technique de surveillance du fonctionnement peut être utilisée pour accumuler, sur la charge et sur le fonctionnement, des statistiques qui constitueront un guide pour le réglage optimal ou "l'accord" des divers paramètres de fonctionnement d'un ensemble particulier, et qui fourniront aussi des données utiles pour l'élaboration dés ensembles futurs. Dans les ensembles fonctionnant en temps-partagé, on dispose typiquement de moyens qui permettent de régler des paramètres tels qu' un quantum ou des quanta de temps affectés à des tâches diverses pour assurer une exécution ininterrompue des instructions, le nombre des taches qui peuvent être exécutées simultanément, ainsi que d'autres paramètres d'attribution de priorités par planification des activités du calculateur Si on ne dispose pas d'une surveillance du fonctionnement, ces paramètres ne peuvent guère être mieux réglés que sur une base intuitive. La technique antérieure repose sur deux modes d'approche fondamentaux de la surveillance et de la mesure des caractéristiques du fonctionnement du calculateur : une instrumentation externe et une instrumentation interne. L'instrumentation externe consiste à mesurer les caractéristiques du fonctionnement du calculateur à l'aide de moyens purement matériels qui sont habituellement extérieurs au calculateur, c'est-à-dire qutun dispositif d'enregistrement des changements survenant dans l'état matériel du calculateur lui est attaché au moyen de l'établissement, sur les circuits du calculateur, de dérivations faites en utilisant, typiquement, des sondes de grande impédance.L'instrumentation interne consiste à surveiller le fonctionnement du calculateur à l'aide de moyens logiciels internes au calculateur ~ c'est-à-dire que l'on mesure la durée, et que l'on compte les différents événements et états au moyen d'instructions programmées qui sont introduites dans des parties appropriées de l'ensemble du logiciel qui coordonne et qui commande les différents composants de l'ensemble de calcul. Le procédé d'approche par instrumentation externe souffre de l'inconvénient de ne mesurer des évènements et des états dans le calculateur qu'à un niveau vraiment très détaillé, comme, par exemple, l'activité d1entrées/sort;tes, les signaux d'état de ltéqui- pement, les situations d'interruption, et les adresses dtinstruc- tions courantes. Bien que l'instrumentation externe puisse, théoriquement, être réalisée de manière à surveiller d'autres évènements et états qui seraient plus facilement surveillés par le logiciel, tels que le nombre et l'identité des utilisateurs du calculateur, des considérations pratiques limitent en général l'instrumentation externe à la surveillance de l'activité du matériel de calcul au niveau des détails.D'autre part, le procédé d'approche par instrumentation interne souffre des inconvénients opposés, du fait qu'il ne permet de mesurer que des évènements et des états en relation avec le logiciel, mais qu'il ne peut mesurer en détail les états du matériel, à moins que des instructions spéciales n'aient été prévues à cet effet dans le calculateur.Le procédé d'approche par instrumentation interne souffre d'un autre inconvénient qui consiste en ce que le procédé de mesure lui-même distord les résultats mesurés, puisque les instructions qui doivent être exécutées pour les enregistrements de durées et de comptages constituent elles-mêmes une charge pour deux importantes ressources du calculateur, la capacité de mémorisation et le temps d'utilisation de l'unité centrale de traitement (UC). Le procédé d'approche par instrumentation externe évite ce dernier problème, puisque les organes d'instrumentation n imposent d'aucune façon une charge aux ressources du calculateur. ;:#me si on utilise à la fois dans le même ensemble de calcul les procédés d'approche externe et interne, il est pratiquement impossible de mettre en corrélation les variations de la charge du logiciel, qui sont surveillées au mieux par la surveillance interne, avec les variations de fonctionnement du matériel, qui sont mesurées au mieux par la surveillance externe. La relation entre la charge du logiciel et le fonctionnement du matériel est une relation de cause à effet, et un dispositif de surveillance du fonctionnement pourrait constituer le moyen idéal d'examen de cette relation. Il en résulte qu'un dispositif idéal de surveillance du fonctionnement d'un calculateur devrait combiner les avantages du procédé d'approche externe, c 'est-à-dire, spécifiquement, la précision et la fidélité d'une surveillance détaillée du matériel, avec ceux du procédé d'approche interne, c'est-à-dire particulièrement la possibilité de surveiller d'une façon plus globale et représentative les états et les situations de l'ensemble de calcul. Un dispositif idéal de surveillance de fonctionnement devrait, de plus, minimiser la distorsion des résultats mesurés due à l'intro- duction du procédé de surveillance lui-meme et, ce qui est encore plus important, il devrait comporter des moyens pour mettre en corrélation les données fournies par la surveillance interne avec celles qui sont fournies par la surveillance externe. La présente invention satisfait à tous ces besoins. ta présente invention concerne une combinaison nouvelle des deux procédés d'approche de la surveillance du fonctionnement d'un calculateur par instrumentation à la fois externe et interne, combinant les avantages de chacun, éliminant ou minimisant leurs inconvénients et aboutissant à l'obtention d'un outil plus puissant pour surveiller le fonctionnement du calculateur. En termes géné aux, la présente invention comporte fondamentalement un sousensemble de surveillance externe destiné à être connecté à un calculateur à surveiller, et un sous-ensemble de surveillance interne faisant partie intégrante du calculateur à surveiller ou abjet, les sous-ensembles de surveillance interne et externe pouvant tous deux être commandés par le calculateur objet. Du fait que la surveillance externe peut être commandée avec le sous-ensemble de surveillance interne, les opérations exécutées par les surveillances interne et externe peuvent être synchronisées, et les données fournies par les deux modes de surveillance peuvent être, selon la présente invention, utilement comparées et corrélées. Dans le sous-ensemble de surveillance externe, les signaux sont transmis depuis le calculateur objet au moyen de sondes et de câbles, et un dispositif de surveillance détecte les variations de ces signaux et accumule des données les concernant. Les données accumulées peuvent être enregistrées, à intervalles d'échantillonnage présélectionnés, dans un fichier d'archives, sous la direction d'instructions de commande programmées, exécutées dans le calculateur objet, et être ensuite traitées par des procédés classiques de statistiques. Le sous-ensemble de surveillance interne comporte un prélèvement de données et leur distribution par les sous-séquences d'instructions insérées en des points appropriés du logiciel associé au calculateur objet. Le prélèvement de données est provoqué de façon asynchrone par certains évènements se produisant dans le calculateur objet, tels que la fin d'un quantum de temps attribué à l'exécution d'une séquence d'instructionsdans un environnement de temps partagé. Les données prélevées sont généralement sous la forme de comptages et de durées concernant l'apparition de ces évènements. Ces comptages et durées sont répartis dans un ensemble de tableaux de données, à partir desquels ils sont enregistrés dans un second fichier d'archives à intervalles d'échantillonnage présélectionnés, sous la direction d'autres instructions de commande programmées. Les instructions programmées qui commandent les opérations de surveillance externe et interne sont, fondamentalement, intégrées dans une unité unique, de façon à ce que les deux opérations puissent être synchronisées et à ce que les deux fichiers d'archives qui en résultent contiennent des enregistrements parallèles de données de surveillance interne et externe.Du fait que la surveillance interne convient mieux pour l'enregistrement d'évènements et de situations de caractère global, c'est-à-dire pour lesquels les états correspondants du matériel sont complexes et difficiles à surveiller, et que la surveillance externe convient mieux pour ltenregistrement, au niveau des détails, d'évènements et de situations concernant le matériel, on voit que des avantages divers et importants résultent de l'emploi combiné de la surveillance interne et de la surveilla#-;e externe. Premièrement, une surveillance interne peut être utilisée pour effectuer des vérifications de validité de la surveillance interne. Le prélèvement de données et les sous-séquences d'instructions de distribution doivent être insérés dans un ensemble logiciel complexe où des erreurs logiques peuvent facilement exister, ou se produire lorsque des changements sont apportés à ensemble logiciel. Si on peut disposer de fichiers d'archives parallèles et synchronisés, le sous-ensemble de surveillance externe peut permettre une vérification de validité utile de la surveillance interne. Deuxièmement, et cela est peut-être plus important, les données de fonctionnement détaillées collectées par la surveillance externe peuvent être reliées de façon significative aux conditions de charge du calculateur objet, telles qu'#elles sont mesurées par la surveillance interne. Il peut bien, par exemple, se produire que des échantillons du fichier d'archives de la surveillance externe soient sans valeur, statistiquement parlant, parce qu ils ont été prélevés à des instants où la charge du calculateur objet était excessive dans un sens ou dans l'autre. Il serait impossible d'éliminer ces échantillons à l'aide de procédés de surveillance externe seuls, mais, grâce à la synchronisation avec la surveillance interne, les données détaillées de la surveillance externe peuvent être efficacement filtrées en fonction des états de charge indiqués par la surveillance interne.De même, la présente invention fournit des moyens, dont on ne disposait pas jusqu a présent, pour comparer des échantillons de données de surveillance externe prélevés à des instants différents, en pleine connaissance des conditions de charge à ces instants, en évitant par conséquent le besoin de commander les conditions de charge du calculateur objet. Le procédé de surveillance selon la présente invention conserve les avantages du procédé d'approche par instrumentation externe ; c'est-à-dire que des statistiques détaillées sur le fonc tionnement du calculateur sont obtenues avec une distorsion minimale, ou "artefact" introduite par le procédé de surveillance lui même. Le nombre dtinterfacts est minimisé par l'interruption de la surveillance externe pendant que le calculateur est engagé dans la commande du sous-ensemble de surveillance externe et par une commande asynchrone des données de surveillance interne, sur une base de commande#par-évènements, plutôt que par un échantillonnage de données périodique.La présente invention conserve de même les avantages du procédé d'approche par instrumentation interne, du fait que les données sont aussi bien surveillées à un niveau global, chose qui est impraticable si on utilise une instrumentation externe seule. Le sous-ensemble de surveillance externe comporte aussi une interface variable avec le calculateur objet, pour sélectionner et combiner un ensemble de signaux approprié du calculateur objet, ainsi que pour recevoir des signaux d'identification indiquant une situation globale ou un état du calculateur objet, tel que l'identité de l'utilisateur courant du calculateur. Lorsque cette dernière disposition est utilisée avec surveillances interne et externe combinées, le dispositif de surveillance du fonctionnement est rendu encore plus puissant puisque, non seulement le sousensemble de surveillance externe est synchronisé avec le sousensemble interne, mais qu'il est, de plus, capable de détecter des changements survenant dans certaines situations ou certains états lorsqu'ils se produisent. Une surveillance du fonetionnement combinée, interne et externe, peut aussi servir à fournir des informations comptables représentatives sur le calculateur objet, c'est-à-dire des données statistiques, détaillées, concernant l'attribution et l'utilisant tion de diverses ressources de ensemble de calcul. Des informations comptables détaillées de ce genre, qu'il serait pratiquement impossible d'obtenir à l'aide d'une surveillance externe ou interne seule,peuvertaussi être utilisées pour ~accorder" divers paramètres de commande de l'ensemble logiciel du calculateur afin d'optimiser le fonctionnement de celui-ci pour les conditions de charge existantes. On peut très facilement se rendre compte que la présente invention fournit un outil nouveau et extrêmement utile pour sur ~veiller le fonctionnement d'ensembles de calcul complexes. Elle sa isfait au besoin, depuis longtemps ressenti, de disposer d'un dispositif de surveillance combinant les avantages des dispositifs de surveillance externe et de surveillance interne, et de pouvoir constituer des ficheras d'archives de données de surveillances interne et externe pouvant être rapidement mis en corrélation. La présente invention sera bien comprise à la lecture de la description suivante, faite en relation avec les dessins ci Joints, dans lesquels La figure 1 représente un schéma en forme de blocs de sous-ensembles de surveillance interne et de surveillance externe utilisés en combinaison et en interaction dans un ensemble de surveillance des caractéristiques du fonctionnement d'un calculateur, mettant en oeuvre la présente invention. La figure 2 représente un schéma sous forme de blocs, plus détaillé, de la fluence des données dans un sous-ensemble de surveillance externe ; et Les figures 3a et 3b constituent ensemble une carte de fluence des opérations exécutées, sous commande d'instructions programmées, par les sous-ensembles de surveillance interne et externe. On va maintenant décrire une réalisation préférée de la présente invention. 1. Dispositions générales de ensemble On se réfèrera maintenant à la figure 1, sur laquelle on a représenté un ensemble de surveillance des caractéristiques du fonctionnement d'un calculateur, nouveau et perfectionné, et incorporant les caractéristiques de la présente. invention.La présente invention comporte, fondamentalement, un sous-ensemble 10 de surveillance externe et un sous-ensemble 11 de surveillance interne, interconnectés tous deux avec un ensemble calculateur 12 classique, à surveiller, dénommé ensemble calculateur objet. Un ensemble 13 d'instructions programmées de commande et d'enregistrement, en relation mutuelle, commande les opérations de surveillance conformément aux commandes provenant d'un utilisateur 14 du calculateur, ou d'un opérateur, et engendre des fichiers d'archives 15 et 16 de données de surveillance, provenant respectivement des sous-ensembles de surveillance externe et interne 10 et 11. L'ensemble calculateur objet 12 est, typiquement, un grand ensemble fonctionnant en temps-partagé et comportant un certain nombre de terminaux éloignés (non représentés) ; le sousensemble de surveillance externe 10 est connecté à des signaux de surveillance indiquant les caractéristiques du fonctionnement de l'ensemble calculateur. L'ensemble calculateur objet 12 possède une unité centrale de traitement 17 (UC) classique qui, dans une réalisation ici préférée, remplit aussi les fonctions d'unité de traitement centrale "hote", c'est-à-dire qu'il agit pour commander le sous-ensemble de surveillance interne 10.L'ensemble calculateur objet comporte de plus des dispositifs périphériques 18 classiques, une mémoire lg à noyaux magnétiques classique, servant au stockage primaire des instructions programmées et des données, un circuit commun 21 de mémoire fournissant des chemins de données et de commandes entre la mémoire à noyaux 19 et l'unité de traitement centrale objet 17, et une interface 22 d'entrées/sorties directe. Le sous-ensemble de surveillance externe 10 comporte une interface de surveillance 23, pour sélectionner des signaux de lten- semble calculateur objet 12, conformément à des signaux de commande provenant de l'unité centrale objet, hôte, 17 en passant par 1' interface directe d'entrées/sorties 22, ainsi que le représente le chemin de commande 24, et pour aiguiller de façon appropriée les signaux de surveillance en vue d'un traitement ultérieur par le sous-ensemble de surveillance externe.Le sous-ensemble de surveillance externe 10 comporte, fondamentalement, un dispositif de surveillance associatif 25, c'est-à-dire dépendant pour son fonctionnement d'une mémoire associative, ou adressable par son contenu, capable de comparer des structures de données arrivantes avec des structures de données préalablement stockées ou précédemment recue#illies. Des données sur les variations des signaux arrivants sont accumulées dans une mémoire de surveillance 26 dont une partie est aussi utilisée pour stocker des instructions programmées pour le dispositif de surveillance associatif 25.Le dispositif de surveillance associatif 25 opère sous la commande de signaux provenant de l'unité centrale hôte/objet 17, ainsi que l'indique le chemin de commande 27, et la mémoire de surveillance 26 est accessible de l'unité centrale hôte/objet 17 pour stocker ou récupérer des informations, ainsi que l'indiquent les chemins de données 28 et 29. Les signaux de surveillance de l'unité centrale hôte/ objet 17 sont transmis à l'interface de surveillance 23 par des câbles normalisés 31 qui sont connectés au circuit commun de mémoire 21 et par des sondes de grande impédance 32 et 33, respectivement connectées à l'unité centrale h8te/ob#et 17 et aux périphériques objet 18, et qui sont reliées à l'interface de surveillance par des câbles coaxiaux 34 et 35. Beaucoup de composants mentionnés au cours de la description précédente à propos de la surveillance externe trouvent des correspondants plus ou moins analogues dans la surveillance interne du même ensemble calculateur 12. A l'unité centrale hôte/objet 17 correspond un ensemble d'instructions en relation mutuelle qui seront dénommées ici logiciel 36 de l'ensemble calculateur objet.Le logiciel 36 commande toutes les opérations exécutées dans l'unité centrale 17, dans la mémoire à noyaux 19, dans les périphériques objet 18, et dans d'autres dispositifs en relation avec l'unité centrale hôte/objet. Dans un ensemble fonctionnant en temps-partagé, le logiciel 36 est très complexe, et il a a exécuter, d'autre part, des tâches telles que les allocations de mémoire à noyaux, des temps d'unité centrale et d'autres ressources de ltensemble, à répartir entre divers utilisateurs de cet ensemble. Au sous-ensemble de surveillance externe 10 correspond par analogie le sous-ensemble de surveillance interne 11 qui inclus les sous-instructions 37 de prélèvement de données de surveillance interne, les sous-séquences d'instructions de distribution de données 38 et les tableaux de données accumulées 39. Les instructions de prélèvement de données de fonctionnement internes 37 sont, en effet, incorporées au logiciel 36 du calculateur objet et on peut y voir quelque analogie avec les sondes 32 et 33 liées au circuit de l'unité centrale h8te/objet 17 et à ses périphériques objet 18. Les chemins de données 41 représentent schématiquement le prélèvement de données du logiciel 36 par les instructions de prélèvement de données 37. Les instructions 37 de prélèvement de données sont introduites lors de l'apparition de certains évènements et situations telles que, dans un ensemble à temps-partagé, la fin d'un quantum de temps attribué aux instructions d'un utilisateur, ou le début ou la fin d'une transmission de données vers un terminal éloigné, ou en provenance de celui-ci.Les instructions de distribution 38 distribuent seulement les données prélevées dans les tableaux 39, de la façon souhaitable, ainsi que l'indique le chemin de données 42. Les séquences d'instructions de commande et d'enregistrement 13 comprennent les instructions de commande de surveillance interne 43 et les instructions de commande de surveillance externe 44. Les instructions de commande de surveillance interne 43 récupèrent périodiquement un ensemble de données accumulées dans les tableaux 39, ainsi que l'indique le chemin de données 45J et lten- registrent comme enregistrement suivant dans le fichier d'archives 15 de surveillance interne, tandis que les instructions de commande 44 de surveillance externe récupèrent périodiquement un ensemble de données accumulées dans la mémoire de surveillance 26, ainsi que l'indique le chemin de données 46, et l'enregistrent comme enregistrement suivant dans le fichier d'archives 16 de surveillance externe. Les opérations de surveillance sont exécutées sous commande de l'utilisateur, ou de ltopérateur, 14 du calculateur, ainsi que l'indique le chemin de commande 47. L'utilisateur 14 établit typiquement une communication avec les instructions de commande 43 de surveillance interne par l'intermédiaire d'un terminal éloigné ou d'un dispositif d'entrées local (non représentés), l'utilisateur spécifiant les paramètres désirés pour une tâche de surveillance, y compris un nombre total d'enregistrements à enregistrer dans les fichiers d'archives 15 et 16, et un intervalle ou temps d'échantillonnage qui doit s'écouler entre deux enregistrements consécutifs. Ainsi que cela a été mentionné ci-dessus, l'unité centrale hôtejobjet 17 fonctionne comme "hôte" en transmettant des signaux de commande à l'interface de surveillance et au dispositif de surveillance associatif 25, respectivement, par les chemins de commande 24 et 27, et en stockant ou récupérant des données dans la mémoire de surveillance 26, respectivement, par les chemins de commande 28 et 29. Ces opérations du sous-ensemble de commande externe 10 sont aussi commandées par les instructions de commande de surveillance externe 44, ainsi que l'indique le chemin de commande 48. On notera que les données récupérées dans la mémoire de surveillance 26J en passant par le chemin de données 46, et par les instructions de commande de surveillance externe 44 sont, en fait, sransmises, par le chemin de données 2Q, de la mémoire de surveillance à l'unité centrale hôte/objet 17. Toutefois, dans un but de clarté, le chemin de données 46 est représenté comme aboutissant directement aux instructions de commande externe 44, de même que l'est le chemin de données 45 allant des tableaux de données 39 aux instructions de commande de surveillance interne 43. Un des fondements de la présente invention repose sur le fait que les instructions de commande de surveillance externe 44 sont intégrées dans les instructions de commande de surveillance interne 43, de façon à ce que l'utilisateur 14 puisse déclencher simultanément les opérations de surveillance interne et de surveillance externe, ainsi que les enregistrements correspondants dans le fichier d'archives de surveillance externe, de telle sorte que le fichier d'archives de surveillance externe sera engendré de façon pratiquement simultanée. 9. Surveillance externe On peut trouver une description complète et détaillée du sous-ensemble 10 de surveillance externe dans la demande de brevet des Etats-Unis d'Amérique nO 312.338, déposée le 22 mai 1973, sous le titre "Com.puter performance monitoring system#', au nom de la demanderesse. On a inséré ci-dessous > dans la présente description, un aperçu des principes de fonctionnement du sous-ensemble de surveillance externe 10 afin de mieux définir la présente invention. En se référant de nouveau à la figure 1, on se rendra compte que, puisque le circuit commun de mémoire 21 fournit des chemins pour les signaux de données et de commandes entre l'unité centrale objet 17 et la mémoire à noyaux 19, il constitue une source de signaux convenable pour le sous-ensemble 10 de surveillance externe. Par exemple, adresse de mémoire d'un mot récupéré dans la mémoire à noyaux 19 pourrait être dérivée sur le circuit immun de mémoire 21, comme pourrait aussi 1'être le contenu du mot de mémoire récupéré, avec tous signaux de synchronisation et de commande nécessaires.Dans la présente invention, les signaux du circuit commun de mémoire 21 sont dirigés vers le sous-ensemble 10 de surveillance externe par le chemin de données 31 à l'aide de techniques classiques de transmission de signaux par cabales. Dans un mo de de réalisation ici préféré, l'ensemble calculateur est du type dit ?###g#"Sigma 7",fabriqué par Xerox Corporation, El Segundo, California, et les techniques de câbles utilisées pour la transmission des signaux du circuit commun de mémoire 21 vers le sous-ensemble 10 de surveillance externe sont décrites en détail dans la publication intitulée : "Sigma Computer Systems Interface Design IIanual" Publication n0 900.973 > publiée par Xerox Corporation, El Segundo, California.On notera toutefois qutil serait possible d'utiliser diverses techniques pour adapter le sous-ensemble 10 de surveillance externe à d'autres ensembles calculateurs objets. Bien d'autres signaux concernant l'activité de l'unité centrale objet 17 ainsi que celle des entrées/sorties des périphériques objet 18 ne peuvent évidemment pas être trouvés sur le circuit commun de mémoire 21 (bus mémoire). De tels signaux sont dérivés dans un but de surveillance par des sondes de signaux 32 et 33 classiques, à grande impédance, représentées très schématiquement sur la figure 1, qui sont connectées à des broches de câ- blage appropriées de l'unité centrale objet 17 ou de l'équipement de commande associé aux périphériques objet 18.Les sondes 32 et 33 sont essentiellement des éléments de circuits passifs d'impédance suffisamment grande pour ne constituer qu'une charge électrique négligeable, et sont connectées à des câbles coaxiaux qui transmettent les signaux, par les chemins de données 34 et 36J au sous-ensemble 10 de surveillance externe. Le choix des signaux de connexion au sous-ensemble 10 de surveillance externe est, bien entendu, une décision à prendre préalablement, qui est fortement conditionnée par l'architecture générale de l'ensemble calculateur objet et la nature des vérifications de surveillance particulières à faire. Dans un mode de réalisation ici préféré, à titre d'exemple, le sous-ensemble 10 de surveillance externe a la capacité de recevoir 84 signaux par câbles normalisés et 48 signaux en provenance des sondes. Les signaux effectivement utilisés par le sous-ensemble 10 de surveillance externe sont choisis parmi un nombre relativement grand de signaux de ensemble calculateur objet 12, ce qui évite l'inconvénient d'avoir à recâbler des sondes dans l'ensemble calculateur objet chaque fois que des signaux différents deviennent nécessaires. Les signaux de l'ensemble calculateur objet 12 sont reçus par l'interface de surveillance 23 par les chemins de données 31, 34 et 35, et sont traités dans 1'interface 23 par une logique de conditionnement et de commutation de signaux. La logique de conditionnement de signaux comporte des éléments logiques normalisés, tels que des portes ET, OU, NAND (NON-ET) et NOR (NON-OU), des compteurs, des inverseurs, des cadreurs, et des différentiateurs, interconnectés de la manière nécessaire pour mettre en condition les signaux d'arrivée bruts et les présenter sous une forme convenable pour un traitement ultérieur. Le conditionnement peut aussi inclure la combinaison de plusieurs signaux d'arrivée pour les présenter sous forme de signal unique.La logique de commutation de signaux remplit la fonction de sélection, parmi les signaux d'arrivée, des signaux qui sont nécessaires pour l'exécution d'une vérification particulière par le sous-ensemble 10 de surveillance externe. La nature de l'interface de surveillance 23 peut être modifiée rapidement par des signaux de commande reçus sur le chemin de signaux 24, de façon à faire varier le choix et le conditionnement des signaux à surveiller. Ces signaux de commande sont fournis par l'unité centrale hôte/objet 17, agissant en qualité d'"hôte" par rapport au sous-ensemble 10 de surveillance externe. On constatera que, lorsque l'ensemble calculateur objet 12 fonctionne en qualité d'hôte, il exécute des fonctions qui ne sont nécessaires qu'au procédé de surveillance, de sorte que cela constitue pour l'ensemble calculateur objet 12 une charge qui peut distordre dans une certaine mesure les données surveillées.Cette distorsion, ou "artefact", est connue dans ce genre de technique, et, selon la présente invention, elle est minimisée dans lé sous-ensemble 10 de surveillance externe en faisant en sorte que la surveillance soit interrompue pendant les périodes durant lesquelles l'ensemble calculateur objet 12 remplit la fonction d'hôte. Les signaux de commande de l'interface de surveillance 23 sont engendrés par les instructions de commande 44 de surveillance externe exécutées par l'unité centrale hôte/objet 17. Ces instructions de commande 44 provoquent la transmission, par l'unité centrale 17, de signaux de commande à l'interface de surveillance 23, par l'intermédiaire de l'interface d'entrées/sorties directes 22 du calculateur, en passant par le chemin de commande 24. L'interface d'entrées/sorties directes 22 est un équipement normal de nom breux calculateurs. Il permet aux instructions d'écrire directement, ou de lire directement dans un dispositif spécifié par un code d'adresse pré-établi, sans avoir à utiliser des canaux d'entrées/ sorties et un équipement de multiplexage, comme on le fait normalement pour accéder à des dispositifs périphériques.L'interface 22 du calculateur objet surveillé, préféré pour la présente réalisation, est également décrit en détails dans la publication "Sigma Computer Systems Interface Design Manual", n0 900.973, publiée par Xerox Corporation, El Segundo, California. Il faut noter que la présente invention n'est pas limitée à l'emploi des moyens d'entrées/sorties directes du calculateur, contrairement à un canal d'entrées/sorties classique du genre normalement utilisé pour accéder aux dispositifs périphériques, puisque l'architecture de lten- semble calculateur objet 12 peut conduire à un choix différent. L'interface d'entrées/sorties directe 22 est aussi utilisée par l'unité centrale hôte/objet 17 pour transmettre à l'interface de surveillance 23, par le chemin de signaux 49, des données courantes d'identification du logiciel. Le logiciel 36 de 1' ensemble calculateur objet (figure 1) est modifié afin de pouvoir exécuter une opération d'uécriture directe n dans le sous-ensemble 10 de surveillance externe, par le chemin 49, chaque fois qu'un certain état ou une certaine situation du logiciel change.Ces données d'identification peuvent identifier soit un utilisateur associé à une exécution d'instructions en cours dans l'ensemble calculateur objet 12, soit une fonction pour laquelle un dispositif d'entrées/sorties particulier doit être utilisé, soit tout autre état du calculateur objet en relation avec le logiciel. Du fait qu'il peut disposer d'un état de logiciel, le sous-ensemble 10 de surveillance externe peut être programmé de façon à concentrer ses activités sur l'établissement d'un état particulier du logiciel, par exemple sur les instructions programmées d'un certain utilisateur éloigné du calculateur. En se référant maintenant à la figure 2, qui représente la fluence des données dans le sous-ensemble 10 de surveillance externe, on verra que les éléments principaux de ce sous-ensemble a#t 11 interface de surveillance 23 ; un registre de surveillance Sù ~ un registre supplémentaire 61, appelé ici registre "A" ; une matrice de commutation 62 ; une mémoire associative 63 possédant an registre d'entrée 6t, un registre de masque 65, et un registre de sortie 66 ; une mémoire tampon 67, possédant un registre d'entrée 6 & et un registre de sortie 69 ; un additionneur 70 ; un registre de rythmeur 72 ; un registre tampon de rythmeur 77 ; une logique de commande d'entrées/sorties 73 ; un tableau de commande 74 ; une section de mémorisation et de commande d'instructions de processeur associatif 75, appelée ci-dessous processeur associatif et une section de mémorisation et de commande d'instructions de processeur tampon 76, appelée ci-dessous processeur tampon Des signaux de surveillance sélectionnés sont échantillonnés, dans l'interface de surveillance 23, typiquement à une vivesse prédéterminée, une fois pour chacune des instructions exécutées par l'unité centrale surveillée 17, et transmis au registre de surveillance 60. La suite des opérations est déterminée par le processeur associatif 75 et par le processeur tampon 76 qui constituent chacun essentiellement un calculateur indépendant fonction nant sous la commande de ses propres instructions programmées. ire processeur associatif 75 commande des mouvements de données entre le registre de surveillance 60 et le registre d'entrée 64 de la mémoire associative, et il peut être programmé de manière à comparer les signaux de surveillance avec d'autres combinaisons de signaux stockés dans la mémoire associative 63, et à déclencher le fonctionnement du processeur tampon 75 à la suite de certaines situations présélectionnées, telles que la détection dans la mémoire associative d'une structure de signaux d'accord. Le processeur tampon 76 est typiquement programmé de manière à accumuler des données dans la mémoire tampon 67 sous forme de comptages et de durées concernant les variations des signaux d'arrivée. Le rythmeur 71 et l'additionneur 70 permettent de faire exécuter sur les données accumulées, par le processeur tampon 76, diverses manipulations. la structure du sous-ensemble 10 de surveillance externe est en relation étroite avec la mémoire associative 63. La mémoire associative 63 a, dans le mode de réalisation préféré ici, une capacité de 64 mots de 32 bits chacun, et elle est adressable par son contenu, plutôt qu'adressable par l'emplacement physique des mots ; c'est-à-dire qu'un mot d'entrée de 32 bits peut être simultanément comparé à tout mot contenu dans la mémoire assoeiative, et qu'un mot correspondant, ou plusieurs, peuvent être localises. La mémoi re tampon 67 qui, dans un mode de réalisation préféré a une capacité de 64 mots de 64 bits chacun, est utilisée pour accumuler des données sous forme de comptages et de durées liés aux mots de mémoire associative correspondants.Par exemple, la mémoire associative 63 pourrait être préconditionnée de façon à contenir une liste de codes d'opérations d'instructions correspondant à l'ensemble des instructions qui peuvent avoir à être exécutées par l'unité centrale objet 17 (figure 1). Chaque instruction exécutée par le calculateur pourrait alors être comparée à cet ensemble et il serait possible d'en conserver le compte dans la mémoire tampon 67 afin de surveiller la fréquence d'utilisation de chaque code d'opération d'instructions. Les opérations mettant en Jeu la mémoire associative 63 sont commandées par le processeur associatif 75 sous la direction d'instructions programmées, stockées, et celles qui mettent en jeu la mémoire tampon 67 sont commandées par le processeur tampon 76 et par ses instructions programmées, séparément stockées. Les instructions programmées pour le processeur associatif 75 et pour le processeur tampon 76 sont chargées par l'unité centrale hôte/objet 17 (figure 1), par l'intermédiaire de l'interface d'entrées/sorties directe 22 (figure 1), et en suivant le chemin de données 28. La mémoire associative 63 et la mémoire tampon 67 peuvent de même être préchargées de données. Les mémoires associative et tampon 63 et 67 peuvent être lues ou "vidées" par l'unité centrale 17 (figure 1) à la fin d'un intervalle de temps d'échantillonnage spécifié par l'utilisateur 14 (figure 1) de lten- semble de surveillance. Diverses autres fonctions de commande, telles que le départ ou l'arrêt du sous-ensemble 10 de surveillance externe (figure 1) sont aussi exécutées par l'intermédiaire de l' interface d'entrées/sorties directe 22 (figure 1). En se référant toujours à la figure 2, on verra qu'il y a dans le sous-ensemble de surveillance externe deux chemins de données fondamentaux. Le premier chemin fondamental est celui qui est suivi-par les signaux sélectionnés et conditionnés, de l'interface de surveillance 23 jusqu'au registre de surveillance 60, par le chemin de données 77, puis jusqu'au registre "A" 61, par le chemin de données 78, puis jusqu'à la matrice de commutation 62, par le chemin de données 79, puis jusqu'au registre d'entrée 64 et au registre de masque 65, par le chemin de données 81, et enfin jus qu'à la mémoire associative 6 i, par le chemin de données 82.Ce chemin de données fondamental, ainsi que les opérations correspondantes, faites dans la mémoire associative 63, est commandé par le processeur associatif 75 sous la direction des instructions programmées qui y sont stockées, et implique des transferts en parallèle des données, chaque ldgne de fluence de données représentant, sur la figure 2, un octet de 8 bits. Par exemple, la partie de ce chemin de données fondamental qui va du registre de surveillance 60 au registre "A" 61, est représentée par les six lignes 78 de fluence de données, qui permettent de transférer en parallèle 48 bits de données. L'autre chemin fondamental de données est constitué par un circuit de chemins pour un seul caractère servant à transférer des données de champs sélectionnés, dans le registre de sortie 66 de la mémoire associative, dans le registre de sortie de la mémoire tampon Gg, dans le registre tampon de rythmeur 72 et dans un registre de 1,constante'1 83 à 8 bits, intégré au registre "A" 61, et utilisé pour conserver une constante programmée, par l1intermédiai- re de l'additionneur 70, dans des champs sélectionnés du registre d'entrée de mémoire 65 et du registre d'entrée 68 de la mémoire tampon.Ces transferts de données, ainsi que les opérations relatives à la mémoire tampon 67, sont tous commandés par le processeur tampon 75, sous la direction des instructions programmées qui y sont stockées. L'interface de surveillance 23 offre six chemins de données 77 au registre de surveillance 60, qui est un registre en état solide de réalisation classique, à 48 bits, qui est utilisé pour conserver des signaux de surveillance provenant de l'ensemble calculateur objet 12 (figure 1), après que ces signauxaient été sélectionnés et conditionnés dans l'interface de surveillance 23. Le contenu du registre de surveillance 60 peut être envoyé dans le registre "A" 61 par les chemins de données 78, sous la commande du processeur associatif 75.Le registre "A1, 61 a une capacité de 56 bits, 48 bits étant occupés par le registre de surveillance 60, et 8 bits étant utilisés, comme le registre de constante 83, pour conserver une constante codée faisant partie des instructions programmées du processeur associatif 75, et étant aiguillés vers le registre de constante 83, par le chemin de données 84, sous la commande du processeur associatif. Le processeur associatif 75 achemine, sous la direction des instructions programmées qui y sont stockées, des données du registre "A" 61 vers le registre d'entrée 64 de la mémoire associative ; ce registre est à 32 bits et il est utilisé pour conserver des données d'écriture de mots, ou de comparaison de mots, dans la mémoire associative. Il est ainsi possible d'acheminer jusqu a quatre des sept octets du registre "A" 61 vers les quatre octets du registre d'entrée 64 de la mémoire associative en actionnant sélectivement la matrice de commutation 62, représentée schématiquement seulement sur la figure 2, conformément à des instructions codées faisant partie des instructions programmées dans le processeur associatif 75.De plus, le registre de masque 65, qui a lui aussi une capacité de 32 bits, peut être utilisé, toujours sous la commande des instructions programmées stockées dans le processeur associatif, pour ignorer des champs sélectionnés dans les mots de la mémoire associative 63 pendant les opérations de lecture et d'écriture faites dans celle-ci. Le registre de masque 65 permet par conséquent de faire des opérations de comparaison portant seulement sur des champs spécifiés des mots de la mémoire associative, et permet aussi d'écrire dans un champ spécifié, au lieu d'un mot entier. Il peut se faire, par exemple, que la mémoire associative 63 soit utilisée en 128 segments d'un demi-mot, le registre de masque 65 faisant faire des opérations de comparaison et d'écriture sur les segments et non sur les mots.Le registre de sortie 66 de la mémoire associative, qui a lui aussi une capacité de 32 bits, peut également permettre de lire dans cette mémoire le contenu d'un mot qui y a été sélectionné, toujours sous la commande du processeur associatif 75 et des instructions programmées qui y sont stockées. La mémoire associative 63 est composée d'éléments classiques de mémoire adressable par le contenu, dont chacun a une structure interne de quatre mots d'une longueur de 2 bits. Les éléments de mémoire utilisés dans la réalisation qui est ici préférée sont décrits en détail dans la publication du fabricant "Applications Memo,;s/g8220 et S/N 8222, Content Adressable Memory Element", Memo n0 103, Signetics Corporation, Sunnyvale, California. La mémoire associative 63 comporte 256 éléments de ce genre, connectés pour former o mots de 32 bits chacun. Il y atrois opérations fondamentales qui peuvent être exécutées dans la mémoire associative 63 : comparaison, écriture et lecture. Dans une opération "comparer ", les contenus du registre d'entrée 64 de la mémoire associative sont comparés à chaque mot de la mémoire associative 63. Chacun des 64 mots possède une ligne de signal (non représentée), qui indique une concordance entre le mot et le registre d' entrée 64lors des opérations de comparaison, et qui est aussI utilisée pour sélectionner un mot pour des opéra- tions d'écriture ou le lecture.Donc, pour une opération de compa raison, des signaux Indiquant une recherche de concordance de mots sont transmis par un chemin 5 ç un groupe d'éléments logiques contenant des bits de concordance et une logique de sélection de mots 86. Les bits de concordance, ou indicateurs de concordance, sont établis conformément au résultat de l'opération de comparaison, tandis que la logique de sélection de mot sélectionne un mot à lire dans la mémoire associatiale 63 > ou bien sélectionne plusieurs mots à inscrire dans la mémoire associative, la sélection étant indiquée schématiquement par le chemin de signal 87 sur la figure 2.Dans une opération d'"écriture", les contenus du registre d'en trée 64 e la mémoire associative sont stockés dans chaque mot sélectionné dans la mémoire associative 63;, et dans une opération de l'lecture", le premier des mots sélectionnés dans la mémoire est lu et placé dans le registre de sortie 66 de la mémoire associative. A l'aide de ces trois operations fondamentales, c'est-à-dire, comparaison, écriture et lecture, il est possible de rechercher dans la mémoire associative 63 des champs en concordance avec des combinaisons de signaux de surveillance, et les mots en concordance peuvent être lus, modifiés ou recouverts de nouvelles données. Le registre de masque 65 peut être utilisé pour modifier L'effet des opérations de comparaison et d'instruction. Dans une opération de comparaison avec masque, les champs masqués par le re gistre de masque 65 sont ignores ; ceest-a-dire que les contenus du registre de masque sont, avant chaque opération de comparaison, ajoutés par opération ET logique aux contenus du registre d'entrée o; de la mémoire associative, et aux contenus en mots de la mémoire associative. Dans une opération d'écriture masquée, seuls le ou les mots de mémoire sélectionnés qui correspondent å des bits "1" dans le registre de masque 65 sont affectés par l'opération, ce qui permet d'écrire dans des champs sélectionnés dans les mots de la mémoire associative. Lorsqu'un seul mot est trouvé en concordance comme résultat d'une opération de comparaison, un indicateur de concordance correspondant est établi et utilisé, comme on l'a représenté schématiquement en 88, pour actionner la logique d'adressage (non représentée) de la mémoire tampon 67. Ainsi, si le nième mot de la mémoire associative 63 indique une concordance, le noème mot est sélectionné dans la mémoire tampon 67 pour des opérations subséquentes faites par le processeur tampon 76.Si une opération de comparais on aboutit à des indications de concordance multiples dans la mémoire associative 63, une logique de rupture de conc ordance, faisant partie intégrante de la logique 86 de bits de concordance et de sélection de mots est utilisée pour sélectionner parmi les 54 indicateurs de concordance, dont quelques uns ou tous peuvent être présents, l'indicateur établi ayant la plus haute priorité, cette priorité étant déterminée par l'emplacement de mot correspondant dans la mémoire associative 63. On devra noter qu'après qu'une opération de comparaison ait été effectuée dans la mémoire associative 63 et qu'un mot en concordance ait été sélectionné, le processeur associatif 75 peut, sous commande des instructions programmées qui y ont été stockées, déclencher le fonctionnement du processeur tampon 76 pour modifier le contenu d'un mot correspondant de la mémoire tampon 67.Le processeur tampon 76 peut être programmé pour lire le mot sélectionné dans la mémoire tampon 67 et le placer dans le registre de sortie 69 de celle-ci, pour déplacer des données de champs de source, sélectionnés dans le registre de sortie 69 de la mémoire tampon, dans le registre de sortie 66 de la mémoire associative, dans le registre tampon de rythmeur 72, dans le registre de constante 83, et dans l'adresse du mot de mémoire sélectionné, et les mettre dans des champs de destination sélectionnés dans le registre d'entrée 68 de la mémoire tampon, ainsi que pour inscrire le contenu du registre d'entrée 68 de la mémoire tampon dans le mot sélectionné dans la mémoire tampon 67. Chaque- transfert de données exécuté par le processeur tampon 76 steffectue par un chemin de données pour octet unique (8 bits), de sorte que les déplacements de données comportant plus d'un octet, tels que ceux provenant du registre de sortie 69 du processeur tampon, sont faits en mode sériel par octets, et chaque courant d'octets de données est transféré d'abord dans l'additionneur 70 commandé par le processeur tampon 76.Les données du registre de sortie 66 de la mémoire associative peuvent être transférées dans l'additionneur 7C par les chemins de données 91 et 92 de la figure 2, les données du registre de sortie 69 de la mémoire tampon peuvent l'être par le chemin de données 92, les données d'adresse de la logique de sélection de mots 86 par les chemins de données 93 et 92, et les données du registre de constante 83 par les chemins de données 94 et 95. De plus, le registre tampon d'horloge 72, qui peut être programmé pour recevoir les contenus courants du registre d'horloge 71 de 32 bits, est disponible comme autre source de déplacements de données par les chemins de données 97 et 95 vers 1' additionneur 70.L'additionneur 70 peut être commandé par le processeur tampon 76 pour exécuter des fonctions telles que l'incrémentation des contenus d'un courant de données arrivant, l'addition de données du tampon d'horloge 72 ou de registre de constante 83 à des données du registre de sortie 69 de la mémoire tampon ou du registre de sortie 66 de la mémoire associative, ou la sélection du plus grand ou du plus petit des deux champs de données arrivants. Un chemin de sortie 98 de l'additionneur 70 peut être orienté vers le registre d'entrée 68 de la mémoire tampon, ou vers le registre d' entrée 64 de la mémoire associative, toujours sous la commande du processeur tampon 76 et des instructions qui y sont stockées. Beaucoup des déplacements de données exécutés par le processeur tampon 76 sont d'une espèce relativement simple, telle que le déplacement des contenus du registre de sortie 69 de la mémoire tampon dans le registre d'entrée 68 de la mémoire tampon et l'in- crémentation par un, comme dans une opération normale de comptage. La possibilité pour d'autres registres d'être utilisés comme sources ou comme destinations, doit cependant, comme on l'a expliqué cidessus, rendre possible la programmation du processeur tampon 76 pour rendre aussi possible d'exécuter une grande variété d'autres manipulations de données. Fondamentalement, le processeur associatif 63 commande, sous la direction des instructions qui y sont stockées, le flux de données du registre de surveillance 60 jusqu'au registre A 61, d'une constante programmée jusqu'au registre de constante 83 et du registre "A" 61 jusqu'au registre d'entrée 64 de la mémoire associative, de même qu'il commande les opérations d'écriture, de comparaison, de lecture et de masquage dans la mémoire associative 63. Le processeur tampon 76 commande le flux de données vers ou en provenance de la mémoire tampon 67, et il joints par les chemins de données pour octet unique, les registres de sortie 66et 69 aux registres d'entrée 64 et 68, par l'intermédiaire de l'additionneur 70. Ainsi qu'on l'a exposé précédemment à propos de la figure 1, l'interface de surveillance 23 reçoit des données de l'ensemble calculateur objet 12 par les câbles normalisés 31 et les sondes 32 et 33 ; il reçoit de même les signaux d'identification du logiciel par le chemin de signaux 49, par l'intermédiaire de l'interface d' entrées/sorties directe 22 de l'ensemble calculateur objet. Une partie importante, bien que classique, du sous-ensemble de surveillance externe 10 est la partie logique de commande d'entrées/sorties 73 (figure 2), dont la fonction-est de traiter les signaux de commande reçus de l'interface d'entrées/sorties directe 22 (figure 1) et de recevoir en conséquence des données provenant de cette interface ou transmises vers elle. L'unité centrale hôte/objet 17 (figure 1) peut communiquer avec le sous-ensemble 10 de surveillance externe dans quatre buts distincts : pour commander le processeur associatif 75, pour examiner l'état courant du processeur associatif, pour transmettre des signaux de commande à l'interface de surveillance 23 ou en recevoir de sa part, et pour transmettre des données ou des instructions programmées aux quatre mémoires de surveillance ou en recevoir de leur part. Ainsi qu'on le voit sur la figure 2, la logique de commande entrées/sorties 73 transmet, en exécutant la fonction mentionnée en dernier, des instructions programmées au processeur associatif 75 et au processeur tampon 76, par l'intermédiaire d'un tableau de commande 99 et en suivant le chemin de données 28.D'autres chemins de données analogues, qui ont été omis sur la figure 2 pour plus de clarté, transmettent des données à la mémoire associative 63 et à la mémoire tampon 67, également par l'intermédiaire du tableau de commande 99. Le tableau de commande 99 porte un certain nombre de commutateurs et un panneau de signaux lumineux (non représenté) et il peut être mis en mode "automatique" dans lequel le tableau lui mème est inactif, toutes les opérations du sous-ensemble 10 de surveillance externe (figure 1) étant faites sous commande de l'unité centrale hôte/objet 17 (figure i), par l'intermédiaire de la logique de commande d'entrées/sorties 73 (figure 2). Lorsqu'il n'est pas mis en mode "automatique", le tableau 99 (figure 2) est en mode manuel et toutes les opérations de surveillance externe ne peuvent être commandées qu a partir du tableau de commande luimême. En se référant de nouveau à la figure 1, on pourra se rappeler que les données stockées dans la mémoire de surveillance 26 peuvent être transférées dans le fichier d'archives 16 de surveillance externe, par le chemin de données 46, sous la commande des instructions programmées 44 de commande de surveillance externe. Les données sont typiquement accumulées dans la mémoire tampon 67 (figure 2) pendant un intervalle de temps spécifié, une minute par exemple ; le contenu entier de la mémoire tampon est ensuite trans férié dans le fichier d'archives 16 de surveillance externe. La mémoire tampon peut, au choix de l'utilisateur, être remise en action ou non, et 1 accumulation de données se poursuit pendant un autre intervalle d'échantillonnage. ne fichier d'archives 16 résultant peut être traité ultérieurement par des procédés classiques pour produire des résumés statistiques convenables des variations des signaux pendant la période de vérification de surveillance. En résumé, le sous-système 10 de surveillance externe (figure 1) comprend le processeur associatif 75 (figure 2) et le processeur tampon 76 (figure 2), qui sont des processeurs modifia bles et programmables, capables de détecter les variations d'un ensemble sélectionné de signaux de l'ensemble calculateur objet 12 (figure 1), et d'accumluler dans la mémoire tampon 67 (figure 2) des données relatives à ces variations.Les instructions de commande programmées 44 (figure lj de surveillance externe enregistrent pé riodiquement les données accumulées dans le fichier d'archives 16 (figure I: de surveillance externe et commandent de façon générale les opérations de commande du sous-ensemble 10 (figure 1) de surveillance externe. 3. Surveillance interne Dans un mode de réalisation de la présence invention ici préféré, l'ensemble calculateur objet 12 (figure 1) est du type "Sigma 7", modèle fabriqué par la société dite Xerox Data Systems, Inc., El Segundo, California, et le logiciel 36 (figure 1) de l'ensemble calculateur objet est connu sous la dénomination de "Univer- sal Time-Sharing System (très'. Le sous-ensemble 11 de surveillance interne, comprenant les instructions programmées 37 de prélèvement de données, les instructions programmées 38 de distribution de données, les tableaux de données accumulées 39 et les instructions programmées 43 de commande de surveillance interne, est, dans la réalisation ici préférée, un ensemble logiciel standardisé connu sous la dénomination de Universal Time-Sharing System Performance Monitor (UTSPM)", Les logiciels UTS et USP;I sont vendus commercialement par la société dite Xerox Corporation, El Segundo, California, et sont décrits dans les publications Xerox Universal Time Sharing System, Sigma 6/7/9 Computers, System ManagementReference Manual", Publication n0 901674C, et "UTS Time-Sharing Reference Manual", Publication n0 900907D, publiée par la même compagnie. Les instructions programmées 37 de prélèvement de données de surveillance interne sont introduites dans le logiciel 36 de l'ensemble calculateur objet en différents points. Par opposition avec le sous-ensemble 10 de surveillance externe > - qui exerce une surveillance pratiquement continue sur les signaux de surveillance externe, le sous-système 11 de surveillance interne n1 est mis en action que lors de l'apparition de certains évènements survenant dans l'ensemble calculateur objet 12. Des exemples de tels évènements sont l'initialisation et l'achèvement de transmissions d'entrée ou de sortie, l'achèvement d'un quantum de temps alloué à une séquence d'instructions programmée, et un changement dans l'état d'emploi de l'unité centrale objet 17. L'exemple mentionné en dernier, relatif à des changements dans l'état d'emploi de l'unité centrale, va être décrit plus longuement ici à titre d'illustration des types d'évènements et des situations qui peuvent être surveillés de façon interne. L'unité centrale de ensemble calculateur objet 12 surveillé au moyen de la réalisation préférée de la présente invention fonctionne, -soit en mode "maître", qui est un état privilégié ha bituellement réservé à l'usage de certaines parties du logiciel 36 (figure 1) de l'ensemble calculateur objet, soit en mode 1,es- clave", qui est un état dans lequel le choix dtinstruetions de l'unité centrale disponibles et le domaine d'accès en mémoire sont restreints, et qu est habituellement utilisé par les instructions programmées des utilisateurs ordinaires du calculateur.De plus, l'unité centrale oh, 17 peut fonctionner en mode "topologique", c'est-à-dire dans lequel le logiciel 36 de ensemble attribue des espaces de mémoire à ur programme dans des blocs de mémoire physiques dont les emplacements peuvent ne pas être contigus3 mais dans lequel le programme est désigné comme s' il constituait un seul bloc continu, l'unité centrale objet 17 convertissant automatiquement les adresses "virtuelles" référencées dans le programme en adresses physiques vraies. Dans un diode de réalisation préféré de la présente in invention, certaines des statistiques recueillies concernent les modes d'emploi de unité centrale objet 4, c'est-à-dire indiquent si l'unité centrale fonctionne en mode "maitre11 ou "esclave" et si elle fonctionne en mode "topologique" ou en mode "non topologi que, De plus, ces modes d'emploi peuvent être sous-divisés confor ment aux diverses grandes catégories d'activités de l'unité centrale, telles que l'exécution d'instructions des utilisateurs "en ligne, le traitement de demandes, par des utilisateurs > d'exécution de certaines opérations, ou le fait d'être "Oisif" en n'ayant aucune instruction à exécuter. Beaucoup d'autres caractéristiques de l'ensemble sont mesurées, bien sur, pour le sous-ensemble 11 de surveillance interne. On peut, de façon générale, les ranger en catégories, soit de caractéristiques d'emploi, c'est-à-dire relatives à la demande ou à la charge de l'ensemble calculateur objet 12, soit de caractéristiques de fonctionnement, relatives à la vitesse et à l'effica- cité avec lesquelles l'ensemble répond à la charge qui lui est imposée. On peut citer comme exemples de caractéristiques d'emploi le nombre courant d'utilisateurs de l'ensemble > l'11intensité d'utilisateur" définie par le temps d'unité centrale consommé par tous les utilisateurs en ligne divisé par le temps que prennent ces utilisateurs pour réfléchir et taper des messages ; le pourcentage de taches initialisées par des utilisateurs et qui peuvent être complètement exécutées en un seul quantum de temps attribué pour une exécution continue ; la fréquence et la durée d'emploi de 1' unité centrale par le processeur, par exemple en FORTRAN ; et les besoins en mémoire des travaux des utilisateurs. On peut citer comme exemples des caractéristiques d'exécution, conformément aux descriptions ci-dessus, le "facteur de multiplication du temps d'exécution, défini comme le rapport du temps pris pour exécuter un programme de "calcul lié (c'est-à-dire exigeant plus d'un quantum de temps d'exécution) au temps qu'il faudrait pour exécuter le même programme s il était seul dans lten- semble 12 ; le temps de réponse, c'est-à-dire le temps pris par l'ensemble calculateur avant le commencement de l'exécution d'une tâche demandée, depuis la réception de la commande correspondante de la part de l'utilisateur et le nombre d'opérations entrées/ sorties exécutées par minute pour des buts divers. Il est clair que le sous-ensemble 11 de surveillance interne, par opposition au sous-ensemble 10 de surveillance externe, constitue lui-même une charge pour l'ensemble calculateur objet 12, puisqu'il requiert de l'espace en mémoire, pour le prélèvement de données 37 et les instructions de distribution 38, ainsi que pour les tableaux de données 39, et pour le temps pris par l'unité centrale pour remplir ses fonctions. La distorsion inévitable des données de surveillance que cela impose au sous-ensemble 11 est minimisée par le fait que les instructions de prélèvement et de distribution de données son#t provoquées par évènements, c'està-dire qu'elles ne le sont que lorsque cela est nécessaire. Dans le sous-ensemble 11 de surveillance interne inclus dans le mode de réalisation préféré, des moyens (non représentés) sont aussi prévus pour l'affichage de groupes de statistiques de surveillance sur des dispositifs de sortie "en lige'. Plus pertinents encore-sont les moyens prévus dans les instructions programmées de commande 43 de la surveillance interne pour engendrer le fichier d'archives 15 en vue d'un traitement ultérieur. Le fichier d'archives 15 contient une copie des tableaux de données accumulées 39J enregistrées à la fin de chaque intervalle d'échantillonnage sélectionné. Le traitement ultérieur du fichier d'archives 15 comporte typiquement la génération d'un fichier dit instantané: dont chaque enregistrement ne contient que des données relatives à un intervalle d'échantillonnage séparant deux enregistrements dans le fichier d'archives, et ensuite l'enregistrement du fichier instantané selon les variations de l'intensité d'utilisateur, du nombre d'utilisateurs, ou de quelque autre caractéristique. Le fichier instantané ré-ordonné eut alors être facilement utilisé pour éliminer tous les échantillons prélevés pendant certaines conditions d'emploi extrêmes. 4. Surveillances interne et externe en combinaison En se référant de nouveau à la figure 1, on verra que les instructions de commande programmées 43 de la surveillance interne et les instructions de commande programmées 44 de la surveillance externe sont représentées schématiquement en formant une seule unité. la combinaison est effectuée par des modificatij-ns apportées aux instructions de corrir?nde programmées 4 de la surveillance interre, de telle marnière que l'utilisateur 14 puisse choisir de se servir du sous-ensemble 10 de surveillance externe en parallèle et en synchronisme avec le sous-ensemble 11 de surveillance interne. La combinaison peut être ut utilisée, par exemple pour va- lider l'analyse de l'utilisation de L'unité centrale faite par le sous-ensemble Il de surveillance interne, en utilisant la précision du sous-ensemble 10 de surveillance externe pour faire la même analyse que le sous-ensemble interne, et pendant les mêmes intervalles d'échantillonnage. La combinaison fournit en général à l'utilisateur des résultats plus signlficatifsf puisque les données de surveillance externe peuvent être filtrées pour éliminer les échantillons prélevés à des instants où emploi, ou la charge de l'ensemble calculateur objet 12 était extrême d'une façon ou d'une autre, suivant l'indication des données de surveillance interne. Un autre exemple de l'utilisation de la combinaison réside dans la mesure du degré de recouvrernent du fonctionnement de l'uni- té centrale objet 17 et de celui des divers dispositifs d'entrées/ sorties. Le sous-ensemble 10 de surveillance externe peut facilement exécuter les mesures détaillées nécessaires, mais les résultats ont peu de signification s'vils ne sont par corroborés par 1' enregistrement parallèle d'évènements de caractère plus global qui peuvent être surveillés par le sous-ensemble 11 de surveillance interne. En passant maintenant aux figures Da et fb, on verra que ces figures constituent ensemble une carte de fluence d'opérations d'exécution des instructions de commande programmées 43 et 44 de surveillances interne et externe qui sont étroitement liées au procédé de la présente invention. La séquence des étapes du fonctionnement débute au point d'entrée 110 (figure 3a), et on se rendra compte que le point d'entrée n'est atteint qu'après une certaine interaction entre l'utilisateur 14 (figure 1) et le logiciel 36 (figure 1) de l'ensemble calculateur objet. En d'autres termes, on suppose que L'utilisateur a d'abord obtenu l'accès aux instructions de commande programmées 43 (figure 1) de la surveillance interne. La première étape, désignée par la référence 111, consiste à obtenir une commande de la part de l'utilisateur. Pour cette étape, comme pour d'autres, la nature exacte de la conversation entre l'utilisateur et les instructions de commande de la surveillance n'a pas été indiquée.Il est clair, pour l'homme de l'art que des essais doivent être faits pour vérifier le sens et la validité des réponses de l'utilisateur, et pour envoyer à celui-ci, le cas échéant, des messages d'erreur appropriés. Dans le bloc de décision représenté par la référence 112, la réponse de l'utilisateur est décodée en suivant l'un de plusieurs chemins possibles, suivant la commande de l'utilisateur. On n'a représenté que quatre commandes comme relevant de la présente in vention, mais on doit se rendre compte que d'autres commandes sont à la disposition de l'utilisateur pour lui permettre de faire exécuter d'autres fonctions telles que l'affichage des statistiques de surveillance interne sur de#dispositifs de sortie "en ligne". Les quatre commandes représentées sont désignées par ADD, DROP, FILE H et END. Si c'est la commande ADD qui est envoyée, un chemin est choisi par un connecteur A2 > et la seconde étape, figurée par la référence 113, consiste à obtenir la liste des articles qui doivent être ajoutés à ceux qui doivent être affichés sur le dispositif de sortie en ligne. Les caractéristiques de l'affichage en ligne de la version normale du sous-ensemble de surveillance interne permettent à l'utilisateur de sélectionner des groupes de statistiques à afficher par leur nom de code. Par exemple, un groupe d'afficha ge "unité centrale" a pour effet l'affichage d'un résumé du temps d'utilisation de l'unité centrale, tel qu'on l'a défini ci-dessus à propos du sous-ensemble de surveillance interne.La commande ADD a été ici modifiée pour permettre à l'utilisateur de sélectionner une surveillance externe synchronisée, par option, en tapant ADAN ou ADAMI. Dans l'étape suivante, représentée par le bloc de décision 114, une vérification est faite pour voir si l'utilisateur a tapé END. S'il en est ainsi, on revient au point d'entrée 110 par l'intermédiaire du connecteur Al. Sinon, une autre vérification est faite, qui est représentée par le bloc de décision 115, pour déterminer si l'utilisateur a tapé ADAMI, et, sinon, une autre vérification est encore faite, représentée par le bloc de décision 116, pour déterminer si l'utilisateur a tapé ADAM. L'utilisateur dispose fondamentalement de deux options pour effectuer une vérification de surveillance en utilisant la surveillance externe synchronisée. La commande ADAMI indique que l'utilisateur désire que les mémoires 63 et 67 (figure 2) du sousensemble de surveillance externe soient ré-initialisées après que le contenu de la mémoire tampon 67 (figure 2) ait été enregistré dans le fichier d'archives 15 (figure 1) de surveillance externe, à la fin de chaque intervalle d'échantillonnage. Si l'utilisateur spécifie la commande ADAM, la surveillance externe sera encore poursuivie en mode synchronisé, mais les mémoires 63 et 67 (figure 2) ne seront pas ré-initialisées entre les intervalles d'échantillonnage.Si ni ADAMI, ni ADAM n'a été sélectionné comme commande, la commande doit être l'une de celles qui sont reconnues par le sousensemble normal de surveillance interne, et la prochaine étape consiste à établir les drapeaux d'impression appropriés, comme figuré par la référence 117, suivant la commande, après quoi un chemin de retour vers le point d'entrée 110 est effectué par le connecteur Al. Si la commande est ADAMI, un drapeau d'initialisation de surveillance MI est établi, comme figuré par la référence 118, alors que si la commande est ADAM, cette étape est court-circuitée, et l'étape suivante consiste à établir un drapeau de surveillance comme comme figuré par la référence 119. Le privilège de l'utilisateur est ensuite vériCLé, comme figuré par la référence 121, et une action appropriée est entreprise pour interdire l'accès au sous ensemble 10 (figure 1) de surveillance externe à l'utilisateur si celui-ci nta pas ce privilège. Ensuite, comme figuré par la référence 122, une connexion est établie vers le sous-ensemble 10 (figure 1) pour faire en sorte que l'utilisateur ait l'usage exclusif de ce sous-ensemble. Dans l'étape suivante, représentée par le bloc de décision 123, une vérification est effectuée pour déterminer si le sous-ensemble de surveillance externe est occupé. Si la réponse est affirmative, un message d'erreur est envoyé à l'utilisateur, comme figuré par la référence 124, et un chemin de retour au point d'entrée 110 est pris par le connecteur Al. Si la surveillance externe est libre, comme cela peut être le cas, l'étape suivante, figurée par la référence 125, consiste à obtenir de l'utilisateur le nom du programme à exécuter dans le sous-ensemble 10 (figure 1) de surveillance externe. Ensuite, comme figuré par la référence 126, le programme nommé est recherché et extrait d'une librairie de tels programmes.Une indication de l'interface de surveillance 23 (figure 1), à utiliser avec le programme, accompagnera celui-ci, puisque, dans le mode de réalisation préféré de la présente invention, l'interface de surveillance comporte un tableau de fiches physiquement interchangeables. Ensuite, comme figuré par la référence 127J l'interface de surveillance 23 (figure 1) est commutée de la façon qui correspond aux besoins du programme à exécuter dans le sous-ensemble 10 (figure 1) de surveillance externe. Ceci est fait, comme on peut le vérifier sur la figure 1, par des signaux de commande transmis à l'interface de surveillance 23 (figure 1) par le chemin de commande 24 (figure 1). Finalement, comme figuré par la référence 128, toutes les mémoires du sous-ensemble de surveillance externe sont chargées. Cela comprend des programmes d'instructions pour le processeur associatif 75 (figure 2), et pour le processeur tampon 76 (figure 2) tout autant que des valeurs initiales pour la mémoire associative 63 (figure 2) et la mémoire tampon 67 (figure 2). Après chargement des mémoires du sous-ensemble de surveillance externe, un chemin de retour au point d'entrée 110 est pris par le connecteur Al. Si la commande de l'utilisateur est DROP, un chemin est pris à travers le connecteur B3 vers la figure 3b, et, comme figuré par la référence 129, une liste des articles à retirer de l'af fichage en ligne de statistiques de surveillance est obtenue de l'utilisateur. Comme c'était le cas pour la commande ADD, la commande DROP a été modifiée pour permettre l'emploi des mots AIDAI et AGAMI dans la liste des articles à retirer. Une vérification est faite, comme le représente le bloc de décision 131, pour déterminer si l'article à retirer est ADAM, ou, comme le représente le bloc de décision Si si est ADAtff.Si la réponse est affirma- tive, dans l'un ou 11 autre cas, une vérification est alors faite, comme le représente le bloc de décision 133 > pour déterminer si le drapeau de surveillance est présent. Si le drapeau de surveillance a été mis, le sous-ensemble 10 (figure 1) de surveillance externe est stoppé et mis hors commande de 1'utilisateur, comme figuré par la référence 134, ais, Si le drapeau de surveillance n'a pas été mis, cette dernière étape est court-circuitée, puisqu'il apparat que l'utilisateur a mis sur la liste soit ADAM, soit ALi-II comme article à retirer sans l'avoir préalablenent mis sur une liste comme article à ajouter.L'étape fial du retrat de l'un des articles ADAMI ou ADEMI consiste à rétablIr la surveillance et les drapeaux d'initialisation de la surveillance, comme figuré par la référence 135, puis à prendre un chemin de retour, par le connecteur A1, vers le point d'entrée 110 (figure 3a). Si la commande de l'utilisateur est END, un chemin est pris à travers le connecteur A3 (figure 3a) > et une vérification est. d'abord faite pour voir si le drapeau de surveillance M est mis, comme le représente le bloc de décision 136. L'utilisateur spécifie la commande END lorsqu'il désire abandonner la commande du sous-ensemble 10 (figure 1) de surveillance externe et, à la fois, la libérer de la commande par l'utilisateur, tandis que, si le drapeau de surveillance n'est pas mis, cette dernière étape est court-circuitée.Finalement, comme figuré par la référence 138, tous les fichiers ouverts utilisés en connexion avec les opérations de l'utilisateur sont fermés, et une sortie finale hors des programmes est prise, comme figuré par la référence 139. La commande qui reste à examiner est la commande FILE H. Si cette commande est requise, un chemin est pris par le connecteur B1 vers la figure 3b, et l'étape suivante, figurée par la référence 141, consiste à obtenir de l'utilisateur un nom pour le fichier d'archives 15 (figure 1) de surveillance interne. Alors, comme figuré par la référence 142, on demande à l'utilisateur de fournir l'intervalle d'échantillonnage à utiliser pour la vérification de surveillance, et, comme figuré par la référence 143, le nombre total d'échantillons à prélever pour cette vérification. Au cours de l'étape suivante, comme figuré en 144, des données sont déplacées des tableaux de données accumulées 39 (figure 1) vers une aire tampon de sortie pour une écriture ultérieure dansle fichier 15 (figure 1) de surveillance interne. Ensuite, comme le représente le bloc de décision 145, la présence du drapeau de surveillance est vérifiée pour déterminer si la surveillance externe doit être exécutée. Si la réponse est affirmative, le sous-ensemble 10 (figure 1) de surveillance externe est stoppé, comme figuré par la référence 146. Au premier passage par cette étape, le sous-ensemble 10 (figure 1) de surveillance externe aura déjà été stoppé, Ensuite, -comme figuré par la référence 147, la mémoire du sous-ensemble de surveillance externe, et en particulier la mémoire tampon 67 (figure 2), est transférée à lten- semble calculateur objet 12 (figure 1) et la présence du drapeau d'initialisation de la surveillance MI est contrôlée, comme l'indique le bloc de décision 148.Si le drapeau d'initialisation de la surveillance est mis, la mémoire associative 63 (figure 2) et la mémoire tampon 67 (figure 2) sont ré-initialisées, comme figuré par la référence 149, mais si le drapeau d'initialisation de la surveillance n'est pas mis, cette dernière étape est. court-circuitée. La mémoire associative 63 (figure 2) et la mémoIre tampon 67 (-figure 2) ayant été déchargées au cours de 11 étape 147, le sous-ensemble 10- (figure 1) de surveillance externe est remis en service comme figuré par la référence 151, et un chemin est trouvé par le connecté .teur#B2 pour commencer l'écriture des enregistrements deifichier d'archives. Si le drapeau-de surveillance M n'était pas mis, comme ce la:aurait été déterminé dans le bloc de décision 145, c'est-à-dire .si la surveillance externe n'avait pas .été sélectionnée, les étapes d'arrêt#du-sous-ensem-ble de surveillance 146, de lecture de la mémoire tampon 147, et, éventuellement, la ré-initialisation des mémoires. 149.du sous-ensemble de . surveillance externe,- auraient été -court-etrcuitées et un chemin aurait été pris par le connecteur B2 vers. ltétape suivante qui reste à exposer. Au cours de l'étape suivante, comme l'indique le bloc de décision 152, la question est posée de savoir si c'est le premier enregistrement à enregistrer dans les fichiers d'archives. Si la réponse est affirmative, un message est transmis à l'utilisateur pour lui notifier que cette séquence est commencée, comme figuré par la référence 153J tandis que s'il ne s'agit pas d'un premier enregistrement, cette ornière étape est court-circuitée.Ainsi, le fichier d'archives 15 (figure 1) de surveillance interne est ouvert et, si nécessaire, mis en condition pour l'écriture de l'enregistrement suivant, comme figuré par la référence 154, Dans l'é- tape suivante, figurée par la référence 155, l'enregistrement suivant dans le fichier d'archives est écrit en transitant de l'aire tampon de sortie dans le fichier d'archives 15 de surveillance interne (figure 1). Ainsi, comme l'indique le bloc de décision 156, la présence du drapeau de surveillance est de nouveau contrôlée pour savoir si une surveillance externe doit être exécutée.Si la réponse est affirmative, un enregistrement est écrit dans le fichier d'archives 16 (figure 1) de surveillance externe, comme figuré par la référence 157J tandis que si le drapeau de surveillance n'est pas mis, cette dernière étape est court-circuitée. Ainsi, comme figuré par la référence 158, une vérification est faite pour savoir si tous les échantillons ont été traités au cours de la séquence. Si la réponse est négative, l'activité des programmes de commande est suspendue pour la durée d'un intervalle d'échantillonnage, comme figuré par la référence 159, ce qui permet aux sur veillancesexterne et interne de continuer toutes deux pendant cet intervalle d'échantillonnage. A la fin de cet intervalle, le traitement est repris à l'étape de déplacement de données accumulées dans le tampon de sortie, comme figuré par la référence 144, et, si une surveillance externe doit être exécutée, le sous-ensemble 10 (figure 1) de surveillance externe est stoppé, la mémoire tampon 67 est lue, les mémoires du sous-ensemble de surveillance externe sont ré-initialisées si nécessaire, et la surveillance est remise en fonctionnement, comme figuré aux étages 146-151. Lorsque tous les échantillons ont été traités dans l'es- sai de surveillance, comme l'indiquait une réponse affirmative du bloc de décision figuré par la référence 158, un message est transmis à l'utilisateur pour indiquer la fin de la séquence, comme figuré par la référence 161J les divers fichiers qui avaient été ouverts pour les besoins de cette séquence sont fermés, comme figuré par la référence 162, et un chemin de retour au point d'entrée 110 de la figure 3a est pris par le connecteur Al, pour demander à l'utilisateur une autre commande qui sera généralement la commande END. On peut déduire de la description précédente que l'ensem- ble de surveillance, nouveau et perfectionné, du fonctionnement d' un calculateur, selon la présente invention, fournit un outil extrêmement souple et puissant pour analyser les caractéristiques du fonctionnement d'ensembles calculateurs complexes qui, par conséquent, satisfait des besoins existant depuis longtemps dans ce genre de technique.En particulier, la présente invention fournit un procédé et un dispositif de surveillance empirique d'un ensemble calculateur à l'aide de moyens de surveillance interne et externe synchronisés, combinant donc la précision et la minutie de la surveillance externe avec la mise à disposition de statistiques de caractère plus large et plus global fournies par la surveillance interne. Celle combinaison des surveillances externe et interne synchronisées ne pouvait pas jusqu'ici être mise à la disposition des utilisateurs de dispositifs de surveillance du fonctionnement d'un calculateur, et elle est telle qu'elle peut être facilement adaptée pour être utilisée avec des calculateurs objets différents La présente invention n'est pas limitée aux exemples de réalisation qui viennent d'être décrits, elle est au contraire susceptible de variantes et de modifications qui apparaitront à l'homme de l'art. REVENDICATIOMS I - Dispositif de surveillance du fonctionnement d'un calculateur, caractérisé en ce qu'il comprend : - des moyens de surveillance interne pour accumuler des données concernant des états et des situations d'un ensemble calculateur à surveiller ; - des moyens de surveillance externe connectés à lten- semble calculateur pour accumuler des données concernant des variations de signaux transmis dans L'ensemble calculateur ; - des moyens d'enregistrement pour enregistrer des données accumulées par les moyens de surveillance interne et par les moyens de surveillance externe ; et - des moyens pour synchroniser le fonctionnement des moyens de surveillance interne, et des moyens de surveillance externe. 2 - Dispositif selon la revendication 1, caractérisé en ce que les moyens de surveillance interne comprennent - des moyens de mémoire internes à l'ensemble calculateur, et - des moyens de prélèvement et de distribution, internes à l'ensemble calculateur, pour prélever des données concernant des changements d'états et de situationsde l'ensemble calculateur, et pour distribuer ces données aux moyens de mémoire. 3 - Dispositif selon la revendication 2, caractérisé en ce que les moyens de prélèvement et de distribution de données sont pragrarnmables. 4 - Dispositif selon la revendication 1, caractérisé en ce que les moyens de surveillance externe comportent - des moyens conducteurs électriques pour la transmission d'une pluralité de signaux de l'ensemble calculateur surveillé ; et - des moyens de sonde pour connecter lesdits moyens conducteurs électriques à l'ensemble calculateur. 5 - Dispositif selon la revendication 4, caractérisé en ce que les moyens de surveillance externe comportent des moyens dl interface de surveillance pour la réception des signaux de l'ensem- ble calculateur et pour la sélection d'un ensemble requis de ces signaux pour une surveillance externe. 6 - Dispositif selon la revendication 5, caractérisé en ce que les moyens de surveillance externe comportent de plus - des moyens de surveillance associatifs pour la détection de variations dans ensemble de signaux sélectionné ; et - des moyens de mémoire de surveillance pour l1accumula- tion de données concernant les variations de l'ensemble de signaux sélectionné. 7 - Dispositif de surveillance du fonctionnement d'un calculateur, caractérisé en ce qu'il comporte - des premiers moyens de surveillance pour l'accumulation de données concernant des états et situation,5d'u ensemble calculateur à surveiller, ces premiers moyens de surveillance étant internes au dispositif de calculateur ; - des seconds moyens de surveillance connectés à l'ensem- ble calculateur et externes à celui-ci pour l'accumulation de données concernant des variations des signaux transmis de l'ensemble calculateur ; - des moyens d'enregistrement pour l'enregistrement de données accumulées par les premiers moyens de surveillance et par es seconds moyens de surveillance ; - des moyens pour la synchronisation des premiers moyens de surveillance, des seconds moyens de surveillance et des moyens d'enregistrement ; et - des moyens électriques pour la transmission de signaux d'identificateurs de l'ensemble calculateur aux seconds moyens de surveillance. 8 - Dispositif selon ga revendication 7, caractérisé en chaque les signaux d'identificateur indiquent un état logiciel dans 1 'ensemble calculateur. 9 - Dispositif selon la revendication 1, caractérisé en ùe que les moyens de #urveillance externe sont logés intégralement dans l'ensemble calculateur. 10 - Dispositif de surveillance du fonctionnement d'un ensemble calculateur, caractérisé en ce qu'il comporte - des moyens logiciels solidaires de l'ensemble calculateur pour l'accumulation de données concernant les évènements et situations dans 11 ensemble calculateur ; - des moyens de matériel externes à l'ensemble càlculateur et connectés à celui-ci pour l'accumulation de données concer- nant des variations de signaux transmis dé l'ensemble calculateur ;; et - des moyens de coordination pour la coordination sélective du fonctionnement des moyens logiciels et des moyens matériel 11 - Dispositif de surveillance du fonctionnement d'un ensemble calculateur, caractérisé en ce qu'il comporte - des premifrs moyens logiciels intégrés à l'ensemble calculateur pour l'a- múlation de données concernant les évènements et les situations dans l'ensemble calculateur ; - des moyens matériels externes à l'ensemble calculateur et connectés à celui-ci pour l'accumulation de données concernant des variations des signaux transmis de l'ensemble calculateur ; - des seconds moyens logiciels pour la commande des opérations des premiers moyens logiciels ; et - des troisièmes moyens logiciels pour la commande des opérations des moyens matériels, ces troisièmes moyens logiciels étant couplés avec les seconds moyens logiciels pour une coordination sélective des opérations des premiers moyens logiciels et des moyens matériels. 12 - Dispositif de surveillance du fonctionnement d'un calculateur, caractérisé en ce qu'il comporte - des moyens de surveillance interne pour l'accumulation de données concernant les états et les situations d'un calculateur à surveiller ; - des moyens de surveillance externe, connectés à lten- semble calculateur, pour l'accumulation de données concernant des variations des signaux transmis de l'ensemble calculateur ; - des premiers moyens d'enregistrement pour l'enregistre- ment de données surveillées par les moyens de surveillance interne; - des seconds moyens d'enregistrement pour l'enregistre- ment de données surveillées par les moyens de surveillance externe; et - des moyens de synchronisation des moyens de surveillance interne, des moyens de surveillance externe et des premiers et seconds moyens d'enregistrement. 13 - Dispositif de surveillance des caractéristiques de fonctionnement d'un ensemble calculateur par des moyens de surveillance interne et externe, caractérisé en ce qu'il comporte - des moyens conducteurs électriques constituant une plu ralité de chemins de signaux venant du calculateur surveillé ; - une interface de surveillance pour la réception de ces signaux et pour la sélection d'un ensemble de ces signaux, requis pour une surveillance externe ; - des moyens associatifs de surveillance pour la détection de variations dans ces ensembles de signaux sélectionnés ;; - des moyens de mémoire de surveillance pour accumuler des données concernant les variations de l'ensemble sélectionné de signaux - des premiers moyens de commande pour la commande des opérations de 11 interface de surveillance, des moyens associatifs de surveillance et des moyens de mémoire de surveillance ;. - des moyens de prélèvement de données, internes au système calculateur surveillé, pour le prélèvement de données concernant l'emploi et le fonctionnement de l'ensemble calculateur ; - des moyens de mémoire, internes à l'ensemble calculateur, pour l'accumulation de données prélevées par les moyens de prélèvement de données ; - des premiers moyens d'enregistrement pour ltenregis- trement, à des intervalles présélectionnés, des données accumulées dans les moyens de mémoire de surveillance ; - des seconds moyens d'enregistrement, pour l'enregistre- ment, aux mêmes intervalles présélectionnés, des données accumulées dans les moyens de mémoire internes ; ; - des seconds moyens de commande, pour la commande des premiers moyens d'enregistrement, les seconds moyens de commande étant couplés aux premiers moyens de commande pour assurer un fonctionnement synchrone des premiers moyens d'enregistrement et des seconds moyens d'enregistrement. 14 - Dispositif de surveillance des caractéristiques de fonctionnement d'un ensemble calculateur par des moyens de surveillance externe et interne, à la fois, caractérisé en ce qu'il com porte - des moyens conducteurs électriques constituant une pluralité de chemins pour transmettre des signaux provenant de lten- semble calculateur ;; - une interface de surveillance pour la réception de ces signaux pour la sélection et la combinaison d'un ensemble de si gnaux requis pour une surveillance externe 5 - des moyens de mémoire adressables par leur contenu pour la comparaison ses formes de ces signaux avec des formes précézem- ment stockées - des moyens de mémoire additionnelle pour l'accumulation ae données concernant des variations dudit ensemble de signaux sélectionné ;; - des moyens de registre connectés à I1 Interface de surveillance, aux moyens oie mémoire associative et aux moyens de mémoire additionnelle, M ur un stockage intermédiaire des signaux et Mes données ; - des premiers moyens de processeur pour commander le flux de données s'.coulant de l'interface de surveillance aux moyens de mémoire adressables par leur contenu et pour commander les opérations des moyens de mémoire adressables par leur contenu ;; - des seconds moyens de processeur pour commander les itérations d'accumulation de données dans les .moyens de mémoire additionnelle : - des moyens de mémoire d'instructions pour stocker des programmes #'d'instructions pour les premiers et seconds moyens de processeur ; - des premiers moyens d'enregistrement pour enregistrer, e# des Intervalles préselectionnés, des données accumulées dans les moyens de mémoire additionnelle ;; des premiers moyens de commande pour commander les opérations de l'interface de surveillance, des premiers et seconds moyens de processeur, du stockage e Sonnées et de la récupéra- tion de données dans les moyens de mémoire adressables par leur contenu, et dans les moyens de mémoire additionnelle, et pour commander les moyens d'enregistrement; ; -- de moyens do prélèvement de données programmables, in ternes 11 ensemble calculateur ; - des moyens de mémoire de calculateur pour l'accumula- tion de données de surveilance interne S des moyens de dlstribut-ion de données programmables, internes à l'ensemble calculateur, pour la distribution de données aux moyens de mémoire du calculateur ; - -des seconds moyens d'enre::gistrement pour l'enregistre- ment, à des intervalles présélectionnés, de données accumulées dans les moyens de mémoire de calculateur ; et - des seconds moyens de commande pour la commande des seconds moyens d'enregistrement, ces seconds moyens de commande étant couplés aux premiers moyens de commande pour assurer le fonctionnement synchrone des premiers moyens d'enregistrement et des seconds moyens d'enregistrement. 15 - Procédé de surveillance du fonctionnement d'un calculateur, caractérisé en ce qu'il comporte les étapes consistant à: - surveiller de l'extérieur un ensemble de signaux provenant d'un ensemble calculateur s - surveiller de l'intérieur un ensemble d'états et de situationsde l'ensemble calculateur, ces étapes de surveillance interne et de surveillance externe étant exécutées pendant des intervalles de temps concordants, et - enregistrer périodiquement les données résultant desdites étapes de surveillance interne et de surveillance externe. 16 - Procédé selon la revendication 15, caractérisé en ce que l'étape de surveillance externe comprend une comparaison de l'ensemble de signaux avec d'autres signaux stockés dans la mémoire adressable par son contenu. 17 - Procédé selon la revendication 16, caractérisé en ce que l'étape de surveillance externe comprend une accumulation de données concernant des variations dans l'ensemble de signaux. 18 - Procédé selon la revendication 17, caractérisé en ce que l'étape de surveillance interne comprend la réception et la surveillance de signaux dlidentificateur provenant de l'ensemble calculateur, ces signaux d'identificateur indiquant au moins un état d'emploi de l'ensemble calculateur. 19 - Procédé selon îa revendication 17, caractérisé en ce qu'il comporte de plus l'étape consistant à commander l'étape de surveillance externe au moyen d'instructions programmées stockées. 20 - Procédé selon la revendication 15, caractérisé en ce que l'étape de surveillance interne comprend - le prélèvement de données concernant des changements dans l'ensemble d'états et de situations surveillé ; et - l'accumulation de données d'une façon prédéterminée dans un ensemble de tableaux de données internes à l'ensemble calculateur. 21 - Procédé selon la revendication 20, caractérisé en ce que l'étape de surveillance interne est exécutée par des instructions programmées dans l'ensemble calculateur. 22 - Procéda selon la revendication 20, caractérisé en ce que l'étape de surveillance externe comprend - une comparaison de l'ensemble de signaux avec d'autres signaux stockés dans une mémoire adressable par son contenu ; et - l'accumulation de données concernant des variations dans l'ensemble de signaux. 23 - Procédé de surveillance du fonctionnement d'un calculateur, caractérisé en ce qu il comprend les étapes consistant à: - surveiller de l'extérieur un ensemble de signaux électriques provenant d'un ensemble calculateur de façon à détecter des variations dans ces signaux ; - accumuler dans un premier dispositif de mémoire des données concernant les variations détectées ; - surveiller de l'intérieur un certain nombre d'états et de situations de l'ensemble calculateur, ces étapes de surveillance interne et de surveillance externe étant exécutées pendant des intervalles de temps concordants ; ; - accumuler dans un second dispositif de mémoire des données concernant des états et des situations surveillés de l'intérieur 5 et - enregistrer périodiquement les données accumulées dans ce second dispositif de mémoire, cette étape d'enregistrement périodique engendrant des fichiers d'archives parallèles de données de surveillance interne et externe, et fournissant les moyens de corrélation des variations dans les signaux surveillés, indicatifs du fonctionnement du calculateur, avec des variations d'états et de situations indicatives de l'emploi et de la charge du calculateur. 24 - Procédé de surveillance simultanée du fonctionnement d'un calculateur avec un dispositif de surveillance externe et un dispositif de surveillance interne, caractérisé en ce qu'il com prend les étapes consistant à (1) pré-régler la surveillance externe pour sélectionner un ensemble de signaux désiré, provenant du calculateur à surveiller 5 (2) stocker des ensembles d'instructions et initialiser des tableaux de données dans la surveillance externe 5 (3) démarrer la surveillance externe S (4) surveiller des variations dans l'ensemble de signaux désiré par la surveillance externe pendant le cours d'un intervalle d'échantillonnage présélectionné ; (5) accumuler des données dans les tableaux de surveillance externe pendant l'intervalle d'échantillonnage ;; (6) surveiller avec la surveillance interne, pendant le même intervalle d'échantillonnage, les variations d'un certain nombre d'états et de situations du calculateur, indicatives de l'em- ploi et de la charge du calculateur S (7) accumuler dans les tableaux de données internes, pendant le même intervalle d'échantillonnage, des données relatives aux variations des états et des situations ; (8) stopper la surveillance externe à la fin de l'intervalle d'échantillonnage ; (9) enregistrer les données accumulées dans les tableaux de données de surveillance externe et dans les tableaux de données internes dans des fichiers d'archives respectifs ; (10) mettre fin à la surveillance si tous les échantillons désirés ont été prélevés ; ; et (îî) répéter cette séquence d'étapes en commençant à l'étape (3) de démarrage de la surveillance externe, si d'autres échantillons doivent être prélevés.