Brevet FR2587519A1 — publié le 19870320

La présente invention concerne un agencement de changement de mode destiné à être utilisé dans un système de machine virtuelle pour le changement des modes de fonctionnement du système. Dans la technique des systèmes de traitement de l'information ou des données, on connu déjà un système de machine virtuelle. A titre d'exemple récent, un système de machine virtuelle est décrit dans le brevet des Etats-Unis d'Amérique n0 4 456 954. Un tel système de machine virtuelle comporte généralement une multitude d'unités centrales réelles (UC). Dès l'établissement de l'une des unités centrales réelles comme unité centrale virtuelle, cette dernière est ensuite toujours employée en unité centrale virtuelle et jamais comme unité centrale réelle. En d'autres termes, les modes de fonctionnement des unités centrales réelles sont déterminés avant emploi. Après prise d'une décision de cette manière quant aux modes de fonctionnement du système de machine virtuelle, les utilisateurs doivent employer les unités centrales réelles et virtuelles dans les modes qui sont déterminés au préalable. Lorsqu'il n'y a qu'un seul utilisateur, celui-ci peut par conséquent devoir employer l'unité centrale virtuelle bien qu'il désire utiliser une unité centrale de traitement réelle. Cela se traduit par une augmentation du temps machine. Il en résulte que le système de machine virtuelle n'a pas toujours une efficacité de fonctionnement élevée. Un objet de la présente invention est par conséquent un agencement de changement de mode destiné à être utilisé dans un système de machine virtuelle en faisant en sorte que ce système de machine virtuelle ait toujours un degré de fonctionnement élevé. D'autres objets de la présente invention apparaîtront au fur et à mesure de la description. Selon la présente invention, on prévoit un agencement de changement de mode destiné à changer les modes de fonctionnement d'un système de machine virtuelle comprenant une multitude d'unités centrales réelles. Les modes comprennent un mode en machine non virtuelle pour l'exécution de systèmes d'exploitation réels sur l'une des unités centrales réelles, un mode en contrôle de machine virtuelle pour l'exécution de systèmes d'exploitation de commande sur des unités sélectionnées parmi les unités centrales réelles afin de commander les unités centrales réelles sélectionnées en tant qu'unités centrales virtuelles, et un mode en système d'exploitation de machine virtuelle pour l'exécution de systèmes d'exploitation de machine virtuelle sur les unités centrales virtuelles.L'agencement de changement de mode comprend une mémoire de mode afin de mémoriser des données de mode représentatives du mode en machine non virtuelle, du mode de contrôle de machine virtuelle, et du mode en système d'exploitation de machine virtuelle,un registre d'instructions de logiciel couplé à la mémoire de mode pour stocker une instruction de logiciel destinée à être utilisée dans la sélection de l'une des données de mode à titre de donnée sélectionnée, et un registre de mode couplé à la mémoire de mode pour stocker la donnée sélectionnée. La présente invention sera bien comprise lors de la description suivante faite en relation avec les dessins ci-joints dans lesquels La figure 1 est un diagramme permettant de décrire le fonctionnement d'un agencement de changement de mode selon la présente invention; La figure 2 est un diagramme représentant un logiciel pour emploi dans un système de machine virtuelle qui comprend l'agencement de changement de mode décrit en liaison avec la figure 1; et La figure 3 est un schéma sous forme de blocs d'un agencement de changement de mode selon un mode de réalisation de la présente invention. En liaison avec la figure 1, on décrira tout d'abord le fonctionnement d'un agencement de changement de mode selon la présente invention. L'agencement de changement de mode est destiné à être utilisé dans un système de machine virtuelle pour procéder au changement de ses modes de fonctionnement. Le système de machine virtuelle comprend une multitude d'unités centrales réelles (UC) qu'on illustrera ultérieurement. Dans le présent exemple, les modes de fonctionnement comprennent un mode en machine non virtuelle (MNV) pour l'exécution de systèmes d'exploitation réels sur l'une des unités centrales réelles, un mode en contrôle de machine virtuelle (CMV) pour l'exécution de systèmes d'exploitation de commande sur des unités sélectionnées parmi les unités centrales réelles afin de commander les unités centrales réelles sélectionnées à titre d'unités centrales virtuelles, et un mode en système d'exploitation de machine virtuelle (SEMV) pour l'exécution de systèmes d'exploitation de machine virtuelle sur les unités centrales virtuelles. Les unités sélectionnées parmi les unités centrales réelles peuvent ou non comprendre l'unité centrale réelle sur laquelle les systèmes d'exploitation réels ont jamais fonctionné. Le système de machine virtuelle comporte une première zone 11 de système d'exploitation pour les systèmes d'exploitation réels. Une seconde zone 12 de système d'exploitation concerne les systèmes d'exploitation de machine virtuelle. Une zone de programme 13 concerne des programmes de contrôle de machine virtuelle qui sont utilisés comme systèmes d'explo: tation de commande L'agencement de changement de mode comprend une mémoire de mode 16 afin de mémoriser des données de mode représentatives du mode en machine non virtuelle, du mode en contrôle de machine virtuelle et du mode en système d'exploitation de machine virtuelle. Un registre 17 d'instructions de logiciel est semblable à un registre d'instructions connu dans la technique et est couplé à la mémoire de mode 16. Une instruction de logiciel est choisie automatiquement ou d'une autre manière à un certain instant à partir d'un programme d'instructions et instaurée dans le registre 17 d'instructions de logiciel.Lorsqu'elle est chargée dans le registre 17, l'instruction du logiciel accède à la mémoire de mode 16 afin de sélectionner l'une des données de mode à titre de donnée sélectionnée. Un registre de mode 18 est couplé à la mémoire de mode 16 de manière à être chargé avec la donnée sélectionnée. De cette manière, la donnée sélection née détermine le mode dans lequel le système de machine virtuelle peut fonctionner pour un utilisateur. Plus particulièrement, supposons que la donnée sélec tionnée soit la donnée de mode représentative du mode en ma ckine-non virtuelle. Les systèmes d'exploitation réels stockés dans la première zone d'exploitation Il du système d'exploitation passent sur l'une des unités centrales réelles. Lorsque la donnée sélectionnée indique le mode en contrôle de machine virtuelle, les programmes de contrôle de machine virtuelle passent sur le système de machine virtuelle afin de commander les unités sélectionnées parmi les unités centrales réelles à titre de multitude d'unités centrales virtuelles. Les programmes de contrôle de machine virtuelle commandent les unités centrales virtuelles respectives. Lorsque le registre de mode 18 est ensuite chargé avec la donnée de mode représentative du mode en système d'exploitation de machine virtuelle, les systèmes d'exploitation de machine virtuelle de la seconde zone 12 du système d'exploitation passent sur les unités centrales virtuelles. En liaison avec la figure 2, un premier bloc de logiciel 21 représente les systèmes d'exploitation réels. Indépendamment des systèmes 21, un second bloc de logiciel 22 est utilisé à titre de programmes de contrôle de machine virtuelle, qui servent à la commande d'une multitude d'autres blocs de logiciels 26, 27... et 29 respectivement, chacun étant représentatif du système d'exploitation de machine virtuelle. De cette manière, le système de machine virtuelle comporte les systèmes d'exploitation réels 21, les programmes 22 de contrôle de machine virtuelle, et les systèmes d'exploitation de machine virtuelle 26 à 29 Seul, soit le premier bloc de logiciel 21 soit l'un des autres blocs logiciels 26 à 29 est visible pour chaque utilisateur. En liaison maintenant avec la figure 3, on procèdera à la description d'un agencement de changement de mode selon une réalisation préférée de la présente invention. Dans la manière décrite précédemment, l'agencement de changement de mode est destiné à un système de machine virtuelle qui comprend une multitude d'unités centrales réelles, décrites collectivement en 31. Les systèmes d'exploitation réels 32, les programmes 33 de contrôle de machine virtuelle et les systèmes d'exploitation de machine virtuelle 36, 37... et 39 sont décrits dans les unités centrales réelles 31. Les programmes 33 servent de systèmes d'exploitation de commande comme on l'a décrit ci-dessus. En plus de la mémoire de mode 16, du registre 17 d'instructions de logiciel, et du registre de mode 18 décrits en liaison avec la figure 1, l'agencement de changement de mode comprend un registre de données 41 entre la mémoire de mode 16 et le registre de mode 18 et un circuit 42 de jugement de mode et de commutation entre le registre 18 et les unités centrales réelles 31. Automatiquement ou d'une autre manière, une instruction de logiciel sélectionnée une à la fois dans un programme d'instructions est chargée dans le registre 47 d'instructions de logiciel de manière à accéder à la mémoire de mode 16. Conformément à l'instruction de logiciel chargée dans le registre 17, il y a extraction de l'une des données de mode dans la mémoire de mode 16 à titre de donnée sélectionnée Le registre de données 41 est chargé avec la donnée sélectionnée. Pour l'exemple illustré, chaque donnée de mode comporte une pluralité de bits disposés entre un bit de poids fort et un bit de poids faible. Les bits de poids fort et de poids faible sont utilisés à titre de donnée à deux bits de manière à indiquer l'un des modes suivants : le mode en machine non virtuelle,, le mode de contrôle de machine virtuelle et le mode en système d'exploitation sur machine virtuelle, ces modes étant au nombre de trois. La donnée à deux bits sélectionnée est introduite dans le registre de mode 18. Le circuit 42 de jugement de mode et de commutation porte un jugement sur l'un des trois modes qui est indiqué par la donnée sélectionnée à deux bits stockée dans le registre de mode 18. Lorsque la donnée sélectionnée à deux bits représentative du mode en machine non virtuelle est stockée dans le registre de mode 18, le circuit 42 de jugement de mode et de commutation provoque le passage des systèmes d'exploitation réels 32 sur L'une des unités centrales réelles 31. Lorsque le mode en contrôle de machine virtuelle est indi guéf las programmes 33 de contrôle de machine virtuelle sont amenés à passer sur des unités sélectionnées parmi les unités centrales réelles 31. Les programmes 33 commandent les unités sélectionnées parmi les unités centrales réelles 31 à titre d'une pluralité d'unités centrales virtuelles. Lorsque le registre de mode 18 est ensuite chargé avec la donnée sélectionnée à deux bits représentative du mode en système d'exploitation de machine virtuelle, les systèmes d'exploitation de machine virtuelle 36 à 39 sont amenés à passer sur les unités centrales virtuelles. On comprendra maintenant que l'agencement de changement de mode peut procéder sélectivement au changement des modes de fonctionnement d'un système de machine virtuelle. La présente invention est par conséquent capable de supprimer une augmentation fâcheuse du temps machine qui se produirait lorsque le système de machine virtuelle est employé par un seul utilisateur. 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 modifications et de variantes qui apparaîtront à l'homme de l'art. Par dessus tout, l'homme du métier pourra faire un programme d'instructions comprenant une multitude d'instructions de logiciels représentatives des divers modes de fonctionnement du système de machine virtuelle. REVENDICATIONS 1 - Agencement de changement de mode afin de changer les modes de fonctionnement d'un système de machine virtuelle comprenant une pluralité de systèmes centraux réels (31), ces modes comprenant un mode en machine non virtuelle pour l'exécution de systèmes d'exploitation réels sur l'une des unités centrales réelles, un mode avec contrôle de machine virtuelle-pour l'exécution de systèmes d'ex- ploitation de commande sur des unités sélectionnées parmi les unités centrales réelles afin de commander des unités sélectionnées parmi les unités centrales réelles à titre d'unités centrales virtuelles, et un mode en système d'exploitation de machine virtuelle pour l'exécution de systèmes d'exploitation de machine virtuelle sur les unités centrales virtuelles, caractérisé en ce que cet agencement comprend une mémoire de mode (16) afin de mémoriser des données de mode représentatives du mode en machine non virtuelle, du mode avec contrôle de machine virtuelle et du mode en système d'exploitation de machine virtuelle, un registre d'instruc tions de logiciel (17) couplé à la mémoire de mode pour stocker une instruction de logiciel destinée à être utilisée dans la sélection de l'une des données de mode à titre de donnée s lectionnée, et un registre de mode (41) couplé à la mémoire de mode pour stocker la donnée sélectionnée. 2 - Agencement de changement de mode selon la reven dication 1, caractérisé en ce qu'il comprend en outre un circuit de jugement et de commutation de mode (42) couplé au registre de mode (16) afin de porter un jugement sur la donné sélectionnée stockée dans le registre de mode afin de faire passer les systèmes d'exploitation réels sur ladite unité des unités centrales réelles lorsque la donnée sélectionnée a été jugée comme indiquant le mode en machine non virtuelle, de procéder à une commande par lesdits systèmes d'exploitation de commande des unités sélectionnées parmi les unités centrales réelles à titre d'unités centrales virtuelles lorsque la donnée sélectionnée est jugée comme indiquant le mode avec contrôle de machine virtuelle,et de faire passer les systèmes d'exploitation de machine virtuelle sur les unités centrales virtuelles lorsque la donnée sélectionnée est jugée comme indiquant le mode en système d'exploitation de machine virtuelle après que les unités sélectionnées parmi les unités de traitement réelles sont commandées à titre des unités de traitement virtuelles.