Brevet FR2819599A1 — publié le 20020719

Procédé et système pour coordonner des vues d'écran dans un environnement informatique collaboratif La présente invention concerne de manière générale le domaine des systèmes et environnements informatiques collaboratifs. Plus particulièrement, l'invention concerne une technique de partage de vues sur des écrans entre un ordinateur commandé et un ordinateur de commande dans un environnement collaboratif o une application produisant des vues d'écran fonctionne sur un ordinateur commandé. Toute une gamme d'applications et de techniques informati- ques sont connues et utilisées pour recevoir et afficher des écrans, typiquement employés comme interfaces utilisateur graphiques. Dans les navigateurs Internet conventionnels, par exemple, les écrans sont définis par du code qui est marqué pour représenter des caractéristi- ques telles que le placement, la couleur, le texte, les polices, et ainsi de suite. D'autres marques peuvent se rapporter à des liens pour des éléments graphiques, tels que des images et des icônes. Quand un uti- S15 lisateur accède à une page, une application, qui typiquement tourne sur l'ordinateur de l'utilisateur, envoie des instructions qui sont interpré- tées par un ordinateur en communication pour transmettre le code qui définit les écrans. Quand des applications sont utilisées localement sur l'ordinateur de l'utilisateur, comme des applications de traitement de texte, des applications de tableur, et toute autre application employant une interface utilisateur, le code d'application en lui-même définit généralement les écrans d'interface utilisateur, y compris le texte ou les images affichés, les outils d'interface, tels que les boutons et les menus, et ainsi de suite. Les applications fonctionnant sur un ordinateur personnel ou sur une station de travail sont généralement adaptées pour détecter les événements d'entrée, tels que les clics de souris et les entrées effec- tuées au clavier, pour traiter ou manipuler les données et instructions de l'application en fonction des souhaits de l'utilisateur. Ainsi, lorsqu'un écran d'interface utilisateur graphique comporte un bouton virtuel en un emplacement défini, un clic sur ce bouton virtuel crée une instruction qui peut être interprétée par l'application en fonction du code qui définit l'écran, dans cet exemple particulier, le bouton sur lequel l'utilisateur a cliqué. Une large gamme de ces interfaces utilisa- teur graphiques ont été développées et sont actuellement en service pour commander une application au niveau d'une station de travail locale ou pour commander une interface et une application o l'inter- face et l'application sont en des emplacements différents. Dans un environnement informatique collaboratif, une appli- cation fonctionne sur un premier ordinateur, et un deuxième ordinateur surveille les événements d'interface se produisant sur le premier ordi- nateur. Ces environnements collaboratifs sont utilisés dans un certain nombre de configurations, par exemple pour effectuer de la formation, du dépannage, et ainsi de suite. En général, il est souvent utile que le premier ordinateur soit un ordinateur commandé, un deuxième ordina- teur ou ordinateur distant étant un ordinateur de commande. L'ordina- teur de commande peut alors devenir la source d'instructions pour l'application qui fonctionne sur l'ordinateur commandé. Par exemple, dans un environnement de formation, un formateur ou un expert peut faire une démonstration de l'utilisation de certaines fonctions d'une application en produisant des entrées d'instruction sur l'ordinateur de commande, tandis que l'application en elle-même fonctionne sur l'ordi- nateur commandé. L'utilisateur de l'ordinateur commandé, typiquement une personne nécessitant de la formation, peut visionner les écrans résultant des entrées de l'ordinateur de commande sur l'ordinateur commandé. Lorsqu'on le souhaite, l'utilisateur de l'ordinateur com- mandé peut aussi produire des entrées qui peuvent être détectées par le formateur sur l'ordinateur de commande. Des modes d'utilisation simi- laires sont courants dans les situations de dépannage o un technicien ou un expert peut avoir besoin de prendre le contrôle d'une station de travail d'un utilisateur ou d'un client pour évaluer les problèmes ou les phénomènes anormaux constatés par l'utilisateur. Le lieu o une application fonctionne dans un environnement collaboratif peut aider à déterminer la meilleure solution pour échan- ger des écrans d'interface. Par exemple, dans un environnement de jeu, des techniques de dédoublement sont couramment employées basées sur l'anticipation des changements dans une application, l'application étant en cours d'utilisation par tous les ordinateurs coopérant dans un jeu en temps réel ou proche du temps réel. De manière tout à fait dif- férente de ces situations, les environnements collaboratifs permettent typiquement à un seul ordinateur de faire tourner une application, un ou plusieurs ordinateurs surveillant simplement les écrans d'interface produits par l'application, et, lorsque cela est souhaité, produisant des entrées pour l'application qui fonctionne sur l'ordinateur commandé. Il est à noter que, bien qu'il soit fait référence ici à une application tour- nant sur un ordinateur commandé, en réalité, de telles applications peuvent êtres résidentes et exécutées entièrement ou partiellement par un processeur situé physiquement au niveau de l'ordinateur commandé ou à distance de l'ordinateur commandé. Toutefois, l'application n'est typiquement pas mise en marche au niveau de l'ordinateur de com- mande. Dans les environnements collaboratifs, une grosse difficulté consiste à assurer une transmission rapide et efficace de l'information affichée par écrans avec l'application que fait fonctionner un ordina- teur commandé. Etant donné que l'ordinateur de commande n'effectue pas une interface directe avec l'application, l'écran, ou une partie de l'écran affiché sur l'ordinateur commandé est typiquement capturé et transmis à l'ordinateur de commande pour coordonner les vues et pour permettre à l'utilisateur de l'ordinateur de commande d'assurer une interface précise avec l'application. Dans les cas o ces écrans com- portent de grandes quantités de données, cependant, les captures d'écran répétitives de ce type peuvent nécessiter des bandes passantes de taille significative. Ceci est acceptable si la bande passante dispo- nible est suffisamment large, ou si la quantité de données nécessaires peut être réduite d'une autre manière, mais si ce n'est pas le cas, il peut se produire une réduction significative des performances quand la bande passante est plus limitée et que les écrans sont relativement volumineux. Il existe par conséquent un besoin pour une technique amélio- rée de communication de données d'écran entre ordinateurs comman- dés et de commande dans un environnement informatique collaboratif. Il existe actuellement un besoin particulier pour une technique qui peut permettre une mise à jour rapide des écrans sur un ordinateur de commande lorsque la bande passante est assez limitée comparé à la quantité de données définissant les écrans d'interface. La présente invention propose une technique de coordination de vues d'écran conçue pour répondre à ces besoins. Cette technique peut être utilisée dans une grande gamme de situations, mais elle est particulièrement bien adaptée à une utilisation avec des ordinateurs de commande éloignés d'ordinateurs commandés, comme dans des situa- tions de formation ou de dépannage. En outre, cette technique peut être utilisée avec n'importe quelle application adaptée, ou avec un cer- tain nombre d'applications fonctionnant en même temps sur un ordina- teur commandé, les applications étant soit résidentes et fonctionnant sur l'ordinateur commandé, soit accessibles par l'ordinateur com- mandé, comme par exemple dans les systèmes informatiques en réseau. Bien que cette technique soit très bien adaptée à des situations dans lesquelles un seul ordinateur de commande est couplé à un ordinateur commandé, elle peut aussi bien être utilisée dans des situations impli- quant plusieurs ordinateurs, par exemple plusieurs stations d'entrée avec un seul ordinateur commandé produisant les écrans d'affichage. Cette technique fait appel à une nouvelle approche de la mise en antémémoire dans laquelle des blocs logiques choisis d'un écran d'interface utilisateur graphique sont identifiés et désignés par un ordinateur commandé, et les données d'écran correspondantes sont mises en antémémoire à la fois par l'ordinateur commandé et par l'ordinateur de commande. Les données mises en antémémoire sont alors employées par l'ordinateur de commande pour afficher rapide- ment les blocs désignés, par exemple pour déplacer des fenêtres sur les deux écrans, présenter des applications sous forme d'icônes, manipuler des dispositifs d'entrée virtuels tels que des boutons, et ainsi de suite. Etant donné que les événements d'entrée sont produits sur l'ordinateur de commande et transmis à l'ordinateur commandé, diverses parties de l'écran vont être identifiées et mises en antémémoire jusqu'à ce que tous les blocs utiles choisis par ces événements d'entrée au niveau de l'ordinateur de commande aient été effectivement mis en antémémoire. Des informations d'arrière-plan peuvent être transmises, selon les sou- haits, pour compléter les données disponibles dans l'ordinateur de commande pour l'affichage, par exemple lorsque des fenêtres sont déplacées. Ainsi, la quantité de données transférées entre l'ordinateur de commande et l'ordinateur commandé pour définir les écrans à affi- cher sur l'ordinateur de commande est réduite de manière significative, les données d'événements d'entrée étant transmises à l'ordinateur com- mandé et certaines données de définition d'écran et données de dési- gnation d'antémémoire étant retransmises par l'ordinateur commandé à l'ordinateur de commande en réponse à ces événements. Dans un environnement collaboratif, la technique peut per- mettre à plusieurs ordinateurs de recevoir des données représentatives des événements d'entrée, et plus particulièrement, des affichages et blocs d'écran pour une mise en antémémoire appropriée. Ainsi, un ou plusieurs ordinateurs peuvent servir d'ordinateurs de commande, les ordinateurs commandés produisant les écrans résultants en fonction des événements d'entrée effectués sur un ou plusieurs ordinateurs de commande ainsi que sur l'ordinateur commandé. Selon un premier aspect, la présente invention propose un procédé pour commander des opérations sur un ordinateur commandé via un ordinateur de commande dans un environnement informatique collaboratif, comprenant les étapes consistant à produire un affichage d'écran au niveau d'un ordinateur commandé basé sur un programme que fait fonctionner l'ordinateur commandé, transmettre des données représentatives de l'affichage d'écran à un ordinateur de commande, transmettre des données d'événement d'entrée représentatives d'un évé- nement d'entrée, de l'ordinateur de commande à l'ordinateur com- mandé, identifier un bloc logique de l'affichage d'écran affecté par l'événement d'entrée au niveau de l'ordinateur commandé en se basant sur le programme et sur les données d'événement d'entrée, transmettre des données correspondant au bloc logique, de l'ordinateur commandé à l'ordinateur de commande, et mettre en antémémoire les données d'affichage pour au moins le bloc logique au niveau de l'ordinateur de commande. Selon un deuxième aspect, la présente invention propose un procédé pour commander le fonctionnement d'un ordinateur commandé via un ordinateur de commande dans un environnement collaboratif, comprenant les étapes consistant à afficher un écran d'interface au niveau d'un ordinateur commandé basé sur un programme que fait fonctionner l'ordinateur commandé, transmettre des données d'écran représentatives de l'écran pour les afficher sur un ordinateur de com- mande couplé à l'ordinateur commandé via un réseau, transmettre des données d'événement d'entrée, de l'ordinateur de commande à l'ordina- teur commandé via le réseau, désigner une partie de l'écran au niveau de l'ordinateur commandé en se basant sur les données d'événement d'entrée et sur le programme, mettre en antémémoire cette partie de l'écran au niveau des ordinateurs de commande et commandé, et exé- cuter une instruction basée sur les données d'événement d'entrée. Selon un troisième aspect, la présente invention propose un système informatique collaboratif comprenant un ordinateur commandé configuré pour faire fonctionner un programme et pour afficher un écran d'interface utilisateur basé sur le programme, un ordinateur de commande relié à l'ordinateur commandé via un réseau, l'ordinateur de commande recevant des données d'écran via le réseau pour l'affichage de l'écran d'interface, une mémoire cache couplée à l'ordinateur de commande et configurée pour la mise en antémémoire de parties de l'écran d'interface identifiées par l'ordinateur commandé basées sur des événements d'entrée qui se produisent au niveau de l'ordinateur de commande et basées sur le programme. La présente invention sera mieux comprise à la lecture de la description détaillée suivante, faite en référence aux dessins d'accom- pagnement, dans lesquels: la figure 1 est une représentation schématique de deux sta- tions de travail informatiques couplées dans un environnement colla- boratif et employant des aspects de la présente technique; la figure 2 est une représentation schématique simplifiée du système illustré en figure 1, dans lequel une instruction de mise en icônes est entrée au niveau de l'ordinateur de commande; la figure 3 est une représentation schématique similaire à celle de la figure 2, o une instruction de déplacement de fenêtre est entrée par l'ordinateur de commande; la figure 4 est un organigramme illustrant une logique de commande donnée à titre d'exemple dans l'exécution de la mise en antémémoire et des opérations de transmission de données de la pré- sente technique; la figure 5 est une représentation schématique d'un environ- nement collaboratif similaire à celui illustré dans les figures précéden- tes, mais dans lequel deux ordinateurs de commande sont couplés à un ordinateur commandé, via un réseau; et la figure 6 est une représentation schématique d'une mise en oeuvre, donnée à titre d'exemple, de la présente technique dans une application de diagnostic médical o un ordinateur commandé est directement couplé à un système d'imagerie de diagnostic médical et o la technique est employée pour une formation ou à des fins de dépannage. En se référant à présent à la figure 1, un système 10 est illus- tré pour fournir des écrans d'affichage utilisés dans la commande d'un ordinateur via un autre système informatique. Dans le système illustré, un système informatique commandé 12 est relié à un système informa- tique de commande 14. Les systèmes informatiques commandé et de commande peuvent comporter n'importe quel ordinateur adapté employant diverses plateformes matérielles, logicielles et micropro- grammées. Dans un mode de réalisation actuellement envisagé, par exemple, les systèmes informatiques comprennent des stations de tra- vail qui fonctionnent sur une plateforme UNIX . Cependant, n'importe quelle autre plateforme adaptée peut être employée, y com- pris Solaris(, IRIX , LINUX et ainsi de suite. Le système informatique commandé 12 comporte ainsi une station de travail 16, un ou plusieurs moniteurs 18, et divers disposi- tifs d'entrée, tels qu'un clavier classique 20 et une souris 22. Un sys- tème d'exploitation et des applications logicielles fonctionnant sur le système informatique commandé 12, par exemple via une ou plusieurs unités centrales de la station de travail 16, sont ainsi interfacés via les dispositifs d'entrée et le moniteur. Ces applications, globalement désignées par la référence numéro 24 dans la figure 1, peuvent inclure n'importe quelle application adaptée, telles que des applications de commande de machine ou de système, des applications de traitement de données, des tableurs, des applications d'échange de données, des applications de visionnage d'images, des navigateurs, et ainsi de suite. Les applications produisent un ou plusieurs écrans d'affichage pouvant être vus sur le moniteur 18 et qui sont transmis au système informati- que de commande 14 comme décrit ci-dessous. Il est à noter que les applications 24 qui sont utilisées par le système informatique com- mandé 12 peuvent, en pratique, être résidentes et accessibles en mémoire directement u niveau de la station de travail, ou bien elles peuvent être prévues en des lieux éloignés de la station de travail, par exemple sur des réseaux locaux (ou réseaux LAN) ou des réseaux d'entreprise étendus (ou réseaux WAN). De même, le traitement exé- cuté pour produire les écrans d'interface utilisateur et pour manipuler ces écrans en fonction des entrées d'utilisateur peut être exécuté dans la station de travail 16 ou dans divers autres circuits de traitement reliés à la station de travail. En général, cependant, lorsque l'on fait référence ici aux applications qui fonctionnent sur le système informa- tique commandé, n'importe quelle combinaison appropriée de stockage et de traitement peut être mise en oeuvre par laquelle un opérateur au niveau du système informatique commandé manipulerait normalement le programme via les dispositifs d'entrée 20 et 22 et par référence aux écrans d'interface utilisateur affichés sur le moniteur 18. En plus de toutes les mémoires de type ROM (mémoire morte), RAM (mémoire vive), mémoire optique ou toute autre mémoire adaptée à la station de travail 16, le système 12 comporte de la mémoire cache (ou antémémoire) 26 pour mémoriser les données décrivant les écrans affichés sur le moniteur 18. Ces affichages d'écran 28 peuvent généralement comporter n'importe quel type d'indi- ces d'interface utilisateur, typiquement du texte, des images, des icô- nes, et ainsi de suite. Dans un affichage typique d'interface utilisateur graphique, par exemple, une ou plusieurs fenêtres 30 vont être visibles en des parties de cadre de l'écran qui sont logiquement associées les unes aux autres, telles que des fenêtres générées par des applications ou des fonctions d'applications spécifiques. Le moniteur 28 affiche aussi un curseur d'entrée d'utilisateur 32 qui peut prendre n'importe quelle forme conventionnelle, et que l'on peut déplacer à l'écran via un des dispositifs d'entrée 20 ou 22. Il est à noter que les dispositifs d'entrée peuvent comprendre d'autres types d'outils, tels que des numé- riseurs, des sondes, des écrans ou afficheurs tactiles, et ainsi de suite. Dans le mode de réalisation illustré en figure 1, l'écran comporte aussi des affichages à icônes 34, qui peuvent être alignés le long d'un bord de l'écran d'affichage pour indiquer à l'utilisateur qu'une ou plusieurs applications est (sont) toujours active(s). L'ordinateur commandé 12 est relié à l'ordinateur de commande 14 via une connexion de réseau 36. Bien que n'importe quelle connexion de réseau puisse être employée, les connexions envisagées actuellement comprennent les réseaux locaux, les réseaux étendus, Intemet, les réseaux privés virtuels, et ainsi de suite. De plus, n'importe quel support adapté peut être employé pour la connexion de réseau, y compris les connexions dédiées par câble, les connexions sans fil, ou toute autre combinaison de ces supports ou d'autres supports. Le système informatique de commande 14 comprend une sta- tion de travail 38, un moniteur 40, et des dispositifs d'entrée 42 et 44. Comme noté précédemment, on peut employer n'importe quel système informatique adapté comme système informatique de commande, et ce dernier n'a pas besoin d'être identique ni même similaire au système informatique commandé. Le système informatique de commande 14 comprend divers types de mémoire, mais il comprend de préférence de la mémoire cache 46 pour mémoriser des parties de l'écran d'affichage tel que décrit ci-dessous. La présente technique permet à des écrans d'être affichés sur le moniteur 40 qui sont sensiblement les mêmes que les écrans affichés sur le moniteur 18 de sorte que le système informa- tique de commande 14 peut produire des entrées et des changements de O10 voie dans l'affichage du moniteur 18 du système informatique com- mandé afin de réguler le fonctionnement du système informatique commandé via les applications que ce dernier fait fonctionner. Ainsi, l'affichage d'écran 48 prévu sur l'écran 40 va être dérivé de celui visi- ble sur le moniteur 18, et va typiquement comprendre les mêmes fenê- tres 50 aux mêmes emplacements et avec les mêmes indices affichés dans ces fenêtres. Un curseur 52 est affiché sur le moniteur 40 de la station de travail de commande, mais peut être commandé de façon complètement indépendante par rapport au curseur 32 du système informatique commandé. Les figures 2 et 3 illustrent des opérations, données à titre d'exemple, qui servent de base pour la présente description de la com- mande mise en oeuvre entre les systèmes informatiques. Comme noté plus haut, les applications sont lancées par le système informatique commandé 12, mais elles peuvent être manipulées via le système informatique de commande 14. Dans l'exemple illustré schématiquement en figure 2, un affichage 54 est fourni sur les deux systèmes informatiques, cet affichage étant à l'origine produit par les applications lancées par le système infor- matique commandé. Dans cet exemple, la fenêtre d'application de l'affi- chage est munie d'icônes ou réduite à une icône comme représenté par les flèches 56. Dans la deuxième opération servant d'exemple, en figure 3, l'affichage 54 est déplacé d'un emplacement de l'écran à un autre, comme indiqué par les flèches 58. En général, la nature de l'opération consiste à fournir le même écran d'affichage sur le système informatique de com- mande que celui produit par les applications que fait tourner le système informatique commandé. Les entrées effectuées par l'opérateur sur le sys- tème informatique de commande sont alors transmises au système infor- matique commandé o elles sont interprétées et mises en oeuvre en fonc- tion de l'application. Quand l'entrée se traduit par un changement l'écran affiché sur le système informatique commandé, les informations concer- nant ce changement, y compris les données pour l'affichage sur les deux systèmes, sont retransmises au système informatique de commande pour changer son affichage de manière appropriée. Les parties de l'écran d'affichage qui sont logiquement groupées en fonction des applications que fait fonctionner le système informatique commandé sont ensuite progressivement mises en antémémoire pour faciliter les changements effectués dans les écrans, et pour réduire de façon significative les volumes de donnés qui sont transmis entre les systèmes au cours du travail de collaboration. La figure 4 représente une logique de commande, donnée à titre d'exemple, pour exécuter les opérations d'affichage d'écrans et de mise en antémémoire selon des aspects de la présente technique. Cette logique de commande, désignée de manière globale par la référence numéro 60, débute avec une capture d'écran, comme indiqué à l'étape 62. Comme indiqué plus haut, l'écran affiché sur le système informati- que commandé est typiquement produit par une ou plusieurs applica- tions que fait fonctionner ce système informatique. A l'étape 62, ensuite, l'écran est simplement "capturé" dans le système informatique commandé et les données définissant l'écran sont transmises au sys- tème informatique de commande via le réseau. A ce moment, les deux systèmes informatiques affichent des écrans similaires, et l'opérateur du système informatique de commande peut manipuler la position d'un curseur 52 (voir figure 1) ou bien il peut entrer n'importe quelle entrée souhaitée à partir de cette position du curseur ou de n'importe quel autre paramètre autorisé des dispositifs d'entrée. Lors de l'occurrence d'un événement d'entrée, tel qu'un clic de souris en une position de curseur souhaitée, ou l'actionnement d'une ou de plusieurs touches sur un clavier, un événement d'entrée est consigné, comme indiqué à l'étape 64 de la figure 4. Comme l'appré- cieront les personnes du métier, ces événements d'entrée sont codés en fonction des dispositifs d'entrée particuliers employés. Les signaux résultant du codage de l'événement d'entrée à l'étape 64 sont transmis, à l'étape 66, du système informatique de commande au système infor- matique commandé via le réseau. A l'étape 68, l'événement d'entrée est interprété par le système informatique commandé. En général, cette interprétation est basée non seulement sur la nature et le type d'événe- ment d'entrée, mais aussi sur la position du curseur 52 sur le système informatique de commande à l'instant de l'événement d'entrée, ou sur des données similaires, et sur la signification de cet événement dans les applications qui fonctionnent dans le système informatique com- mandé. En d'autres termes, l'événement d'entrée produit dans le sys- tème informatique de commande est interprété par le système informa- tique commandé comme si l'événement d'entrée s'était produit dans le système informatique commandé. Cette interprétation donne lieu à la définition d'une ou de plusieurs parties désignées de l'affichage présent sur le moniteur du système informatique commandé. Ces parties peuvent inclure des dispositifs d'entrée graphique, tels que des bou- tons virtuels, des fenêtres, des cadres d'écran, des zones d'affichage, des images spécifiques, du texte spécifique, et ainsi de suite. La partie correspondante de l'écran telle que définie par l'application particu- lière générant la partie logique est ensuite mise en antémémoire, comme indiqué à l'étape 70 de la figure 4. Ici encore, la mise en anté- mémoire exécutée à l'étape 70 va se traduire par le stockage d'une par- tie de l'écran dans la mémoire cache 26 (voir figure 1). A l'étape 72, les données représentant la partie de l'image mise en antémémoire à l'étape 70 sont transmises du système informa- tique commandé au système informatique de commande. Dans un exemple simple, les données transmises à l'étape 72 peuvent simple- ment comporter des coordonnées, des limites, ou des frontières simi- laires d'une partie de l'écran devant être groupées de façon logique et mises en antémémoire. Dans une interface utilisateur graphique, par exemple, ces frontières peuvent être définies par des cadres d'une fenêtre d'application, les limites ou les frontières autour d'un disposi- tif d'entrée graphique ou d'un bouton virtuel, et ainsi de suite. Avec les données définissant la partie mise en antémémoire de l'écran reçues par le système informatique de commande 14, la partie identi- que de l'écran est ensuite mise en antémémoire par le système infor- matique de commande, comme indiqué à l'étape 74. Il est à noter que quand certain types de parties d'écran sont mis en antémémoire à l'étape 74, les données décrivant d'autres parties de l'écran peuvent être transmises pour permettre l'achèvement de l'opération désirée. Par exemple, quand des opérations telles que cel- les illustrées sur les figures 2 et 3 doivent être exécutées, le système informatique de commande ne va pas à l'origine inclure les données définissant l'arrière-plan utilisé pour remplir les zones qui vont être libérées par la fenêtre mise sous forme d'icône ou déplacée. Ainsi, à l'étape 72, ces données d'arrière-plan peuvent être aussi transmises pour permettre le remplissage de l'arrière-plan lors de l'exécution de l'opération. A l'étape 76, on termine l'opération demandée, y compris la mise en icône de la figure 2, le déplacement de la figure 3, ou n'importe quel autre changement souhaité dans l'affichage d'écran résultant du code des applications fonctionnant sur le système infor- matique commandé. A l'étape 78, l'instruction réelle correspondant à l'événement d'entrée généré au niveau du système informatique de commande est exécutée par les applications du système informatique commandé. Les événements d'entrée suivants peuvent alors être faits et traités en retournant à l'étape 64 de la figure 4. Comme l'apprécieront les personnes du métier, la procédure qui précède permet au système informatique de commande d'afficher et de mettre en antémémoire des parties d'écran comme si les applica- tions tournaient sur le système informatique de commande, permettant de ce fait le contrôle des applications tournant sur le système informa- tique commandé. Cette technique est particulièrement bien adaptée aux environnements informatiques collaboratifs dans lesquels l'ordinateur de commande est utilisé pour permettre à l'opérateur d'effectuer de la formation ou du dépannage au niveau de l'ordinateur commandé. Comme décrit ci-dessous, cette technique peut être employée avec une pluralité d'ordinateurs de commande, afin de fournir une fonctionnalité similaire en plusieurs endroits. De plus, cette technique peut être appliquée dans des applications o l'ordinateur commandé est relié à un système de machine, par exemple pour la commande réelle du sys- tème. Dans ces situations, l'ordinateur de commande peut servir d'interface pour le service à distance, le dépannage à distance, et ainsi de suite. Comme l'apprécieront les personnes du métier, n'importe quel code de programmation et n'importe quelle plateforme adaptés peuvent être employés dans la présente technique. Dans une mise en oeuvre actuelle, on emploie une plateforme basée sur UNIX dans laquelle les événements sont postés en tant que commandes de serveur X. Les autres plateformes de système d'exploitation ont des mécanismes de publication d'événement similaires. Dans la plateforme basée sur UNIX (, les instructions de publication d'événement peuvent générale- ment être fournies dans un module d'essai X sur le serveur X. Egale- ment, dans la présente mise en oeuvre, l'ordinateur commandé surveille les entrées effectuées sur ses propres dispositifs d'entrée. La technique utilise une application de serveur qui est envoyée au client (c'est-à- dire à l'ordinateur commandé) et qui est capable de connaître ou de reconnaître le protocole de tampon de cadre et les instructions du ser- veur. Dans ce cas, en général, l'ordinateur de commande fournit sim- plement des indications des événements d'entrée à l'ordinateur com- mandé, les parties logiques de l'écran étant successivement mises en antémémoire pour améliorer la vitesse de transmission et la mise à jour des écrans, et pour réduire la charge de la bande passante. Comme noté plus haut, la présente technique peut être employée avec une pluralité de systèmes informatiques. Un scénario de ce type est représenté de façon schématique en figure 5. Comme montré en figure 5, le système comprendrait un premier système éloigné 80 qui sert d'ordina- teur de commande, et un deuxième système éloigné 82 qui sert de deuxième ordinateur de commande. Les systèmes éloignés sont couplés à l'ordinateur commandé 12 via un réseau, comme Internet. Comme précé- demment, les écrans fournis sur l'ordinateur commandé en fonction du programme que fait fonctionner l'ordinateur commandé sont capturés et transmis aux deux ordinateurs de commande 80 et 82 pour être affichés. Les entrées provenant des deux ordinateurs de commande sont transmises à l'ordinateur commandé o elles sont reçues et interprétées en fonction du type d'événement d'entrée et du programme que fait fonctionner l'ordi- nateur commandé. Comme dans l'exemple précédent, une partie logique de l'écran est alors identifiée et des instructions pour mettre en antémé- moire cette partie de l'écran sont retransmises de l'ordinateur commandé aux ordinateurs de commande. Ainsi, tous les ordinateurs du système maintiennent des vues d'écran similaires, la charge de la bande passante étant réduite grâce à la mise en antémémoire effectuée au niveau des deux ordinateurs de commande. Comme noté plus haut également, la présente technique peut être employée pour le dépannage ou la commande d'un système physique réel couplé à l'ordinateur commandé. A titre d'exemple, dans une situa- tion de diagnostic médical, il est possible d'accéder à un système d'image- rie de diagnostic médical et les paramètres concernant le fonctionnement du système peuvent être visualisés et modifiés à volonté par l'ordinateur de commande. Un scénario de ce type est illustré schématiquement en figure 6. Comme montré en figure 6, le système informatique commandé 12 est couplé à un système d'imagerie de diagnostic médical 84, tel qu'un système d'imagerie par résonance magnétique. Comme l'apprécieront les personnes de l'art, ces systèmes d'imagerie comportent typiquement un dispositif de "balayage" 86 conçu pour acquérir des données d'image en fonction d'un protocole préétabli et d'instructions d'examen fournis par un dispositif de commande 88 du système. Le système informatique com- * mandé 12 sert d'interface pour le système d'imagerie et permet l'entrée, par l'opérateur, de paramètres de fonctionnement, de réglages de fonc- tionnement, et ainsi de suite. Lorsque l'on souhaite effectuer de la forma- tion, du dépannage, ou lorsque l'on souhaite avoir le contrôle réel du sys- tème depuis un lieu éloigné, le système informatique commandé 12 peut être relié à un système de commande 14 via le réseau 36. Le système informatique de commande peut être situé, à titre d'exemple, à l'emplace- ment d'un fournisseur de services et être géré par des techniciens de ser- vice ou des experts en systèmes. Ainsi, par la mise en oeuvre de la techni- que décrite ci-dessus, les vues d'écran produites sur le système informati- que de commande sont acheminées via le système informatique de com- mande et les événements d'entrée au niveau du système informatique de commande servent à mettre progressivement en antémémoire des parties de l'écran pour réduire les charges de la bande passante et pour amé- liorer la réponse du système aux événements d'entrée. Bien que l'invention puisse faire l'objet de diverses modifica- tions et formes de variantes, des modes de réalisation spécifiques ont été montrés à titre d'exemple dans les dessins et ont été décrits en détail ici. Cependant, il est bien entendu que l'invention n'est pas destinée à être limitée aux formes particulières divulguées, mais qu'elle est destinée à couvrir toutes les modifications, formes équivalentes et variantes qui tombent dans l'esprit et la portée de l'invention telle que définie ici. REVENDICATIONS 1. Procédé pour commander des opérations sur un ordinateur commandé via un ordinateur de commande dans un environnement informatique collaboratif, caractérisé en ce qu'il comprend les étapes consistant à: produire un affichage d'écran (28) au niveau d'un ordinateur commandé (12) basé sur un programme que fait fonctionner l'ordina- teur commandé; transmettre des données représentatives de l'affichage d'écran (28) à un ordinateur de commande (14); transmettre (66) des données d'événement d'entrée représenta- tives d'un événement d'entrée, de l'ordinateur de commande (14) à l'ordinateur commandé (12); identifier (68) un bloc logique de l'affichage d'écran affecté par l'événement d'entrée au niveau de l'ordinateur commandé (12) en se basant sur le programme et sur les données d'événement d'entrée; transmettre (72) des données correspondant au bloc logique, de l'ordinateur commandé (12) à l'ordinateur de commande (14); et mettre en antémémoire (74) les données d'affichage pour au moins le bloc logique au niveau de l'ordinateur de commande (14). 2. Procédé selon la revendication 1, caractérisé en ce qu'il comprend l'étape consistant à mettre en antémémoire (70) au moins les données correspondant au bloc logique au niveau de l'ordinateur com- mandé (12). 3. Procédé selon la revendication 1, caractérisé en ce que les données correspondant au bloc logique incluent des données représen- tatives des coordonnées d'un périmètre (30) du bloc logique. 4. Procédé selon la revendication 1, caractérisé en ce que le programme est résident et fonctionne sur l'ordinateur commandé (12). 5. Procédé selon la revendication 1, caractérisé en ce que l'événement d'entrée comprend un signal produit sur un dispositif d'entrée (20, 22) d'opérateur. 6. Procédé selon la revendication 5, caractérisé en ce que le dispositif d'entrée d'opérateur comprend une souris d'ordinateur (22). 7. Procédé selon la revendication 1, caractérisé en ce que les données d'événement d'entrée comprennent un emplacement (32) à l'écran d'une entrée choisie par l'opérateur. 8. Procédé selon la revendication 1, caractérisé en ce qu'il comprend l'étape consistant à exécuter une instruction via l'ordinateur commandé (12) en fonction de l'événement d'entrée. 9. Procédé selon la revendication 1, caractérisé en ce que le bloc logique comprend une fenêtre d'affichage (50). 10. Procédé selon la revendication 1, caractérisé en ce que le bloc logique comprend un dispositif de commande graphique (34). 11. Procédé pour commander le fonctionnement d'un ordina- teur commandé via un ordinateur de commande dans un environnement collaboratif, caractérisé en ce qu'il comprend les étapes consistant à: afficher un écran d'interface (28) au niveau d'un ordinateur commandé (12) basé sur un programme que fait fonctionner l'ordina- teur commandé (12); transmettre des données d'écran représentatives de l'écran pour les afficher sur un ordinateur de commande (14) couplé à l'ordi- nateur commandé (12) via un réseau (36); transmettre (66) des données d'événement d'entrée, de l'ordi- nateur de commande (14) à l'ordinateur commandé (12) via le réseau (36); désigner (68) une partie de l'écran au niveau de l'ordinateur commandé (12) en se basant sur les données d'événement d'entrée et sur le programme; mettre en antémémoire (70, 74) cette partie de l'écran au niveau des ordinateurs de commande et commandé; et exécuter (78) une instruction basée sur les données d'événe- ment d'entrée. 12. Procédé selon la revendication 11, caractérisé en ce que les données d'événement d'entrée comprennent des données identifiant un emplacement d'un élément graphique (32) à l'écran. 13. Procédé selon la revendication 12, caractérisé en ce que la partie de l'écran (28) est désignée en se basant sur la fonctionnalité de la partie à l'emplacement telle que définie par le programme. 14. Procédé selon la revendication 11, caractérisé en ce que la partie de l'écran (28) est mise en antémémoire au niveau de l'ordina- teur de commande (14) en transmettant des données indiquant les limi- tes (50) de cette partie, de l'ordinateur commandé (12) à l'ordinateur de commande (14), et en capturant la partie de l'écran (28) à l'intérieur des limites. 15. Procédé selon la revendication 11, caractérisé en ce qu'il comprend l'étape consistant à transmettre, de l'ordinateur commandé (12) à l'ordinateur de commande (14), des données d'arrière-plan représentatives d'une partie d'un écran (28) sous cette partie. 16. Procédé selon la revendication 15, caractérisé en ce que l'instruction comprend le déplacement (58) de la partie, et en ce que les données d'arrière-plan sont référencées pour remplir une section de l'écran à partir de laquelle on déplace la partie. 17. Procédé selon la revendication 11, caractérisé en ce que la partie comprend une fenêtre d'affichage (50, 54). 18. Procédé selon la revendication 11, caractérisé en ce que la partie comprend un dispositif d'entrée graphique (32, 34). 19. Procédé selon la revendication 11, caractérisé en ce que le réseau (36) comprend le réseau Intemet. 20. Procédé de partage du contrôle d'un ordinateur commandé dans un environnement collaboratif, caractérisé en ce qu'il comprend les étapes consistant à: afficher un écran d'interface (28) au niveau d'un ordinateur commandé (12) basé sur un programme que fait fonctionner l'ordina- teur commandé (12); transmettre des données d'écran représentatives de l'écran (28) pour les afficher sur une pluralité d'ordinateurs de commande (80, 82) couplés à l'ordinateur commandé (12) via un réseau (36); transmettre des données d'événement d'entrée, d'au moins un des ordinateurs de commande (80, 82) à l'ordinateur commandé (12) via le réseau; désigner une partie de l'écran (28) au niveau de l'ordinateur commandé (12) en se basant sur les données d'événement d'entrée et sur le programme; mettre en antémémoire (70, 74) cette partie de l'écran au moins au niveau des ordinateurs de commande (80, 82); et exécuter (78) une instruction basée sur les données d'événe- ment d'entrée. 21. Procédé selon la revendication 20, caractérisé en ce que les données d'événement d'entrée comprennent des données identifiant un emplacement d'un élément graphique (32) à l'écran (28). 22. Procédé selon la revendication 20, caractérisé en ce que la partie de l'écran (28) est mise en antémémoire au niveau des ordina- teurs de commande (80, 82) en transmettant des données indiquant les limites (50) de cette partie, de l'ordinateur commandé (12) aux ordina- teurs de commande, et en capturant (62) la partie de l'écran à l'inté- rieur des limites. 23. Procédé selon la revendication 20, caractérisé en ce qu'il comprend l'étape consistant à transmettre, de l'ordinateur commandé (12) aux ordinateurs de commande (80, 82), des données d'arrière-plan représentatives d'une partie d'un écran sous cette partie. 24. Système informatique collaboratif, caractérisé en ce qu'il comprend: un ordinateur commandé (12) configuré pour faire fonction- ner un programme et pour afficher un écran (28) d'interface utilisateur basé sur le programme; un ordinateur de commande (14) relié à l'ordinateur com- mandé (12) via un réseau (36), l'ordinateur de commande recevant des données d'écran via le réseau pour l'affichage de l'écran d'interface; une mémoire cache (46) couplée à l'ordinateur de commande (14) et configurée pour la mise en antémémoire de parties de l'écran d'interface (28) identifiées par l'ordinateur commandé (12) basées sur des événements d'entrée qui se produisent au niveau de l'ordinateur de commande et basées sur le programme. 25. Système selon la revendication 24, caractérisé en ce l'ordinateur de commande (14) comprend un dispositif d'entrée (42, 44) et des données représentatives d'événements d'entrée effectués via le dispositif d'entrée sont transmises à l'ordinateur commandé (12) via le réseau (36) pour permettre l'identification des parties de k'écran d'interface (28). 26. Système selon la revendication 24, caractérisé en ce l'ordinateur commandé (12) comprend une mémoire cache (26) et est configuré pour mettre en antémémoire les parties de l'écran d'interface (28). 27. Système selon la revendication 24, caractérisé en ce que le programme est résident et fonctionne sur l'ordinateur commandé (12). 28. Système selon la revendication 24, caractérisé en ce l'ordinateur commandé (12) est couplé à un dispositif commandé (84), et en ce que les instructions correspondant aux événements d'entrée sont exécutées sur le dispositif commandé (84). 29. Système selon la revendication 24, caractérisé en ce qu'il comprend une pluralité d'ordinateurs de commande (80, 82) reliés à l'ordinateur commandé via le réseau (36), chaque ordinateur de com- mande comportant une mémoire cache pour mémoriser les parties de l'écran d'interface.