Brevet FR2349179A1 — publié le 19771118

La présente invention se rapporte à un ensemble de terminaux intelligents reliés entre eux, dont chacun comprend une mémoire de travail destinée à contenir des données et des programmes, une unité centrale destinée à exécuter sur lesdites données les élaborations commandées par lesdits programmes sur lesdites données, une multiplicité d'unités périphériques reliées à l'unité centrale pour introduire des données et des programmes dans la mémoire et prélever des données dans cette mémoire. Cet ensemble de terminaux est connu dans la technique sous le nom de grappe de terminaux ("CLUSTER") et il sera désigné dans le présent mémoire par ce terme. Les grappes de terminaux connues dans la technique comprennent un mini-ordinateur tres coûteux qui contient les programmes applicatifs associés à un grand nombre (jusqu'à 32) de postes de travail. Ces postes de travail sont formés par au moins un clavier et un organe de visualisation à rayons cathodiques. Le mini-ordinateur (désigné par le terme de concentrateur) a pour fonction de concentrer toute l'intelligence de la grappe. Il contient donc, en dehors des programmes applicatifs nécessaires au fonctionnement des postes de travail, les programmes suivants 1) le programme de concentration approprié pour gérer la ligne de communication entre le concentrateur et les postes de travail 2) le programme de gestion de la ligne de communication entre le concentrateur et l'ordinateur éloigné ; et 3) le programme de gestion des périphériques commun à tous les postes de travail qui composent la grappe. Ces péri phériques sont par exemple, une mémoire de masse, une imprimante, etc. Pour résumer brievement, on peut dire que l'ensemble concentré est formé par un élément extérieur aux postes de travail, capable de fournir-de hautes performances (le miniordinateur), et qui a pour fonction de contrôler toutes les informations provenant des postes de travail compris dans la grappe ou destinées à être transmises ces postes de travail. C1est-à-dire que le mini-ordinateur commande toutes les transmissions de données entre les postes de travail et la mémoire de masse, ainsi qu'entre les postes de travail et l'ordinateur éloigné. Les postes de travail ne sont donc pas dotés d'intelligence propre (programmes) mais ils sont entièrement dépendants du concentrateur. L'inconvénient de cette solution est essentiellement économique pour certains types d'applications. En effet, si le nombre de postes de travail reliés est très bas (jusqu'à 7 ou 8), étant donné que le coût du poste de travail est donné par Somme du coùt des postes de travail + coût du concentrateur nombre de postes de travail ce coût est d'autant plus élevé que le dénominateur de la fraction (c'est-à-dire le nombre des postes de travail) est plus petit. Cet inconvénient ainsi que d'autres, sont résolus par la grappe de terminaux de la présente invention qui comprend un terminal prédéterminé (maitre) comportant une mémoire de masse. La mémoire de masse contient : une multiplicité de programmes opératifs appropriés pour définir le système opératif (moniteur) aussi bien du terminal prédéterminé (maître) que de chacun des autres terminaux (esclaves) de la grappe ; une multiplicité de programmes applicatifs (PAL) destinés à définir les fonctions que l'on doit exiger de tous les terminaux constitutifs de la grappe (maître et esclaves) ; en outre, le terminal prédéterminé (maître) est destiné à gérer la transmission de données et de programmes entre la mémoire de masse et chacun des terminaux (maître et esclaves) de la grappe. La grappe de terminaux suivant l'invention permet donc de réduire le coût du poste de travail grâce au fait qu'elle utilise un ensemble de terminaux tous programmes. L'un de ces terminaux assure les fonctions qui sont typiques du concentrateur, c'est-à-dire qu'il dirige la transmission des informations entre les postes de travail et les périphériques communs (mémoire de masse, ligne externe, etc.). Les programmes de gestion des périphériques locaux associés aux postes de travail sont exécutés par les terminaux esclaves, ce qui réduit le coût et la complexité du terminal maître. Les applications qui n'exigent qu'un petit nombre de terminaux sont spécialement celles du type bancaire. En particulier, dans le cadre d'un système de traitement des infor mations bancaires, on utilise des grappes de terminaux installées directement dans les filiales périphériques. Dans ce cas, seul un petit nombre de filiales demandent à entre équipées d'un grand nombre de terminaux tandis que la filiale type demande au maximum une grappe d'environ 6 postes de travail. Il en résulte qu'un marché bien défini (les établissements bancaires) est intéressé par ce type de grappes de terminaux. On donnera ci-après une description détaillée d'un exemple non limitatif de grappes de terminaux suivant l'invention en se référant aux dessins annexés sur lesquels: - la figure 1 représente la grappe de terminaux suivant l'invention - la figure 2 représente l'action des programmes dans le terminal maître - la figure 3 représente l'action des programmes dans le terminal esclave à deux postes de travail ; - la figure 4 représente un diagramme d'état d'activation des divisions d'un CPU bi-programmé - la figure 5 représente le schéma logique de l'accès à la mémoire externe ; - la figure 6 représente le contenu de la mémoire externe ;; - la figure 7 représente un message de demande d'initialisation envoyé par un terminal esclave - la figure 8 représente un message qui spécifie les informations devant etre chargées dans la mémoire d'un terminal esclave - la figure 9 représente un message de données - la figure 10 représente un message de fin d'initialisation ; - la figure 11 est un organigramme d'un programme chargeur appelé par la suite programme "LOADER" d'un terminal esclave. Les cadres 1 à 4 de la figure 1 représentent les terminaux constituant la grappe suivant l'invention. Chacun d'eux est compose des organes suivants - une unité centrale CPU (5 à 8) qui contient une mémoire de commande ROM ou passive (3 à 12) destinée à engendrer les signaux de commande nécessaires pour le fonctionnement de la CPU - une mémoire de travail RAM (13 à 16), c'est-à-dire du type à lecture et enregistrement - un canal d'entrée-sortie des données (non représenté) auquel sont reliées plusieurs unités périphériques. Ces éléments se trouvent tous dans le commerce et ils sont par conséquent déjà connus de l'homme de l'art. Les unités péripheriques pouvant être relies au canal d'entrVe-sortie sont également connues dans le commerce et il ne sera-donc pas nécessaire d'en donner un exposé explicatif dans la suite de la description. En particulier, il suffira de préciser que les paires d'unités périphériques composées d'un clavier (36, 38, 40, 42, et 44)et d'un organe de visualisation (37, 39, 41, 43 et 45) sont indiquées par la dénomination de postes de travail (31 à 35) puisqu'à chacun d'eux correspond un opérateur différent. En outre, chaque terminal 1 peut comporter au moins une imprimante 46 à 49 qui comprend les dispositifs de commande du papier (non représentés). Le terminal 1 (qui sera appelé le terminal maître dans la suite de l'exposé) est muni en outre d'un groupe d'unités périphériques 55 à 57 qui sont communes à toute la grappe de terminaux 1 à 4. En particulier, le périphérique 55 est du type à ruban magnétique, le périphérique 56 est du type à disque magnétique et, ensemble, ces deux périphériques constituent la mémoire externe qui dessert tous les terminaux 1 à 4.Les périphériques indiqués par la référence 37 peuvent être de différents types suivant les exigences particulières de l'utilisateur : lecteur/perforateur de ruban, lecteur/perforateur de cartes, imprimante auxiliaire, etc. Les terminaux 1 à 4 sont reliés entre eux au moyen d'une ligne de communication interne 59 et des unités de commande de la ligne 51 à 54. En outre, la ligne externe 58 permet de relier le terminal maître 1 a un ordinateur éloigné (non représenté). Cette liaison est établie au moyen de l'unité de commande 50 qui comprend tous les appareillages nécessaires pour l'émission et la réception des données. En outre, la ligne externe 58, avec l'unité de commande associée 50, est utilisée par tous les terminaux 1 à 4 qui constituent la grappe. Pour donner une explication plus claire de la nature de l'invention, on donnera ci-après un bref exposé du fonctionnement de la grappe de terminaux de la figure 1. Ainsi qu'on l'a indiqué plus haut, la grappe de la figure 1 est en mesure d'exécuter en mode local (c'est-à-dire sans l'aide de l'ordinateur éloigné) un ensemble de programmes applicatifs respectivement associés aux postes de travail 31 à 35. Le chargement des programmes dans les mémoires RAM 13 à 16 est commandé automatiquement au moment de l'allumage des terminaux 1 à 4. Le terminal maître 1 doit être allumé avant l'un quelconque des terminaux esclaves 2 à 4. L'allumage du terminal 1 provoque, avec une série d'opérations (programmées dans la mémoire ROM 9) le chargement dans la mémoire RAM 13 des programmes suivants : MONITEUR dans la zone 17, PAC-dans la zone 18 et PAL dans la zone 19. Le programme MONITEUR gère toutes les opérations qui impliquent les périphériques 55 à 57 communs à la grappe. Le programme PAC gère le flux des informations qui transite par la ligne interne 59 et la ligne externe 58. Le programme PAL gère le flux des informations en provenance ou en direction des unités périphériques associées aux postes de travail 31 et à l'imprimante 46. L'allumage de l'un quelconque des terminaux esclaves 2 à 4 provoque l'activation de la ligne interne 59, du programme PAC 18, du MONITEUR maître 13 et par conséquent de la mémoire externe 56. Les programmes destinés au terminal en phase d'initialisation (c'est-à-dire du terminal qui a été allumé) sont extraits de la mémoire externe 56 et transférés à la mémoire RAM de ce terminal. Par exemple, si l'on allume le terminal 3, la mémoire RAM 15 recevra les programmes suivants :le programme MONITEUR 22, le programme PAL 23 et le programme PAL 24. Le programme MONITEUR 22 du terminal esclave est formé par un sous-ensemble des programmes contenus dans le MONITEUR 13 puisque les fonctions du terminal esclave sont un sousensemble des fonctions du terminal maître. Les programmes PAL 23 et PAL 24 ont pour fonction de gérer respectivement les postes de travail 33 et 34 et l'imprimante 48 qui est commune à tous les postes (temps partage. En outre, les programmes PAL 23 et PAL 24 contiennent le programme de travail qui intéresse l'opérateur (par exemple des programmes de type bancaire pour la gestion des comptes clients). Les programmes PAL 21 à 26 utilisent la ligne interne 59 pour mettre les données en mémoire sur les mémoires externes 55 et 56 et pour dialoguer avec l'ordinateur éloigné au moyen de la ligne externe 58. Pour réaliser la grappe de terminaux suivant l'invention, il est nécessaire que la CPU de chacun des terminaux 1 à 4 soit du type bi-programmé. Le fonctionnement de l'unité centrale biprogrammée est décrit dans la demande de brevet déposée en République Fédérale d'Allemagne n0 2.538.978, publiée le 11 Mars 1976 et qui correspond à la demande de brevet italien n0 69.664 A-74 déposée le 2 Novembre 1974. Dans cette demande, on décrit comment, en divisant la mémoire de travail en trois zones, on peut faire exécuter alternativement par l'unité centrale d'un ordinateur les programmes enregistrés dans cette mémoire de travail. En particulier, on a représenté sur la figure 2 la mémoire RAM 13 du terminal 1 tandis que sur la figure 3, on a représenté la mémoire 15 du terminal 3 qui comprend deux postes de travail. Sur la figure 2, la RAM 13 est subdivisée en trois zones appelées divisions. La division MONITEUR 17, la division A (indiquée en 18) et la division B (indiquée en 19). De même, la figure 3 montre la RAM 15 subdivisée en une division MONITEUR 22, une division A (indiquée en 23) et une division B (indiquée en 24). En variante, l'une des divisions dispose de la CPU (la CPU 5 dans le cas de la figure 2 et la CPU 7 dans le cas de la figure 3). La CPU est donc considérée comme une ressource dont l'utilisation est partagée en exclusion mutuelle par les divisions. Le transfert de la commande de l'une à l'autre des divisions (c'est-à-dire la suspension du programme contenu dans l'une de ces divisions et l'activation d'un programme contenu dans une autre division) permet de paralléliser l'exécution des programmes. La figure 4 représente les transitions admises par le mécanisme de la bi-programmation. En particulier, les transitions qui peuvent s'effectuer sont les transitions entre les divisions A et B, entre la division A et la division moniteur et entre la division B et la division moniteur. L'accès à la division moniteur est établi au moyen d'une instruction appropriée de "appel du moniteur". La commande reste à la division moniteur tant que ce dernier n'a pas achevé les travaux pour lesquels il a été appelé. La sortie de la division moniteur se produit par l'intermédiaire d'une instruction spécialement prévue de "sortie du moniteur", qui réactive à nouveau la division demanderesse (A ou B). Les figures 2 et 3 représentent de façon symbolique (par des lignes interrompues) les principales fonctions assurées par les programmes mémorisés dans les divisions (moniteur A et B) sur les périphériques reliés respectivement à un terminal maître (figure 2) et à un terminal esclave (figure 3). Le moniteur du terminal maître assure les fonctions suivantes : (1) il gère les périphériques communs et les bibliothèques de grappes (dossiers) (2) il assure les fonctions d'interface des programmes applicatifs (PAC ou PAL), en exécutant toutes les macro-instructions demandées par ces programmes ; et (3) il commande tout le trafic à l'inté- rieur de la grappe par la gestion des lignes (interne 59 et externe 58). Le moniteur du terminal esclave (mémorisé dans la zone 22 de la figure 3) assure les mêmes travaux que le moniteur du maître mais il se retourne vers le moniteur du maître pour effectuer la gestion des périphériques communs à la grappe (55 à 57) et de la ligne externe 58. Le programme applicatif de concentration (PAC sur la figure 2) est mémorisé dans la zone 18 de la figure 2 (division A) et assure les fonctions suivantes : (1) il initialise la grappe (c'està-dire il change les programmes lors de l'allumage de chaque terminal) ; (2) il forme l'interface du moniteur pour la gestion des périphériques communs à la grappe et pour les bibliothèques de la grappe (dossiers) ; (3) il contient les tableaux applicatifs utilisés par le moniteur pour gérer la coopération entre les programmes applicatifs de la grappe ; (4) il gère d'une manière uniforme le traitement des erreurs et les procédures de redémarrage relatives-au terminal maître ; (5) il gère les fonctions communes à la grappe de terminaux comme les demandes de liaison avec l'ordinateur éloigné par la ligne externe 58 qui sont issues des postes de travail 31 à 35 ; (6) il dialogue avec l'opérateur en envoyant les messages d'erreur a l'organe de visualisation (37, 39, 41, 43 et 45). Le programme applicatif de travail (PAL) est enregistré dans les divisions A et B de la figure 3. Le PAL assure les fonctions suivantes : (1) il gère l1entrée-sortie avec les périphériques clavier et affichage qui constituent le poste de travail 31, 33 et 34 ; (2) il gère, à l'aide du moniteur esclave l1impri- mante commune 48 dans le cas du terminal esclave 15 qui contient deux postes de travail 33 et 34 ; (3) il gère directement l'imprimante 46 dans le cas où cette dernière est affectée au poste de travail;(4) il assure les fonctions de guidage de l'opérateur en envoyant les messages de guidage de l'opérateur sur l'organe de visualisation (37, 39, 41, 43 et 45) ; (5) il demande au moniteur d'assurer les fonctions d'accès aux bibliothèques de la grappe (dossiers) enregistrées sur la mémoire de masse du terminal maître ; (6) il gère les zones de travail du programme applicatif de travail. En se référant à la figure 5, on décrira maintenant le schéma logique par l'intermédiaire duquel les demandes d'entrée-sortie provenant de l'un des programmes applicatifs de travail (PAL) sont gérées par les modules d'entrée-sortie logique 80 qui sont contenus dans le programme applicatif de concentration PAC 18. On supposera que le terminal 1 et au moins l'un des terminaux 2 à 4 sont en cours de travail (RUN) et qu'un programme PAL (par exemple le PAL 24 du terminal 3 de la figure 1) désire ouvrir un flux (nomme F1 sur la figure 5), lire les données issues de ce flux et, finalement, fermer ce flux. Pour pouvoir accéder logiquement à un flux, il faut que ce dernier soit ouvert physiquement, c'est-à-dire qu'il faut qu'il s'établisse une liaison entre le flux physique et le programme applicatif de commande (PAC). Ceci est exécuté par une macroinstruction d'ouverture plysique d'un flux appelee FOPEN émise par le programme PAC. Cette macro-instruction précède chaque macroinstruction d'ouverture logique appelée OPEN et émise par un programme PAL. La macro-instruction FOPEN d'ouverture physique du flux a pour but de rendre disponible le flux F1 appelé et ceci est obtenu en contrlant que le flux est compatible avec la desc > ton physique donnée par un tableau compris dans le PAC. L'exécution d'une demande d'ouverture logique (macro-instruction OPEN) d'un flux de données de la part d'un PAL commande l'envoi d'un message au programme d'entrée-sortie logique 80 du PAC qui gère les demandes d'ouverture logique. Le programme d'entrée-sortie logique 80 a pour effet de relier le tableau de description des flux à une macro-instruction de description logique du flux F1 à ouvrir. A ce point, le flux physique est disponible pour être traité en lecture (au moyen de la macro-instruction GET) ou en enregistrement (au moyen de la macro-instruction PUT) puisqu'il s'est établi un canal logiciel-matériel qui permet l'accès aux informations contenues dans le flux de données F1. Il convient de préciser la signification de l'expression canal "logiciel-matériel" utilisée dans la phrase précédente. Le canal logiciel-matériel est constitué par les éléments suivants : (I) le canal matériel de liaison entre la CPU 5 du terminal 1 et les unités périphériques 55 à 57 ; (2) les messages échangés entre le moniteur du maître 17 et le PAC 18 ; (3) le canal matériel formé par la ligne interne de transmission 59 de la figure 1 ; (4) les messages échangés sur la ligne 59 entre le PAC 18 et le PAL. Lorsque le PAL a exécuté toutes les opérations de lecture et enregistrement sur le flux 1, il exécute une macro-instruction CLOSE qui permet de fermer logiquement le flux Fl. La macro-instruction CLOSE utilise elle aussi le canal logiciel-matériel décrit plus haut pour fermer le flux précédemment élaboré. Il ressort clairement de l'exposé donné ci-dessus qu'en utilisant le mécanisme de labi-prograni#ation de l'unité centrale, il est possible d'obtenir une grappe de terminaux communiquant par une ligne de transmission 59. En outre, l'un de ces terminaux (le terminal-maître) est équipé d'un premier programme moniteur particulier qui permet l'utilisation indivise des périphériques communs par tous les terminaux constituant la grappe (mémoires externes, imprimantes, etc.) et un deuxième programme PAC particulier qui permet l'échange des informations (messages) entre les terminaux esclaves et le terminal maître. Les périphériques utilisés en indivision par les matériaux constituant la grappe sont reliés par la ligne externe 58 qui relie le terminal maître 1 à un ordinateur éloigné (non représenté).Il en résulte que les opérateurs affectés aux postes de travail 31 à 35 utilisent les mêmes manoeuvres de claviers pour accéder aux périphériques communs 55 à 57 et pour se connecter à la ligne externe 58. Ceci apporte l'avantage d'assurer une grande souplesse d'emploi des opérateurs par rapport aux postes de travail. Cette souplesse d'emploi consiste dans la possibilité de déplacer les opérateurs d'un poste de travail à un autre sans qu'il soit nécessaire que ces opérateurs apprennent des procédures différentes. On décrira maintenant en se reportant aux figures 1 et 6 la phase d'initialisation de la grappe de terminaux suivant l'invention. Le support d'enregistrement de la mémoire externe (par exemple du type à disque magnétique) est subdivisé logiquement en bloc de programmes associés aux terminaux 1 à 4 constituant la grappe. En outre, il comporte un programme d'initialisation commun à tous les terminaux, qui est indiqué par le sigle IPL et qui est contenu dans la zone 70 du support. Finalement, une zone 72 est réservée aux bibliothèques de données (ou dossiers). Les zones réservées aux terminaux 1 à 4 sont constituées par une première partie (zones 170, 200, 220, 250) qui contient les programmes constituant le système opératif appelé MONITEUR. Il ressort de la figure 6 qu'il existe autant de programmes MONITEUR qu'il existe de terminaux dans la grappe. Ceci est nécessaire parce que la configuration de chaque MONITEUR dépend étroitement des éléments matériels constituant le système. Le deuxième partie des zones réservées aux terminaux 1 à 4 est constituée par les programmes applicatifs. En particulier, la zone 180 réservée au terminal maître contient un programme applicatif de concentration PAC et la zone 190 un programme applicatif de travail PAL associé aux périphériques qui constituent le poste de travail 31 du terminal 1. La zone 210 réservée au terminal simple 2 contient le PAL associé au poste de travail 32. Les zones 230 et 240 contiennent des PAL associés aux postes de travail 33 et 34 du biterminal esclave 3. La zone 260 contient le PAC associé au poste de travail 35 du terminal simple 4. Naturellement, la structure et le nombre de zones réservées aux terminaux (indiqué sur la figure 6) varie avec le nombre et le type des terminaux qui constituent la grappe. En particulier, par exemple, si les terminaux 2 et 4 de la figure 1 sont du type comprenant deux postes de travail, les zones 210 et 260 de la figure 6 contiendront deux PAL au lieu d'un seul. Dans ce cas, le MONITEUR enregistré respectivement dans la zone 200 ou dans la zone 250 sera également du type adapté à la gestion de deux programmes PAL au lieu d'être du type adapté à la gestion d'un seul programme. Les séquences d'initialisation sont rendues complètement automatiques par un programme de chargement (appelé LOADER) enregistré en permanence dans les mémoires uniquement à lecture (ROM) 9 à 12. En particulier, le programme de chargement enregistré dans la mémoire ROM 9 est activé au moment de l'allumage du terminal 1 et charge dans la mémoire RAM 13 le programme de chargement général IPL enregistré dans la zone 70 de la figure 3. Le programme IPL est aussitôt activé et, à son tour, il provoque le chargement du MONITEUR dans la zone 17 de la mémoire RAM 13. Le moniteur est lu par la zone 170 de la mémoire externe de la figure 6 et, des qu'il a été transféré dans la mémoire RAM 13, il est aussitôt activé et, à son tour, il charge dans la RAM 13 le PAC 180 et le PAL 190 de la figure 6. Le PAL 190 est activé des qu'il a été entièrement chargé dans la RAM 13 et, par conséquent, le terminal 1 est prêt à travailler correctement. En outre, le PAC 18 est en mesure de répondre à tout moment aux messages envoyés par les terminaux 2 à 4 sur la ligne interne de communication 59.Au moment de l'allumage de l'un quelconque des terminaux 2 à 4, se produit également l'activation du programme LOADER correspondant qui est contenu dans la mémoire ROM associée à ce terminal et qui est l'une des mémoires ROM 10 à 12. Les programmes LOADER enregistrés dans les mémoires ROM 10 à 12 diffèrent du programme LOADER enregistré dans les mémoires ROM 9 en ce sens qu'ils contiennent un sous-programme adapté pour la gestion de la ligne interne 59. Ce sous-programme est indiqué sur la figure 11 et il est nécessaire, en raison du fait que le chargement du bloc de programme associé à ce programme dans la mémoire de l'un des terminaux 1 à 4 exige la transmission d'#nformations par la ligne 59. On peut donc dire en résumé que le LOADER de l'un des terminaux 2 à 4, dès que ce terminal a été activé par la touche d'allumage, envoie sur la ligne 59 une demande de chargement de programmes. Le MONITEUR 17 reçoit la demande et recherche sur le support magnétique de la figure 6 le bloc de programmes relatif au terminal qui a fait la demande. Par exemple, si c'est le terminal 2,la région du support qui est sélectionnée est celle qui comprend les zones 200 et 210 de la figure 6. Ensuite, le MONITEUR 17 lit le programme MONITEUR ESCLAVE qu'il extrait de la zone 200 et il le charge dans la zone 20 du terminal 2 par la ligne interne 59. Le MONITEUR 20 est aussitôt activé et commence à lire le PAL dans la zone 210 de la mémoire externe et à le transférer dans la zone 21 des mémoires de travail.Dès que le PAL a été entièrement transféré dans la zone 21 de la mémoire 14, il est activé et, ensuite le terminal 2 commence son travail L'initialisation de l'un-quelconque des terminaux esclaves 3 ou 4 se produit de la même façon que l'on a décrit à propos du terminal 2. En particulier, dans le cas du terminal 3 qui contient les deux postes de travail 33 et 34, l'opération de chargement du PAL dans la mémoire RAM 15 est répétée deux fois avant que l'initialisation ne soit achevée. La première fois, le PAL chargé est celui lu dans la zone 230 du support. Dès qu'il a été transféré dans la zone 23 de la mémoire RAM 15, le PAL est aussitôt activé- et le terminal 3 commence à travailler.A ce moment, le MONITEUR mémorisé précédemment dans la zone 22 active le mécanisme de labi- programmation décrit plus haut et charge dans la zone 24 de la mémoire RAM 15 le PAL lu dans la zone 240 de la mémoire externe. On décrira maintenant-en regard des figures 7 à 11, le mécanisme d'initialisation d'un terminal du type esclave (2 à 4). Les figures 7 à 10 représentent les divers types de messages qui sont échangés entre le maître 1 et l'un des esclaves 2 à 4. Ces messages sont échangés avec les techniques de contrôle des questions éventuelles posées par les terminaux et de sélection appelées généralement techniques de POLLING-SELECTING, bien connue de l'homme de l'art. A cette technique appartiennent les carac tères de contrôle des messages indiqués par les sigles SOH, DLE, STX, ETB, ETX sur les figures 7 à 10 et par conséquent, on ntexdquewa pas ces caractères mais le lecteur pourra se référer aux normes ECMA STANDARD FOR BASIC MODE CONTROL PROCEDURES FOR DATA COMMUNICATION SYSTEMS publiées en Mai 1968. On expliquera au contraire les autres caractères des figures7, 8 et 10. Le caractère 74 représente le nom matériel du terminal esclave. Le caractère 75 est utilisé comme compteur de messages envoyés par le maître dans le cas de la figure 8 tandis qu'il n'a pas de signification dans le cas des figures 7 et 10. Le caractère 76 définit le type de message et peut prendre les significations indiquées au tableau 1. TABLEAU 1 NO Fig. Code hexadécimal Code binaire Type de message 10 CO 11000000 Fin de liaison 7 DO 1101 0000 Demande d'ini tialisation 8 EO 1110 0000 ; Donnée ou pro gramme à enre gistrer dans la RAM Les caractères de la zone 77 représentent l'adresse de la mémoire RAM dans laquelle commence le chargement du bloc de données indiqué par le message de la figure 9 tandis que les caractères de la zone 78 spécifient la longueur (en nombre de caractères) qui doit être réservée dans la mémoire RAM pour la mémorisation des données incluses dans le message de la figure 9. Le message de la figure 7 est envoyé après que la source de l'image a été activée par l'un des terminaux esclaves 2 à 4 et il a la signification de demande d'initialisation. Ce message est envoyé à une procédure de POLLING. A cette procédure, le terminal maître 1 répond en envoyant un SELECTING accompagné du message indiqué sur la figure 1, qui indique les informations nécessaires à ltenregistrement du message qui suivra dans la mémoire RAM du terminal esclave à initialiser. Le message suivant est du type indiqué sur la figure 9 et il est immédiatement mémorisé dans la mémoire RAM.La séquence de messages du type "à mémoire" (figure 8) et "données" (figure 9) se poursuit jusqu'à ce que tous les modules constituant le système opératif (programmes de MONITEUR) aient été chargées dans la mémoire RAM du terminal esclave qui a envoyé la demande d'initialisation (figure 7). A ce point, le terminal 1 émet le message de fin indiqué sur la figure 10 et qui termine l'initialisation. Les autres phases de chargement du (ou-des) programme(s) applicatif(s) (PAL) sont exécutées automatiquement par le MONITEUR chargé dans la mémoire RAM. Le MONITEUR a encore pour fonction de gérer le mécanisme delabi-programmation nécessaire au fonctionnement des terminaux esclaves qui ont deux postes de travail associés (du type du terminal 3). On décrira maintenant en se reportant à la figure 11, les phases'd'initialisation d'un terminal esclave 2 à 4 qui comportent la gestion de la ligne de communication 59 qui a été exécutée par la procédure de POLLING SELECTING. Au moment de l'allumage de l'un des terminaux 2 à 4, le programme de la figure 11 est activé et, au moyen du bloc 90, ce programme prépare la ligne de communication 59 à établir la liaison avec le terminal 1. Ensuite, le bloc 91 est exécuté et ce bloc émet les ordres de liaison physique avec la ligne 59 et la demande de mise en marche du MONITEUR maître 17 (figure 2). Ensuite,se produit l'exécution du bloc 92 qui envoie l'ordre au contrôleur de ligne (non représente qui permet d'établir le dialogue entre le terminal esclave et le terminal maître 1. Le bloc 93 déclenche la procédure de POLLING en envoyant au terminal maître 1 le message indiqué sur la figure 7. Ainsi qu'on l'a indiqué plus haut, le message de la figure 7 constitue une demande d'initialisation renvoyée au MONITEUR du terminal 1. Le code Al constitue le nom du terminal esclave qui envoie la demande d'initialisation. Ce nom A1 est enregistré en permanence dans un registre (non représenté) de chaque terminal esclave et il est utilisé dans chaque message de POLLING qui est envoyé au terminal 1. Le code DO enregistré dans la zone 76, ainsi qu'on l'a indiqué plus haut, informe le MONITEUR maître du terminal 1 qu'une demande d'initialisation émise par un terminal esclave est en cours. Le bloc 94 habilite l'exécution de la procédure de SELECTING et charge dans une cellule de la mémoire RAM 13 (non représentée) le contenu hexadécimal " FO". Cette cellule est utilisée comme compteur de messages et elle est ensuite comparée avec le contenu de la zone 75 de la figure 8. Le bloc 95 habilite le terminal esclave à la réception du message provenant du terminal 1. Le texte de ce message est indiqué sur la figure 8 et, dans ce message, la zone 74 contient le nom du terminal esclave (A2) destinataire du message. Ce nom est différent de celui utilisé pendant la procédure de POLLING et il est également enregistré en permanence dans un registre (non représenté). Le terminal esclave accepte le message uniquement si le domaine A2 du message correspond à celui préalablement enregistré dans le registre correspondant. Le domaine 76 contient le nombre hexadécimal EO qui spécifie la destination du message qui suit à la mémoire du terminal esclave. Le domaine 76 est utilisé par le carrefour logique 96 pour distinguer les messages dirigés vers la mémoire (code EO) de ceux qui indiquent la fin de la liaison-entre maître et esclave (code CO) Le bloc 97 reçoit le message de données de la figure 9 et le transfère dans la mémoire RAM à l'adresse Il comprise dans le message de la figure 8 qui a été reçu précédemment. Le bloc 100 augmente le contenu de la cellule de la mémoire RAM (non représentée) qui est utilisée comme compteur des messages reçus. Ensuite, du bloc 100 on saute au bloc 95 pour la réception d'un nouveau message. Si le message arrivant contient des données ou programmes à enregistrer dans la mémoire, la séquence de bloc 96, 97 et 100 se répète et les données ou programmes contenus dans le message de la figure 6 sont mémorisés dans la mémoire du terminal esclave. Si, au contraire, le message arrivant indique la fin de la liaison (code CO), le bloc 93 est exécuté, ce bloc ayant pour fonction de lancer le programme chargé. Finalement, le bloc 99 déconnecte le terminal esclave de la ligne de communication 59. Il ressort clairement de ce qui a été indiqué plus haut que la grappe de terminaux suivant l'invention permet de construire un ensemble (grappe) de terminaux intelligents qui travaille de façon analogue à la grappe formée par un concentrateur et une multiplicité de postes de travail. Cette possibilité est obtenue par utilisation d'une mémoire de masse reliée au terminal maître qui contient un ensemble de programmes destinés à spécialiser les terminaux suivant les fonctions qu'on exige de ces derniers et en fonction des unités périphériques locales qui sont reliées à ces programmes. Finalement,l'initialisation et le chargement des programmes sur les divers terminaux de la grappe est exécutée automatiquement lorsqu'on active la touche d'allumage. Ceci est possible en raison du fait que la mémoire permanente des terminaux esclaves 2 à 4 contient un programme en mesure de gérer le dialogue avec le terminal maître par la ligne de communication 59. Il est évident que l'homme de l'art pourra apporter diverses modifications de détail sans pour cela sortir du domaine de l'invention. REVENDICATIONS 1.- Grappe de terminaux reliée par une ligne de communication, chacun de ces terminaux comprenant une mémoire de travail destinée à contenir des données et des programmes, une unité centrale destinée à exécuter sur lesdites données les élaborations commandées par les programmes, une multiplicité d'unités périphériques reliées à ladite unité centrale pour introduire des données et programmes dans ladite mémoire et prélever des données dans cette mémoire, cette grappe étant caractérisée en ce qu'un terminal prédéterminé de ladite grappe comprend au moins une mémoire de masse contenant une multiplicité de programmes opératifs adaptés pour définir le système opératif dudit terminal prédéterminé et de chacun des autres terminaux de ladite grappe t ladite mémoire de masse contient en outre une multiplicité de programmes applicatifs appropriés pour définir les fonctions que l'on peut exiger de chacun des terminaux et des périphériques associés à ces terminaux, ledit terminal prédéterminé comprend des moyens pour gérer le transfert de données et programmes entre ladite mémoire de masse et chacun des terminaux de ladite grappe au moyen de ladite ligne de commu nication. 2.- Grappe de terminaux suivant la revendication 1, dans laquelle ledit terminal prédéterminé est relié å un ordinateur éloigné, cette grappe étant caractérisée en ce que ledit terminal prédéterminé est adapté pour gérer le transfert des données et programmes entre chacun desdits terminaux et ledit ordinateur éloigné. 3.- Grappe de terminaux selon la revendication 1. dans laquelle chacun des terminaux est adapté pour exécuter simultanément deux programmes, caractérisée en ce qu'elle comprend s - des moyens adaptés pour commander le transfert de données et programmes entre les terminaux de ladite grappe et ladite mémoire de masse, et ce, à partir d'un programme de concentration t - des moyens pour associer à un groupe d'unités périphériques locales dudit terminal prédéterminé, un programme applicatif, en vue de son exécution. 4.- Grappe de terminaux selon la revendication 3, dans laquelle chacun desdits terminaux restants est adapté pour exécuter simultanément un ou deux programmes, caractérisée en ce qu'elle comprend des moyens pour associer à un ou deux groupes d'unités périphériques locales desdits terminaux restants, un ou deux programmes applicatifs, en vue de leur exécution par lesdits terminaux restants ; lesdits groupes d'unités périphériques étant organisés à poste de travail. 5.- Grappe de terminaux suivant la. revendication 1, dans laquelle lesdits terminaux restants contiennent une mémoire uniquement à lecture, cette grappe étant caractérisée en ce que ladite mémoire uniquement A lecture contient un programme de chargement des programmes qui constituent le système opératifs dudit terminal, ledit programme étant adapté pour dialoguer avec ledit terminal prédéterminé par 1'intermédiaire de ladite ligne de communication.