DE69312589T2 - Verfahren zur anteiligen Nutzung von Ein-/ Ausgabebetriebsmitteln zwischen einer Vielzahl von Betriebsystemen und Programmen - Google Patents

Verfahren zur anteiligen Nutzung von Ein-/ Ausgabebetriebsmitteln zwischen einer Vielzahl von Betriebsystemen und Programmen

Info

Publication number
DE69312589T2
DE69312589T2 DE69312589T DE69312589T DE69312589T2 DE 69312589 T2 DE69312589 T2 DE 69312589T2 DE 69312589 T DE69312589 T DE 69312589T DE 69312589 T DE69312589 T DE 69312589T DE 69312589 T2 DE69312589 T2 DE 69312589T2
Authority
DE
Germany
Prior art keywords
input
output
channel
iid
shared
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
DE69312589T
Other languages
English (en)
Other versions
DE69312589D1 (de
Inventor
Frank William Brice
Joseph Charles Elliott
Kenneth James Fredericks
Robert Edward Galbraith
Marten Jan Halma
Roger Eldred Hough
Suzanne Marie John
Paul Anthony Malinowski
Allan Samuel Meritt
Kenneth James Oakes
John Cord Rathjen
Martin William Sachs
David Emmett Stucki
Leslie Wood Wyman
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Application granted granted Critical
Publication of DE69312589D1 publication Critical patent/DE69312589D1/de
Publication of DE69312589T2 publication Critical patent/DE69312589T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices
    • G06F13/102Program control for peripheral devices where the programme performs an interfacing function, e.g. device driver
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45541Bare-metal, i.e. hypervisor runs directly on hardware
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/52Program synchronisation; Mutual exclusion, e.g. by means of semaphores
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45579I/O management, e.g. providing access to device drivers or storage

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multi Processors (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

  • Die vollständigen Inhalte der folgenden Patentbeschreibungen, die am gleichen Tag wie die vorliegende Beschreibung angemeldet wurden, werden als Referenz in diese Spezifikation einbezogen:
  • US-A-5 265 240, mit dem Titel "Channel path measurements for the multiple image facility" von Stucki u.a.;
  • JP-A-6 035 730, mit dem Titel "Extensions to CHSC Commands to support the multiple image facility" von John u.a.;
  • JP-A-6 035 731, mit dem Titel "Pass-through for I/O channel subsystem call instructions for accessing shared resource in a computer system having a plurarity of operating systems" von Brice u.a.
  • Ebenso wurden die folgenden vorher angemeldeten Beschreibungen, die dem gleichen Anmelder wie die vorliegende Beschreibung zugewiesen wurden, mit ihrem vollständigen Inhalt als Referenz in diese Spezifikation einbezogen:
  • EP-A-0 430 673, angemeldet am 28. November 1989 von C. J. Bailey u.a. mit dem Titel "Method And Apparatus For Dynamically Managing I/O Connectivity";
  • US-A-5 257 379, angemeldet am 4. September 1991 von R. Cwiakala u.a. mit dem Titel "Establishing Synchronization Of Hardware And Software I/O Configuration Definitions";
  • US-A-5 395 996, angemeldet am 28. März 1991 von S. M. Benson u.a. mit dem Titel "Method And Apparatus For Dynamic Changes To System I/O Configuration";
  • US-A-5 253 344, angemeldet am 5. September 1991 von J. E. Bostick u.a. mit dem Titel "Method And Apparatus For Dynamically Changing The Configuration Of A Logically Partitioned Data Processing System";
  • EP-A-0 505 792, angemeldet am 28. März 1991 von R. Cwiakala u.a. mit dem Titel "Dynamically Changing A System I/O Configuration Definition";
  • EP-A-0 563 626, angemeldet am 30. März 1992 von J. A. Frey u.a. mit dem Titel "Management of Data Objects Used to Maintain Stata Information for Shared Data Objects" und
  • JP-A-6 083 788, angemeldet am 30. März 1992 von D.A. Elko u.a. mit dem Titel "Message Path Mechanism for Managing Connections Between Processors and a Coupling Facility".
  • Einführung
  • Diese Erfindung stellt ein Verfahren bereit, das die wirksame Anzahl von E/A-Kanälen, Geräten und Abbildern von Steuereinheiten stark erhöht, die für jedes aus einer Vielzahl von auf einem CEC (computerelektronischer Komplex) laufenden Betriebssystemen (OS) verfügbar sind, ohne daß dabei die tatsächliche Anzahl physischer E/A-Betriebsmittel ansteigt. Die Erfindung ermöglicht es den OS, physische E/A-Betriebsmittel ohne Einwirkung eines übergeordneten Betriebssystem direkt anteilig zu nutzen.
  • Hintergrund
  • In Systemen nach dem Stand der Technik können entweder nur ein physisches E/A-Kanalbetriebsmittel oder nur E/A-Gerätebetriebsmittel, jedoch nicht beides, direkt anteilig von Betriebssystemen (OS) genutzt werden, die in unterschiedlichen logischen Betriebsmittelbereichen eines CEC- (computerelektronischer Komplex) Bereich ausgeführt werden. Die OS in einem CEC werden von einem übergeordneten Betriebssystem koordiniert, bei dem die Prozessor- und Speicherbetriebsmittel des CEC unter den getrennt ausgeführten OS aufgeteilt wurden.
  • Das übergeordnete Betriebssystem kann in einem internen Code (Mikrocode) oder in Software strukturiert sein. Ein Beispiel eines übergeordneten Betriebssystems mit internen Code ist das IBM PR/SM (Prozessorbetriebsmittel/Systemmanager), das Betriebsmittelanteile unter unabhängig ausgeführten OS in getrennten logischen Betriebsmittelbereichen koordiniert. Ein Beispiel eines übergeordneten Betriebssystems vom Typ Software ist das IBM S/370 VM/MPG- (virtuelle Maschine/mehrere bevorzugte Gäste - virtual machine/multiple preferred guests) System, bei dem sogenannte virtuelle Maschinen (als bevorzugte Gäste bezeichnet) getrennte OS in jeweiligen logischen Betriebsmittelbereichen ausführen, die von der Systemsoftware in einen Softwareverzeichnis eingeteilt wurden.
  • In früheren Systemen konnten E/A-Geräte nur anteilig direkt genutzt werden, wenn jedem OS, das den Kanal anteilig nutzt, eine beidseitig exklusive Teilmenge an E/A-Kanälen zugewiesen wird, auf die über diesen Kanal zugegriffen werden kann. Wenn diese Technik genutzt wurde, gab es einen einzelnen Teilkanal, um jedes E/A-Gerät darzustellen, und dieser Subkanal wurde dem OS zugewiesen, das dem entsprechenden Gerät zugewiesen wurde. Das es oft wünschenswert war, daß E/A-Geräte von einer Vielzahl OS anteilig genutzt wurden, war diese Technik sehr begrenzt.
  • In früheren Systemen konnten E/A-Geräte nur anteilig direkt genutzt werden, wenn jedem OS, das das Gerät anteilig nutzt, eine beidseitig exklusive Teilmenge an E/A-Kanälen zugewiesen wird, die genutzt werden konnten, um auf das Gerät zuzugreifen. Wenn diese Technik genutzt wurde, gab es eine Vielzahl von Kanälen, um jedes E/A-Gerät darzustellen, und einer dieser Subkanäle wurde jedem OS zugewiesen, das das Gerät anteilig nutzte. Jeder Subkanal, der das gleiche Gerät darstellte, wurde durch eine andere Subkanalnummer gekennzeichnet. Da mit dieser Technik jeder E/A-Kanal einem einzelnen OS zugewiesen wurde, stieg die Anzahl der benötigten Kanäle normalerweise mit der Anzahl der OS an, die die I/O-Geräte teilen sollten. Dies stellte allgemein ein Problem dar, da die Anzahl von Kanälen infolge der 8-bit-Anzahl, die zu deren Kennzeichnung genutzt wurden, auf 256 begrenzt war. Die Anzahl der Subkanäle war das geringste Problem, da die Anzahl der Subkanäle einen mit 65536 höheren Grenzwert infolge der 16-bit-Anzahl hatte, die zur Namensbezeicnung genutzt wurde.
  • In früheren Systemen war es möglich, sowohl die E/A-Geräte als auch die E/A-Kanäle, die zum Zugriff auf diese Geräte genutzt wurden, anteilig, allerdings nicht direkt anteilig zu nutzen. Dies brachte jedoch sehr viel unnützen Mehraufwand bei der Systemverwaltung infolge der Notwendigkeit, den Code des übergeordneten Betriebssystems für E/A-Operation abzufangen, damit das übergeordnete Betriebssystem die Betriebsmittelkonkurrenz koordinieren konnte. Während das übergeordnete Betriebssystem anstelle des OS ausgeführt wurde, war das OS unterbrochen.
  • In der Praxis war der Mehraufwand der Nutzung des übergeordneten Betriebssystems, um eine anteilige Nutzung von sowohl den E/A- Geräten als auch den E/A-Kanälen, die für den Zugriff auf diese Geräte genutzt werden, so nutzlos, daß oft die Wahl getroffen wurde, entweder nur die E/A-Kanäle oder nur die E/A-Geräte direkt anteilig zu nutzen. Dies ermöglichte es allen E/A- Operationen für das OS, ohne Einbeziehung des übergeordneten Betriebssystems ausgeführt zu werden. Diese direkte Nutzung der E/A-Betriebsmittel durch ein OS wird "E/A-Durchlaß" genannt, da diese E/A-Operationen durch das übergeordnete Betriebssystem "durchgelassen" werden (d.h. es umgehen).
  • Nach dem Stand der Technik besitzt ein System/390- (S/390-) CEC ein E/A-Kanal-Subsystem mit einem oder mehreren E/A-Prozessoren (IOPs), um eine Vielzahl von E/A-Kanalprozessoren (CHPRs) in dem CEC zu steuern, um so eine gleiche Anzahl von Kanälen zu steuern, die Glasfaserkanäle oder Paralleldrahtkanäle zur Verbindung von E/A-Steuereinheiten mit E/A-Geräten sein können. Dies sind die Kanäle, die in die vorher diskutierte Steuerung des übergeordneten Betriebssystems oder des Betriebssystems einbezogen wurden. Ein weitverbreitet eingesetzter Typ eines Glasfaserkanals nutzt die IBM-ESCON-Architektur. Der CEC besteht aus einer oder mehreren zentralen Verarbeitungseinheiten (CPUs), einem Systemspeicher und dem E/A-Subsystem. All diese Bereiche des CEC sind in den CEC-Betriebsmitteln enthalten, die von in dem CEC ausgeführten Programmen genutzt werden.
  • Eine Steuereinheit ist die Rohrleitung für den Austausch von Informationen zwischen einem E/A-Gerät und einem Kanal. Auf die gleiche Weise ist ein Kanal die Rohrleitung eines Betriebssystems für den Austausch von Informationen zwischen einem Hauptspeicher und einem E/A-Gerät.
  • Eine IBM-Veröffentlichung (Form-Nummer SA22-7202), veröffentlicht im Oktober 1990 mit dem Titel "ES Architecture 390 ESCON I/O Interface" beschreibt die dann bestehenden Pfadverbindungen der ESCON-Kanal-/Steuereinheit.
  • Die verschiedenen Betriebsmittel in der CEC unter den OS werden durch Einsatz einer Vielzahl Verzeichnisse oder Zustandsdeskriptoren (SDs) in dem Systemspeicher eingeteilt, der jeweils die CEC-Betriebsmittel den OS zuweist, die in den jeweiligen Betriebsmittelbereichen ausgeführt werden. Das übergeordnete Betriebssystem des CEC kann seinen eigenen logischen Betriebsmittelbereich verlagert haben, um den gesamten Betrieb des CEC zu steuern, einschließlich dem Abfertigen von OS auf den Zentralprozessoren (CPUs) in den CEC und der Auflösung von Konflikten unter den OS. Jedes OS steuert die Abfertigung von Anwendungsprogrammen, die unter dem jeweiligen OS laufen, ohne daß gewöhnlich ein übergeordnetes Betriebssystem mit einbezogen wird (außer wenn es zu einer Ausnahme kommt).
  • Frühere Systeme mit übergeordneten Betriebssystemen erforderten, daß das übergeordnete Betriebssystem alle E/A-Operationen für alle OS in dem CEC (z.B. frühe VM/370) steuert, wobei dies einschloß, daß das übergeordnete Betriebssystem alle Kanaloperationen zuweist, alle Subkanäle für alle E/A-Geräte in dem CEC startet und alle E/A-Unterbrechungen von diesen Geräten für alle unter den OS laufenden Programmen handhabt.
  • US-Patentschrift 4 843 541 mit dem Titel "Logical Resource Partitioning of a Data Processing System", dem gleichen Anmelder wie die vorliegende Beschreibung zugewiesen, beschreibt und beansprucht ein System mit einem "E/A-Durchlaß", um es jedem OS in einem CEC zu ermöglichen, seine eigenen E/A-Operationen unter Nutzung reservierter E/A-Kanäle und -Geräte ohne Einbeziehung des übergeordneten Betriebssystems zu handhaben. Dieses Merkmal des Durchlassens (oder Vorbeilassens) erlaubte es jedem OS, E/A- Operationen zu starten, die von Anwendungsprogrammen angefordert wurden, die unter dem OS laufen, und die E/A-Unterbrechungen zu handhaben, die von den E/A-Startoperationen herrühren. Das übergeordnete Betriebssystem brauchte eine E/A-Operation eines OS nur abzufangen, wenn es zu einem Ausnahmezustand kam. Diese Erfindung wird in den IBM-Systemen PR/SM LPAR und S/370 VM MPG genutzt.
  • EP-A-0 529 384, angemeldet am 29. August 1991 mit dem Titel "CPU Expansive Gradation of E/A Interruption Subclass Recognition", dem gleichen Anmelder wie die vorliegende Spezifikation zugewiesen, ermöglicht eine erhebliche Vergrößerung der Anzahl logischer Betriebsmittelbereiche und CPUs in einem CEC. Diese Beschreibung ermöglichte es jeder CPU in einem CEC (die ein beliebiges OS ausführt, das in dem CEC läuft), alle E/A- Unterbrechungssubklassen zu handhaben, die in dem System verfügbar waren; dies vermied eine frühere Notwendigkeit, die jedes OS darauf beschränkte, nur Unterbrechungen für eine der E/A-Unterbrechungssubklassen zu handhaben, die in dem System verfügbar sind.
  • Ein Subkanal ist für jedes E/A-Gerät spezifiziert, das von einem OS unter der IBM S/390-Architektur unterstützt wird. Ein SCHIB (Subkanal-Informationssteuerblock - subchannel information control block), der im Systemspeicher gespeichert wird, wenn der S/390-Subkanalspeicherbefehl (STSCH - Store Subchannel Instruction) ausgeführt wird, ist das Mittel für ein OS, seine Betriebsmittel für einen Subkanal einschließlich des Satzes aus Kanälen, die von dem Subkanal benutzbar sind, zu sehen. Jeder SCHIB enthält Felder für bis zu acht Kanalbezeichner, sogenannte Kanalpfadbezeichnerwerte (CHPID - Channel Path Indentifier), von denen jeder einen Kanal festlegt, der für den Einsatz durch den Subkanal ausgewählt werden kann. Für jede Datenübertragung, die von dem Subkanal angefordert wurde, der zum Zeitpunkt der Subkanalanforderung nicht beschäftigt ist, wird aus den spezifizierten CHPIDs ein verfügbarer ausgewählt. In früheren Systemen, bei denen E/A-Geräte direkt anteilig genutzt wurden, jedoch jeder Kanal, der zum Zugriff auf diese Geräte genutzt wurde, einem einzelnen OS zugeordnet war, konnte der SCHIB einen Kanal nur als verfügbar kennzeichnen, wenn dieser Kanal dem OS zugewiesen wurde.
  • In früheren S/370- und S/390-Computersystemen wurde jeder Kanal von einem einzelnen "Kanalsteuerblock" (CHCB - Channel Control Block) in einem E/A-Subsystemspeicher des CEC dargestellt. Und jeder Subkanal wurde ebenfalls durch einen einzelnen Subkanalsteuerblock (SCB - Subchannel Control Block) in einem E/A- Subsystemspeicher des CEC dargestellt. Von dem internen Code (Mikrocode) des E/A-Subsystems wurde ein SCB genutzt, um einen von bis zu acht Kanälen auszuwählen, die für den SCB spezifiziert wurden, um auf das durch den SCB dargestellte E/A-Gerät zuzugreifen (die Kanalzuweisungen des SCB waren die gleichen wie in einem zugehörigen SCHIB). Jeder SCB wurde genau einem OS in dem CEC zugewiesen. Deshalb war das zugewiesene OS das einzige OS, das auf den Subkanal zugreifen konnte, der dem SCB entsprach, der wiederum das "Durchlassen" nutzt, um die Systemleistung zu verbessern (durch Vermeidung der Einwirkung des übergeordneten Betriebssystems in der Verwaltung der E/A- Operation). Kein anderes OS kann den Subkanal direkt nutzen.
  • In früheren Systemen, bei denen E/A-Geräte direkt anteilig genutzt wurden, jedoch jeder Kanal, der genutzt wurde, um auf diese Kanäle zuzugreifen, einem einzelnen OS zugewiesen (dediziert) war, war es eine unangenehme Folge, daß, wenn ein dedizierter Kanal nur einen geringen Prozentsatz der Zeit durch sein zugewiesenes OS genutzt wurde, der Kanal nicht dynamisch auf andere OS unter Nutzung des "Durchlassens" geschaltet werden konnte; es war nur ein "Nicht-Durchlassen" durch Zugriff des übergeordneten Betriebssystems (nichtdirekte anteilige Nutzung) mit seiner daraus folgenden geringen Leistungsfähigkeit verfügbar. Folglich blieben dedizierte Kanäle grundsätzlich zuwenig genutzt. (Das verfügbare manuelle Schalten eines Kanals zu einem anderen OS erlaubte kein dynamisches Online-Schalten eines E/A- Kanals zu einem anderen OS).
  • Das Begrenzen der Anzahl der Kanäle für jedes OS hatte die Auswirkung, daß die für das OS verfügbare E/A-Datenrate durch Einschränken der Anzahl gleichzeitig paralleler Pfade für die Datenübertragung begrenzt wurde.
  • Vor der Erfindung logischer Kanalpfade für die IBM EXCON E/A- Schnittstellen bestand eine physischer Zusammenhang zwischen entweder einem System/370- oder 370-XA-Kanal und einer angeschlossenen E/A-Steuereinheit und deren zugehörigen E/A-Geräten. Das heißt, eine Vielzahl physischer Anschlüsse an einer Steuereinheit waren jeweils mit unterschiedlichen Kanälen verbunden, die einen anderen Kanal mit jedem Anschluß verbanden. Für jeden Kanal, der mit einem Anschluß verbunden war, wurde von der Steuereinheit angenommen, daß er von einem anderen OS genutzt wurde, außer wenn ein besonderer Befehl von zwei oder mehreren dieser Kanäle empfangen wurde, daß diese in eine Kanalpfadgruppe für das gleiche OS eingebunden werden sollen. Die Kanalpfadgruppe enthielt Kanalpfade, die das gleiche Betriebssystem mit der Vielzahl von Anschlüssen einer CU verbinden. Der Gruppe wurde ein Kanalpfadbezeichner (PGID) zugewiesen.
  • Das dynamische Schalten zwischen Kanälen und Steuereinheiten, wie es in der US-Patentschrift 5 107 489 mit dem Titel "Switch And Its Protocoll For Marking Dynanic Connections" beschrieben wurde, wurde von der ESCON-E/A-Schnittstellenarchitektur bereitgestellt. Dynamisches Schalten erlaubte es, daß eine Vielzahl von Kanälen mit einem einzelnen Anschluß an einer Steuereinheit verbunden werden konnte, anstatt daß jeder Kanal eine Verbindung mit einem anderen Anschluß erforderte. Diese Kanäle konnten sich auf der gleichen CEC oder auf unterschiedlichen CECs befinden. Dynamisches Schalten erlaubte es, daß eine Vielzahl von Anschlüssen der Steuereinheit mit einem einzelnen Kanal verbunden werden konnte.
  • EP-A-0 472 814 mit dem Titel "Logical Channel Paths In A Computer I/O System", dem gleichen Anmelder wie die vorliegende- Anmeldung zugewiesen, beschreibt die Erfindung logischer Kanalpfade. Die ESCON-E/A-Schnittstellenarchitektur beseitigt die frühere Forderung nach einer Kanal-Anschluß-Verbindung durch die Erfindung logischer Kanalpfade. Das Konzept logischer Kanalpfade ermöglichte es der Steuereinheit, jeden der vielen Kanäle, an die einer seiner Anschlüsse dynamisch verbunden werden kann, eindeutig zu erkennen. Es ermöglichte es dem Kanal ebenfalls, jeden aus der Vielzahl der Steuereinheitanschlüsse eindeutig zu erkennen, mit dem dieser dynamisch verbunden werden konnte. Die Steuereinheit setzte weiterhin voraus, daß jeder Kanal der an einen seiner Anschlüsse angeschlossen werden konnte, von einem anderen OS zu nutzen war, außer wenn ein Spezialbefehl von zwei oder mehreren dieser Kanäle empfangen wurde, der diese in eine Kanalpfadgruppe für das gleiche OS einband. Die Kanalpfadgruppe enthielt logische Kanalpfade, die das gleiche Betriebssystem mit einer Vielzahl von Anschlüssen einer CU verbinden. Der Gruppe wurde ein Kanalpfadkennzeichner (PGID) zugewiesen.
  • Mit logischen Kanalpfaden werden jedem Kanal und jedem Anschluß einer Steuereinheit eine Verbindungsadresse zugewiesen. Jedem Kanal, der an einen besonderen Anschluß der Steuereinheit angeschlossen werden kann, wird ein eindeutiger Kennzeichner (physische Kanalverbindungsadresse) zugewiesen, der, wenn er zu einem Steureinheitsanschluß durchgelassen wird, den Kanal in bezug auf diesen Steuereinheitsanschluß eindeutig kennzeichnet. Jedem Steuereinheitanschluß, mit einem besonderen Kanal verbunden werden kann, wird ein eindeutiger Kennzeichner (physische CU-Verbindungsadresse) zugewiesen, die, wenn sie zu einem Kanal durchgelassen wird, den Steuereinheitanschluß in bezug auf diesen Kanal eindeutig kennzeichnet.
  • Die ESCON-E/A-Schnittstellenarchitektur, die auch für die Fähigkeit, eine Vielzahl logischer Steuereinheiten zu besitzen, bereitgestellt wurde, besteht innerhalb einer physischen Steuereinheit. Die ESCON-E/A-Architektur nennt diese logischen Steuereinheiten "Steuereinheitsabbildungen", hier jedoch werden sie "logische Steuereinheiten" genannt. Eine logische Steuereinheit liefert die Funktionen und hat die logische Erscheinung einer Steuereinheit. Wenn innerhalb einer physischen Steuereinheit nicht mehrere logische Steuereinheiten vorhanden sind, sagt man, daß eine einzelne logische Steuereinheit in der physischen Steuereinheit vorhanden ist. Verbindungen zwischen einem bestimmten Kanal und einem Steuereinheitsanschluß könnten für einige oder alle logischen Steuereinheiten genutzt werden, die in einer physischen Steuereinheit bestehen. Um die logische Steuereinheit innerhalb einer physischen Steuereinheit zu kennzeichnen, wurde jeder logischen Steuereinheit ein eindeutiger Bezeichner (logische CU-Adresse) zugewiesen.
  • In jedem Rahmenkopf, der vom Kanal zu einer logischen Steuereinheit gesandt wurde, hat der Kanal den Anschluß der Zielsteuereinheit durch Einbeziehung der physischen CU-Verbindungsadresse in das Zieladressfeld des Rahmens und die logische Zielsteuereinheit durch Einbeziehung der logischen CU-Adresse in das logische Zieladressfeld des Rahmens gekennzeichnet. Der Kanal schloß in das Quellverbindungsadressfeld des Rahmens ebenfalls seine physische Kanalverbindungsadresse ein, so daß die logische Steuereinheit den Kanal, der den Rahmen gesandt hat, kennzeichnen konnte. In jedem Rahmenkopf, der von der logischen Steuereinheit an einen Kanal gesandt wurde, kennzeichnete die logische Steuereinheit den Zielkanal durch Einschluß der physischen Kanalverbindungsadresse in das Zielverbindungsadressfeld des Rahmens. Die logische Steuereinheit schloß ebenfalls sowohl die die physische CU-Verbindungsadresse in das Quellverbindungsadressfeld des Rahmens als auch die logische CU-Adresse in das logischen Quelladressfeld des Rahmens ein, so daß der Kanal den Steuereinheitanschluß und die logische Steuereinheit kennzeichnen konnte, die den Rahmen gesandt hat.
  • Indem die passenden Verbindungs- und logischen Adressen in die jeweiligen Quell- und Zielfelder von jedem Kopf eingetragen wurden, sind der kommunizierende Kanal und die logische Steuereinheit zueinander einheitlich gekennzeichnet. Es war die Kombination der physischen Kanalverbindungsadresse, der physischen CU-Verbindungsadresse und der logischen CU-Adresse, die eindeutig einen einzelnen logischen Kanalpfad in bezug auf entweder einen physischen Kanal oder einen Steuereinheitsanschluß gekennzeichnet haben.
  • Bevor die Kommunikation zu einem E/A-Gerät, das zu einer logischen Kontrolleinheit gehört, stattfinden kann, ist die Erstellung eines logischen Pfades (LP) erforderlich. Die Erstellung eines logischen Pfades ist ein Mittel für den Kanal und die logische Steuereinheit, um übereinzustimmen, daß ein bestimmter logischer Kanalpfad von beiden Einheiten erlaubt ist, um für Fälle, wie etwa der Übertragung von Befehlen, Daten und dem Status, bezogen auf ein E/A-Gerät, genutzt zu werden. Die Prozedur zur Erstellung eines logischen Pfades wird "Prozedur zur Erstellung eines logischen Pfades" genannt. Ein logischer Pfad wurde eindeutig durch die Kombination der physischen Kanalverbindungsadresse, der physischen CU-Verbindungsadresse und der logischen CU-Adresse in bezug auf entweder einen physischen Kanal oder einen Steuereinheitsanschluß gekennzeichnet.
  • Zusammenfassung der Erfindung
  • Die vorliegende Erfindung erhöht die Anzahl von Abbildungen von E/A-Kanälen, Geräten (dargestellt durch Subkanäle) und Steuereinheiten, die von einer Vielzahl Betriebssystemen (OS) direkt anteilig in einem computerelektronischen Komplex (CEC) ohne die Notwendigkeit einer Erhöhung der tatsächlichen Anzahl physischer Kanäle, Geräte oder Steuereinheiten, die mit dem CEC verbunden sind; genutzt werden erheblich. Die OS können all diese physischen E/A-Betriebsmittel ohne Einwirkung eines übergeordneten Betriebssystems direkt anteilig nutzen.
  • Die vorliegende Erfindung erhöht ebenfalls die Anzahl der Abbildungen von E/A-Kanälen, Geräten (dargestellt durch Subkanäle) und Steuereinheiten beträchtlich, die für jedes OS in einem Multi-OS-CEC-System verfügbar sind, ohne daß ein Anwachsen der tatsächlichen Anzahl physischer Kanäle, physischer Geräte oder physischer Steuereinheiten, die mit dem CEC verbunden sind, notwendig ist.
  • Von einem CEC, das diese Erfindung unterstützt, kann man sagen, daß es eine Einrichtung zur Mehrfachabbildung (MIF) unterstützt.
  • Die vorliegende Erfindung kann die maximale Datenrate, die jedem OS in einem Multi-OS-CEC-System zur Verfügung steht, ohne die Notwendigkeit einer Erhöhung der tatsächlichen Anzahl von Kanälen oder Geräten, die mit dem CEC verbunden sind, beträchtlich erhöhen. Die E/A-Datenrate eines OS ist von der Parallelität der Datenübertragung zu/von dem OS abhängig. Das Erhöhen der Anzahl der Kanäle, die für jedes OS verfügbar sind, kann die Anzahl der E/A-Geräte erhöhen, die gleichzeitig Daten an das OS übertragen können, wobei dies wiederum entsprechend die maximale Datenrate erhöhen kann, die für das OS verfügbar ist.
  • Durch Erhöhung der Parallelität, der Flexibilität und der Möglichkeit zur Verbindung von Kanälen und E/A-Gefäten mit jedem OS (wobei die Anzahl der Kanäle und E/A-Geräte, die jedem OS verfügbar sind, erhöht wird) kann man schneller unterschiedliche Datentypen für ein OS erhalten, auch wenn dies nicht die gesamte Datenübertragungsrate für das OS erhöht. Die E/A-Anforderungen mehrerer Nutzer eines OS werden durch Erhöhen der Anzahl von Kanälen und Geräten besser abgearbeitet, die an jedes OS anschließbar sind.
  • Die direkte Steuerung durch jedes von mehreren OS über anteilig genutzte Kanäle und Geräte durch diese Erfindung erhöht die Systemleistungsfähigkeit durch Vermeidung der Einwirkung des übergeordneten Betriebssystems. Während das vorher genannte Durchlassen nicht für alle OS mit anteilig genutzten E/A-Geräten und E/A-Kanälen für den Zugriff auf diese Geräte genutzt werden kann, ist diese Erfindung das Mittel, das diese Fähigkeit bereitstellt.
  • Die hohe leistungswirksame Zunahme von E/A-Kanälen, die durch diese Erfindung bereitgestellt wird, kann unter Nutzung des folgenden Beispiels einfach ausgedrückt werden: Wenn ein früheres CEC 7 OS und 84 nicht anteilig genutzte Kanäle besaß, dann hatte jedes OS im Durchschnitt 12 (=84/7) dedizierte Kanäle. Mit dieser Erfindung können alle 84 Kanäle für jedes der 7 OS direkt anteilig nutzbar gemacht werden (während sie weiterhin in der Lage sind, die Geräte direkt anteilig zu nutzen, auf die von diesen Kanälen aus zugegriffen werden kann), so daß jedes OS jetzt bis zu insgesamt 84 Kanäle nutzen kann. Dementsprechend wuchs die Anzahl der für jedes OS verfügbaren Kanäle von 12 auf 84. Für dieses Beispiel bedeutet dies eine 700-prozentige Erhöhung.
  • Natürlich kann jeder anteilig nutzbare Kanal zu einem Zeitpunkt nur für ein OS aktive sein, da der Kanal für ein OS nur nutzbar ist, wenn er nicht durch ein anderes OS belegt ist. In früheren CECs, wenn ein Kanal einem OS zugeordnet war, konnte dieser nicht von anderen OS genutzt werden, wenn er nicht besetzt war. Mit dieser Erfindung kann jedoch ein anteilig nutzbarer Kanal in einem nicht besetzten Zustand direkt von einem anderen OS genutzt werden und dynamisch für den direkten Einsatz zwischen zwei unterschiedlichen OS geschaltet werden. Somit kann ein unbesetzter, anteilig genutzter Kanal dynamisch zwischen einer Vielzahl OS geschaltet werden - wann immer es durch anteilig genutzte OS notwendig ist. Viele gleichzeitige Anfragen an einen unbesetzten Kanal durch ein anteilig genutztes OS führen dazu, daß eines der anfordernden OS die Benutzung des Kanals zugeteilt bekommt und die anderen Anfragen in der Warteschlange verbleiben.
  • Auf die gleiche Weise kann jedes anteilig nutzbare Gerät zu einem Zeitpunkt nur für ein OS aktiv sein, da das Gerät für ein OS nur einsetzbar ist, wenn es nicht durch ein anderes OS belegt ist. In früheren CECs, wenn ein Gerät einem OS zugeordnet war, konnte es nicht von einem anderen OS genutzt werden, wenn es nicht belegt war. Mit dieser Erfindung kann jedoch ein anteilig nutzbares Gerät in einem nicht besetzten Zustand direkt von einem anderen OS genutzt und dynamisch für den direkten Einsatz zwischen unterschiedlichen OS geschaltet werden. Somit kann ein unbelegtes anteilig genutztes Gerät dynamisch zwischen einer Vielzahl OS geschaltet werden - wann immer es durch anteilig genutzte OS notwendig ist. Viele gleichzeitige Anfragen an ein unbesetztes Gerät durch anteilig genutzte OS führen dazu, daß eines der anfordernden OS die Benutzung des Gerätes zugeteilt bekommt und die anderen Anfragen in der Warteschlange verbleiben.
  • Die Erfindung stellt ein neues Verfahren zur anteiligen Nutzung von E/A-Kanälen, Steuereinheiten und Geräten durch eine Anzahl unterschiedlicher OS durch die physische Bereitstellung mehrerer Steuerblöcke für die jeweilige Nutzung durch die OS bereit, wobei jedes hiervon ein anteilig genutztes Betriebsmittel einem OS zuordnet. Man kann sagen, daß es ein Abbild des Betriebsmittels jedem anteilig genutzten OS darbietet. Somit kann ein anteilig genutzter Satz aus Steuerblöcken für ein anteilig genutztes Betriebsmittel jeweils ein Abbild eines Betriebsmittels für jedes anteilig genutzte OS festlegen. Ein anteilig genutzter Satz kann einen einzelnen physischen Kanal, eine einzelne Steuereinheit oder einen einzelnen Subkanal, die wiederum ein physisches E/A-Gerät darstellen, gegenüber einer Vielzahl OS in einem CEC darstellen. Wenn innerhalb einer physischen Steuereinheit mehrere logische Steuereinheiten vorhanden sind, kann ein anderer anteilig genutzter Satz jede logische Steuereinheit darstellen. Ein anteilig genutzter Kanal kann auf unterschiedliche anteilig nutzbare logische Steuereinheiten und anteilig nutzbare E/A-Geräte zugreifen. Auf die gleiche Weise kann auf eine anteilig nutzbare logische Steuereinheit von verschiedenen anteilig nutzbaren Kanälen zugegriffen werden.
  • Jedes Abbild von jedem Kanal, Subkanal oder logischer Steuereinheit wird in dem E/A-Subsystem durch Nutzung eines Hardware- oder Mikroprogrammkonstrukts dargestellt, hier "Kanalsteuerblöcke" (CHCBs - channel control blocks), "anteilig nutzbare Subkanalsteuerblöcke" (SSCBs - sharable subchannel blocks) beziehungsweise "logische Steuereinheits-Steuerblöcke"- (LCUCBs - logical control unit control blocks) genannt. Die CHCBs, SSCBs und LCUCBs befinden sich alle in dem E/A-Subsystemspeicher des CEC.
  • Alle Steuerblöcke in einem anteilig genutzten Satz definieren das gleiche E/A-Betriebsmittel. Zum Beispiel definieren alle CHCBs in einem anteilig genutzten Satz den gleichen Kanal zu jedem anteilig genutzten OS. Jeder Steuerblock in einem anteilig genutzten Satz wird einem anderen OS mit Hilfe eines neuen "Abbildbezeichners" (IID - image identifier) zugeordnet. Dem übergeordnete Betriebssystem kann ebenfalls ein Steuerblock in einem anteilig genutzten Satz zugewiesen werden. In der bevorzugten Ausführungsform werden IID = 0 dem übergeordneten Betriebssystem und die IIDs, die ungleich Null sind, den OS zugewiesen.
  • Die IID-Werte und die OS in einem CEC müssen keine Eins-zu-eins- Zuordnung haben, wenn diese Erfindung genutzt wird. Es wäre für ein OS möglich, daß ihm mehr als eine IID für seinen Gebrauch zugeordnet wäre. Jedoch wird in der bevorzugten Ausführungsform eine Eins-zu-eins-Zuordnung zwischen einem IID-Wert und einem OS in einem CEC genutzt.
  • In der bevorzugten Ausführungsform sind die IIDs für die OS nicht sichtbar. Sie sind jedoch beispielsweise für das übergeordnete Betriebssystem, CPUs, E/A-Subsystem und Steuereinheiten sichtbar.
  • Die IID und die Betriebsmittelnummer können gegebenenfalls jedem Steuerblock eines anteilig genutzten Satzes durch Felder festgelegt sein, da diese Werte durch die Lage des Steuerblockes in einem zweidimensionalen Array in einem Speichermedium eingefügt werden können. Die Prüfung dieser Werte wird durch deren Speicherung in den jeweiligen Feldern in jedem Steuerblock unterstützt, und diese Werte werden vorzugsweise immer in diesen Feldern überprüft, wenn auf den Steuerblock zugegriffen wird.
  • Wenn ein anteilig nutzbares Betriebsmittel von OS in mehr als einem CEC auswählbar ist, kann die IID für jedes OS durch Speichern eines CEC-Bezeichners gemeinsam mit der IID weiter beschrieben werden, z.B. durch Verketten einer eindeutigen CEC- Nummer mit der in dem CEC genutzten IID (die IID muß nur innerhalb einer CEC eindeutig sein). In der bevorzugten Ausführungsform der Erfindung müssen IIDs zu einer CEC nicht eindeutig sein, allerdings wird eine eindeutige CEC-Nummer nicht benötigt, da die logische Kanalpfadadressierung von der ESCON-E/A-Schnittstellenarchitektur bereitgestellt wird.
  • Der anteilig nutzbare Betriebsmittelbezeichner kann der Betriebsmittelbezeichner sein, der in einer aktuellen Architektur, wie etwa der Nutzung des "Kanalpfadbezeichners" (CHPID) durch die IBM S/390-Architektur zur Kanalkennzeichnung und "Subkanalnummer" zur E/A-Gerätekennzeichnung, genutzt wird.
  • Ein "anteilig genutzter Satz" aus Steuerblöcken, der durch diese Erfindung genutzt wird, braucht nicht alle OS zu umfassen, die in dem CEC dargestellt werden. Wenn kein gültiger Steuerblock für ein OS in einem anteilig genutzten Satz bereitgestellt wird, wird dieses OS vom Zugriff auf das Betriebsmittel entfernt, das durch den anteilig genutzten Satz dargestellt wurde, da das OS kein gültiges Abbild des Betriebsmittels besitzt. Zum Beispiel können einer oder mehrere SSCB in einem anteilig genutzten Satz fehlen (oder als ungültig markiert sein), um einige der OS in dem CEC an dem Zugriff auf das Gerät zu hindern, das von dem anteilig genutzten Satz dargestellt wird. Weiterhin müssen die Kanalfelder in den unterschiedlichen SSCBs in dem gleichen anteilig genutzten Satz nicht alle eine identische Gruppe aus Kanälen kennzeichnen, z.B. können in den unterschiedlichen SSCBs eines Satzes einige Kanäle gleich sein und einige unterschiedlich. Jedoch werden in der bevorzugten Ausführungsform der Erfindung alle OS in jedem anteilig genutzten Satz für jedes anteilig genutzte Betriebsmittel dargestellt, und die gleichen Kanalbezeichner werden in allen Blöcken eines anteilig genutzten Satzes aus SSCBs spezifiziert. Es können sich jedoch unter dem Steuerblöcken in einem anteilig genutzten Satz einige Parameter unterscheiden, ohne daß ihre Abbildungsfähigkeit leidet.
  • In dieser Erfindung können nicht anteilig genutzte Betriebsmittel-Steuerblöcke (wie die in den früheren Systemen gefundenen) ebenfalls mit anteilig nutzbaren Betriebsmitteln des gleichen Typs vermischt werden. Somit kann ein nicht anteilig genutzter Subkanal (SCB) für ein E/A-Gerät genutzt werden, das einem einzelnen OS zugeordnet wurde, und anteilig genutzte Subkanäle (SSCBs) können ebenfalls zur Ermöglichung einer Durchlaß-E/A- Operation durch eine Vielzahl OS für das Gerät genutzt werden.
  • Diese Erfindung ist zum Betrieb mit früheren CEC-Betriebsmittel einteilenden Architekturen geeignet, die es OS-Programmen erlauben, unterschiedliche Betriebsmittelbereiche des CEC auszuführen, wie etwa in IBM PR/SM-System (bei dem getrennte Betriebsmittel in unterschiedlichen lokalen Bereichen definiert sind), oder in dem IBM S/370 VM MPG- (Virtual Machine Multiple Prefferd Guest) System (das Softwareverzeichnisse zu definierten unterschiedlichen logischen Bereiche nutzte). Einer dieser Typen eingeteilter Systeme kann E/A-Operationen in einem Durchlaßmodus ausführen, der es OS erlaubt, direkt einen E/A-Kanal oder ein -Gerät (aber nicht beides) anteilig zu nutzen, ohne irgendeine Einwirkung eines übergeordneten Betriebssystems des CEC (wenn keine Ausnahme getroffen wurde) zu benötigen, um die Zeit für den E/A-Zugriff beträchtlich zu verkürzen. Die E/A-Kanäle und -Geräte können nicht zusammen anteilig für den direkten Zugriff durch ein OS im Durchlaßmodus genutzt werden. In diesen früheren Systemen kann auf alle Kanäle und Geräte nur durch das übergeordnete Betriebssystem zugegriffen werden; und eine Einwirkung des übergeordneten Betriebssystems wird benötigt, wenn die OS sowohl die E/A-Geräte als auch die -Kanäle, die zum Zugriff auf diese Geräte genutzt werden, anteilig nutzen wollen. Dies ist hierbei im Vergleich mit dem direkten Durchlaßbetrieb durch OS ein eine sehr ungünstige Art des E/A-Betriebes.
  • Die von dieser Erfindung anteilig nutzbaren Kanäle können dem Typ nach eine bitserielle, bitparallele oder seriell/parallele Art der Datenübertragung bieten. Die Erfindung wird vorzugsweise mit der seriellen E/A-Kanalschnittstelle, die durch die IBM Enterprise Systems Connection (ESCON) Systemarchitektur beschrieben wird, genutzt, da dies einfacher zu realisieren ist. Allerdings kann diese Architektur mit anderen Kanalarchitekturen genutzt werden. Das bedeutet, die IBM EXCON E/A-Schnittstellenarchitektur liefert logische Kanalpfade und E/A-Adressierungsmerkmale, für die diese Erfindung einfacher zu realisieren ist.
  • Diese Erfindung hat einen Weg gefunden, die Anzahl der Kanäle und Subkanäle zu erhöhen, die für jedes OS in einem CEC ohne Änderung der Größe des Kanalbezeichner- (CHIPD) Wertes oder des Subkanalbezeichner- (Subkanalnummer) Wertes verfügbar sind. Mit dieser Erfindung beträgt die wirksame Anzahl von Kanälen und Subkanälen, die dem OS in einem CEC zur Verfügung stehen, ein Vielfaches der Anzahl von IIDs, die in dem CEC aktiviert sind.
  • Die maximale Datenrate, die einem OS in einem CEC zur Verfügung steht, wird durch diese Erfindung vergrößert, wobei dies eine dynamische Verschiebung auf Nachfragebasis bei der Nutzung eines anteilig genutzten Betriebsmittels (z.B. Kanäle, Subkanäle und logische Steuereinheiten) für ein OS in dem CEC, das deren Benutzung benötigt, ermöglicht. Dynamische Verschiebung auf Nachfragebasis verbessert die Ausnutzung der Kanäle in dem CEC beträchtlich.
  • Diese Erfindung erweitert den Einsatz der Quell- und Zieladressfelder von jedem Rahmenkopf, so wie er durch die ESCON-E/A- Schnittstellenarchitektur geliefert wird, um nun eine neue Nutzung der logischen Quelladresse (für Rahmen, die von einem Kanal an eine Steuereinheit gesandt wurden) und der logischen Zieladresse (für Rahmen, die von einer Steuereinheit an einen Kanal gesandt werden) mit einzubeziehen. Diese neuen logischen Adreßfelder in dem Rahmenkopf werden genutzt, um entweder das Abbild des Kanals, der einen Rahmen gesandt hat, oder das Abbild des Kanals, zu dem ein Rahmen gesandt wurde, zu kennzeichnen. Wenn der Kanal einen Rahmenkopf sendet, enthält dieser die IID für das zugehörige Kanalabbild in dem logischen Quelladreßfeld des Rahmens. Dies kennzeichnet das Kanalabbild gegenüber der Steuereinheit. Wenn eine Steuereinheit einen Rahmenkopf sendet, fügt sie die IID für das zugehörige Kanalabbild in das logische Zieladreßfeld des Rahmens mit ein. Dies kennzeichnet das Kanalabbild gegenüber dem Kanal.
  • Diese Erfindung erweitert die Kennzeichnung eines logischen Kanalpfades und logischen Pfades (LP), um die zu einem Kanalabbild gehörende IID einzufügen. Ein einzelner logischer Kanalpfad oder logischer Pfad wird durch die Kombination der physischen Kanalverbindungsadresse, physischen CU-Verbindungsadresse, IID und der logischen CU-Adresse in bezug auf entweder einen physischen Kanal oder einen Anschluß der Steuereinheit eindeutig gekennzeichnet.
  • Die IID muß nicht den aktuellen Wert besitzen, der in dem Rahmenkopf genutzt wird, um das Kanalabbild zu kennzeichnen. Es wäre möglich, daß ein anderer Kennzeichner genutzt wird, der eine Eins-zu-eins-Zuordnung zu der IID besitzt. Allerdings ist der IID-Wert in dem Rahmenkopf enthalten, um in der bevorzugten Ausführungsform das Kanalabbild zu kennzeichnen.
  • Mit dieser Erfindung kann die IID in einem Rahmenkopf sowohl für anteilig genutzte als auch nicht anteilig genutzte Kanäle eingesetzt werden. Für nicht anteilig genutzte Kanäle werden ein einzelnes Kanalabbild und ein einzelner Kanalsteuerblock eingesetzt (für den dedizierten Kanal).
  • Die Information in jedem Rahmen, der über einen physischen Kanal übertragen wird, ist immer auf das OS beschränkt, dem die IID in dem Rahmenkopf zugewiesen wurde. Der Rahmen ist von allen anderen OS isoliert (unter Nutzung einer anderen IID in ihrem Rahmen), und die IID-Logik zur Unterstützung der Abbilder eines Kanals, Subkanals oder einer logischen Steuereinheit innerhalb eines CEC unterstützt diese Einschränkung.
  • Diese Erfindung umfaßt ebenfalls den Einsatz eines dynamischen Kanalschalters (als "Interpoliereinrichtung" bezeichnet), um mehrere Kanalabbilder durch Zuweisen mehrerer Verbindungsadressen an alle Abbilder der anteilig genutzten Kanäle innerhalb des E/A-Subsystems eines CEC zu unterstützen, z.B. eine Verbindungsadresse je Kanalabbild. Dies ist eine nicht bevorzugte Version dieser Erfindung, um die Abbilder innerhalb eines CEC zu handhaben, da die Interpoliereinrichtung nicht weiß, wie viele Abbilder eines Kanals ein CEC unterstützt oder mit wie vielen dieser gerade konfiguriert ist, und hat somit die maximale Anzahl jedem Kanal zuzuweisen, was wiederum die Anzahl der verfügbaren Verbindungsadressen verschlechtern und somit eine komplexere Ausführung des Anschlusses der Interpoliereinrichtung in der Interpoliereinrichtung erzeugen würde. Diese Technik würde es ebenfalls erfordern, daß die Interpoliereinrichtung Kenntnis davon hat, welchen Anschlüssen Kanäle zugewiesen wären und welche davon anteilig genutzte Kanäle wären.
  • Bei der oben zusammengefaßten bevorzugten Form dieser Erfindung wird ein einziger Anschluß benötigt, um entweder einen anteilig genutzten Kanal oder einen nicht anteilig genutzten Kanal einer Interpoliereinrichtung zuzuweisen, und die Interpoliereinrichtung weist eine einzige Verbindungsadresse einem physischen Kanal zu. Es ist die in dem Rahmenkopf eingeschlossene IID, die genutzt wird, um das Kanalabbild eines physischen Kanals eindeutig zu kennzeichnen.
  • Die Erfindung ist in Anspruch 1 in bezug auf Programme, die auf einem computerelektonischen Komplex laufen, und in Anspruch 9 in bezug auf mehrere Betriebssysteme definiert.
  • Kurzbeschreibung der Zeichnungen
  • Fig. 1 veranschaulicht einen die Erfindung nutzenden computerelektronischen Komplex (CEC).
  • Fig. 2 zeigt physische Kanalverbindungen, die direkt mit Steuereinheits- (CU-) anschlüsse verbunden sind, ohne durch einen dynamischen Schalter zu gehen.
  • Fig. 3 zeigt physische Kanalverbindungen, die ohne einen dynamischen Schalter mit Steuereinheiten (CUs) verbunden sind.
  • Fig. 4 veranschaulicht einen "Steuerblock für den logischen Pfad einer Steuereinheit" (CULPCB), der bei der Darstellung eines logischen Pfades innerhalb einer logischen Steuereinheit in einem Speicher genutzt wird, wobei dieser wiederum durch die Steuereinheit genutzt wird.
  • Fig. 5 stellt einen Rahmenkopf (der Kennzeichnungskomponenten für den logische Pfad umfaßt) dar, der von einem CEC an eine E/A-Steuereinheit übertragen wird.
  • Fig. 6 stellt einen Zustandsdeskriptor- (SD) Steuerblock einer SIE- (den Start interpretierende Ausführung) Anweisung dar, die genutzt wird, um die Betriebsmittel zu kennzeichnen, die einem Bereich in einem computerelektronischen Komplex (CEC) zugewiesen wurden.
  • Fig. 7 stellt eine Anweisung zum Start des Subkanals (SSCH) und deren Operanden zum Einsatz in einer Ausführungsform der Erfindung dar.
  • Fig. 8 ist ein Beispiel einer Matrix, die Kanalsteuerblöcke (CHCs) enthält, die in einer Ausführungsform der Erfindung genutzt werden.
  • Fig.9 veranschaulicht ein Beispiel des Inhaltes eines Konfigurationssteuerblocks (CCB), der zur Aktivierung der IIDs genutzt wird, die von Betriebssystemen in einem CEC eingesetzt werden können.
  • Fig. 10 veranschaulicht ein Beispiel des Inhaltes eines Kanalsteuerblockes (CHCB), der in einer Ausführungsform der Erfindung genutzt wird.
  • Fig. 11 ist ein Beispiel einer Matrix, die sowohl nichtanteilig genutzte Subkanalsteuerblöcke (SCB) als auch anteilig genutzte Steuerblöcke (SSCB) beinhaltet, die in einer Ausführungsform der Erfindung genutzt werden.
  • Fig. 12 veranschaulicht ein Beispiel des Inhaltes eines SSCB oder SCB, der in einer Ausführungsform der Erfindung genutzt wird.
  • Fig. 13 ist ein Beispiel einer Matrix, die Steuerblöcke einer logischen Steuereinheit (LCUCBs) enthält, die in einer Ausführungsform der Erfindung genutzt werden.
  • Fig. 14 veranschaulicht ein Beispiel des Inhaltes eines Steuerblockes einer logischen Steuereinheit (LCUCB), der in einer Ausführungsform der Erfindung genutzt wird.
  • Fig. 15 stellt eine Arbeitswarteschlange (WQH), eine Warteschlange eines Steuereinheitsabbildes (unter Nutzung eines LCUCB als Kopf) und einer Unterbrechungswarteschlange (IQH) dar, die von einer Ausführungsform genutzt werden.
  • Fig. 16A und Fig. 16B zeigen zusammen eine integrierte Ausführungsform der Erfindung, die unterschiedliche Typen von Steuerblöcken besitzt, die wiederum unterschiedliche Typen IID- assoziierter Abbilder für eine Vielzahl von Betriebssystemen darstellen.
  • Fig. 17 und Fig. 18 liefern ein Ablaufdiagramm einer Startanweisung für einen Subkanal in der bevorzugten Ausführungsform.
  • Beschreibung der detaillierten Ausführungsformen Computerelektronischer Komplex (CEC):
  • Fig. 1 zeigt einen computerelektronischen Komplex (CEC), der von einer Ausführungsform der Erfindung genutzt wird. Der CEC enthält eine oder mehrere zentrale Verarbeitungseinheiten (CPUs), einen Systemspeicher, Zwischenspeicher und Steuereinheiten (nicht dargestellt) des Typs, wie er nach dem Stand der Technik für die Verbindung der CPUs mit dem Systenspeicher und einem E/A-Subsystem gefunden wird. Die CEC-Betriebsmittel in Figur 1 werden in Quellbereiche 1 bis N konfiguriert, was auf eine Weise erfolgen kann, wie sie in der USA-Patentschrift 4 848 541 (oben bereits zitiert) beschrieben und beansprucht wird.
  • Jeder der N Bereiche des in Fig. 1 beschriebenen CEC beinhaltet ein Betriebssystem (OS), wobei ein übergeordnetes Betriebssystem im Mikrocode (wie etwa das übergeordnete Betriebssystem im Mikrocode IBM PR/SM) dem gesamten Betrieb der OS steuert. Alternativ kann der CEC eine Vielzahl OS enthalten, die unter einem übergeordneten Betriebssystem vom Typ einer virtuellen Maschinen- (VM) Software arbeiten. In jedem Fall hat der CEC eine Anzahl von N OS gleichzeitig und unabhängig unter der Steuerung eines übergeordneten Betriebssystems in der Ausführung. Diese Betriebssysteme können zum Beispiel Kopien der IBM VMS und/oder VM CMS sein.
  • Das E/A-Subsystem in Fig. 1 enthält E/A-Prozessoren (IOPs) 1 bis T und Kanalprozessoren (CHAN PROCs) 1 bis S. Das E/A-Subsystem kann zum Beispiel bis zu 256 Kanalprozessoren besitzen (wenn ein Acht-bit-CHPID genutzt wird) und hat gewöhnlich eine geringere Anzahl von IOPs. Die IOPs entfernen die E/A-Anfragen, die von der CPU über eine E/A-Warteschlange empfangen wurden, und wählt einen Kanalprozessor zur Steuerung der benötigten E/A- Operationen aus. Die Anzahl der IOPs wird durch die Anzahl bestimmt, mit der die CPU die E/A-Arbeitslast in einer zeitlichen Weise handhaben kann. Gewöhnlich werden nur wenige IOPs benötigt, wie etwa vier IOPs, die in der bevorzugten Ausführungsform vorausgesetzt werden. Die Kanalprozessoren steuern jeweils die Datenübertragungen auf den Kanälen 1 bis 5, von denen jeder ein serieller Kanal des Typs IBM S/390 ESCON wie in der bevorzugten Ausführungsform sein kann.
  • Diese Erfindung erlaubt es einer Vielzahl OS, gleichzeitig eine Vielzahl E/A-Kanalprogramme auszuführen, um direkt und wirksam die IOPs und E/A-Kanäle anteilig zu nutzen.
  • Die anteilige Nutzung der E/A-Betriebsmittel nutzt drei Typen von Abbildern von E/A-Betriebsmitteln, und zwar E/A-Kanalabbilder, logische Abbilder der Steuereinheit und Geräteabbilder über Subkanalabbilder.
  • Jeder physische Kanal wird durch einen anteilig genutzten Satz aus Kanalsteuerblöcken (CHCB) dargestellt. Die CHCBs befinden sich in einem E/A-Subsystemspeicher. Der E/A-Subsystemspeicher ist vorzugsweise von dem durch (zum Schutz der) CPU-Programme adressierbaren Speicher getrennt.
  • Jedes OS hat ein anderes "Kanalabbild" des gleichen physischen Kanals. Die unterschiedlichen Kanalabbilder des gleichen physischen Kanals werden durch Informationen in jedem der CHCB des anteilig genutzten Satzes dargestellt. Jedes Kanalabbild wird hier durch einen OS-Bezeichner (IID) und einen physischen Kanalbezeichner (CHPID) definiert. Der CHCB für ein bestimmtes Kanalabbild kann in einem E/A-Subsystemspeicher über seine zugehörigen CHPID- und IID-Werte lokalisiert werden. Unterschiedliche Eigenschaften für jedes der Kanalabbilder für den gleichen physischen Kanal werden über Festlegungen in den CHCB für die jeweiligen Kanalabbilder angezeigt.
  • Ein Abbild des Kanals wird als Komponente bei der Definition eines logischen Pfades (LP) von einem bestimmten OS durch den zugeordneten physischen Kanal zu einer logischen Steuereinheit (einschließlich durch einen dynamischen E/A-Schalter) genutzt. Ein einzelner logischer Pfad ist eindeutig gekennzeichnet durch die Kombination der physischen Kanalverbindungsadresse, der physischen CU-Verbindungsadresse, der IID und der logischen CU- Adresse, wobei sich dies auf entweder einen physischen Kanal oder einen Steuereinheitsanschluß bezieht. Unterschiedliche E/A- Kanalprogramme, die unter unterschiedlichen OS arbeiten, können unter Nutzung unterschiedlicher Abbilder des gleichen physischen Kanals gleichzeitig ausgeführt werden, obwohl nur ein Kanalprogramm Befehle, Daten oder den Status durch dem physischen Kanal zu einem bestimmten Zeitpunkt übertragen kann. Die Figuren 8 und 10 zeigen CHCBs und zeigen, wie sie in einer Matrix organisiert wurden, so daß sie mit dem CHPID- und IID-Werten lokalisiert werden können.
  • Jeder Subkanal wird durch einen anteilig genutzten Satz aus anteilig genutzten Subkanalsteuerblöcken (SSCBs) dargestellt. Die SSCBs befinden sich in einem E/A-Subsystemspeicher. Der E/A- Subsystemspeicher ist vorzugsweise vom (zum Schutz des) durch die CPU adressierbaren Speicher getrennt.
  • Jedes OS hat ein anderes "Subkanalabbild" des gleichen Subkanals. Die unterschiedlichen Subkanalabbilder des gleichen Subkanals werden durch Informationen in jedem der SSCB des anteilig genutzten Satzes dargestellt. Jedes Subkanalabbild ist hier durch einen OS-Bezeichner (IID) und einen Subkanalbezeichner (Subkanalnummer) definiert. Die SSCB für ein besonderes Subkanalabbild können in einem E/A-Subsystemspeicher durch seine zugehörige Subkanalnummer und IID-Werte lokalisiert werden. Unterschiedliche Eigenschaften für jedes der Subkanalabbilder für dem gleichen Subkanal sind durch die Festlegungen in den SSCBs für die jeweiligen Subkanalabbilder gekennzeichnet.
  • Unterschiedliche E/A-Kanalprogramme, die unter unterschiedlichen OS arbeiten, können gleichzeitig ausgeführt werden und teilen sich den gleichen Subkanal (das gleiche Gerät) durch den Einsatz unterschiedlicher Abbilder des gleichen Subkanals, obwohl nur ein Kanalprogramm zu einem Zeitpunkt auf das Gerät zugreifen kann. Fig. 11 und 12 zeigen SSCB.
  • Jede logische Steuereinheit wird durch einen anteilig genutzten Satz logischer Steuereinheitssteuerblöcke (LCUCBs) dargestellt. Der E/A-Subsystemspeicher ist vorzugsweise vom (zum Schutz des) adressierbaren Speicher des CPU-Programms getrennt.
  • Jedes OS hat ein anderes "logisches Steuereinheitsabbild" der gleichen logischen Steuereinheit. Die unterschiedlichen logischen Steuereinheitsabbilder der gleichen logischen Steuereinheit werden durch Informationen in jedem der LCUCBs des anteilig genutzten Satzes dargestellt. Jedes logische Steuereinheitsabbild wird hier durch einen OS-Bezeichner (IID) und einen logischen Steuereinheitsbezeichner, (LCUCB-Nummer) definiert. Der LCUCB für ein bestimmtes logisches Steuereinheitsabbild kann im E/A-Subsystemspeicher durch seine zugehörige LCUCB-Nummer und IID-Werte lokalisiert werden. Unterschiedliche Eigenschaften für jedes der logischen Steuereinheitsabbilder für die gleiche logische Steuereinheit werden durch Festlegungen in den LCUCBs für die jeweiligen logischen Steuereinheitsabbilder gekennzeichnet.
  • Unterschiedliche E/A-Programme, die unter unterschiedlichen OS arbeiten, können die gleiche logische Steuereinheit durch Nutzung unterschiedlicher Abbilder der gleichen logischen Steuereinheit gleichzeitig ausführen und die gleiche logische Steuereinheit anteilig nutzen, obwohl nur ein logisches Kanalprogramm Befehle, Daten oder Statusinformationen über einen bestimmten physischen Kanal und Steuereinheitsanschluß zu einem bestimmten Zeitpunkt übertragen kann. Fig. 13 und 14 zeigen LCUCBs.
  • Obwohl diese Erfindung anteilig genutzte Kanäle, anteilig genutzte Steuereinheiten und anteilig genutzte Subkanäle unterstützt, erlaubt es diese Erfindung einem CEC, nichtanteilig genutzte Kanäle, nichtanteilig genutzte Steuereinheiten und nichtanteilig genutzte Subkanäle (Geräte) zu besitzen und zu nutzen, während es die anteilig genutzten E/A-Betriebsmittel nutzt. Ein bestimmter Kanal, eine Steuereinheit oder ein Subkanal können entweder von nichtanteilig genutzt nach anteilig genutzt oder von anteilig genutzt nach nichtanteilig genutzt durch dynamische oder statische Umkonfigurierung der CEC- Betriebsmittelzuordnungen geändert werden.
  • Das Abbildkonzept dieser Erfindung erlaubt es nur dem OS, daß mit einem bestimmten Abbildbetriebsmittelbezeichner (IID) assoziiert ist, auf Informationen zuzugreifen, die durch die Nutzung dieses Abbildbezeichners des OS erworben wurden. Die Nutzung anteilig genutzter Betriebsmittel durch diese Erfindung muß nicht den Schutz von E/A-Informationen vor OS-Zugriffen beeinflussen. Das heißt, jedes OS, das anteilig die gleichen physischen Betriebsmittel mit anderen OS nutzt, hält seine Sicherheit von E/A-Informationen vor allen anderen OS, die die Betriebsmittel anteilig nutzen, aufrecht. Und kein OS muß seine IID oder die IID irgendeines anderen sehen. In der bevorzugten Ausführungsform sind die IID für die OS nicht sichtbar, sondern sie sind zum Beispiel für das übergeordnete Betriebssystem, CPUs, E/A-Subsysteme und Steuereinheiten sichtbar.
  • Kanalpfade zu E/A-Geräten:
  • Fig. 2 veranschaulicht einen Satz physischer Kanalverbindungen des CEC in Fig.1. Gleichzeitig ausgeführte Kanalprogramme in unterschiedlichen OS in dem CEC können einen beliebigen einzelnen physischen Kanalpfad nutzen, um auf die gleichen oder andere E/A-Geräte zuzugreifen, wenn diese Erfindung genutzt wird. Jeder Kanalpfad kann Elemente wie etwa beliebige der Kanäle 1-S des CEC zu beliebigen der Steuereinheiten (CU) 1 bis R beinhalten. Diese CUs sind mit den E/A-Geräten A, E, ... Y, Z verbunden. Obwohl die Kanäle 1 bis S jeweils mit einer Anzahl von S Anschlüssen an jeder CU verbunden dargestellt werden, sollte man verstehen, daß jede CU eine von eins bis S zählende Anzahl Anschlüsse besitzen kann. Jeder der Kanäle 1 bis S kann mit einem anderen Anschluß einer CU verbunden sein. Und einige Kanäle brauchen nicht mit einer bestimmten CU verbunden zu sein.
  • Fig. 3 zeigt die gleichen physischen Kanalverbindungen 1 bis S, die über einen dynamischen Schalter 11 mit dem gleichen Steuereinheiten (CUs) 1 bis R verbunden sind. Der Vorteil des dynamischen Schalters 11 besteht darin, daß man die gleiche Verbindung von Kanälen zu CUs erhält (so wie man diese in Fig. 2 ohne einen dynamischen Schalter erhält), außer daß in Fig. 3 jede CU nur einen einzelnen Anschluß besitzt, an den jeder der Kanäle 1 bis R angeschlossen werden kann. Somit beseitigt der dynamische Schalter 11 die Notwendigkeit mehrerer CU-Anschlüsse, um eine flexible Kanal-zu-CU-Verbindung zu erzielen. Von den CU in Fig. 3 wird vorausgesetzt, daß sie an die gleichen Sätze aus E/A- Geräten A, E ... Y, Z wie in Fig. 2 angeschlossen sind.
  • Fig. 2 und 3 sollen zeigen, daß die Erfindung alle Möglichkeiten zur Erzielung physischer Kanal-zu-CU-Pfade umfaßt, unabhängig davon, ob ein dynamischer Schalter im Verbindungspfad bereitgestellt wird oder nicht und ob die CU einen oder mehrere Anschlüsse besitzen. Ein dynamischer Kanalschalter wird manchmal als "Interpoliereinrichtung" bezeichnet.
  • OS-Abbildbezeichner (IID):
  • Ein oder mehrere unterschiedliche "Abbildbezeichner" (IIDs) werden jedem der vielen OS zugewiesen, die in unterschiedlichen Betriebsmittelbereichen des CEC in Fig. 1 ausgeführt werden. In der hier betrachteten bevorzugten Ausführungsform wird ein IID jedem OS in einem CEC zugewiesen.
  • Obwohl sie OS zugewiesen wurden, sind in der bevorzugten Ausführungsform die IIDs für die OS nicht sichtbar. Jedoch sind sie zum Beispiel für das übergeordnete Betriebssystem, für CPUs, das E/A-Subsystem und Steuereinheiten sichtbar.
  • Die IIDs werden genutzt, um es den vielen OS zu ermöglichen, die physischen E/A-Betriebsmittel anteilig zu nutzen, die mit dem CEC verbunden werden können, ohne daß die Datensicherheit zwischen den OS verschlechtert wird. Die neu gefundene anteilige Einsetzbarkeit, die von dieser Erfindung bereitgestellt wird, ermöglicht es allen OS in einem CEC, maximal alle E/A-Kanäle, maximal alle Steuereinheiten (sowohl physische als auch logische), die dem CEC zur Verfügung stehen und maximal alle E/A- Geräte, die mit den Steuereinheiten verbunden sind, anteilig zu nutzen, ohne daß das übergeordnete Betriebssysteme in die E/A- Operationen eingreift.
  • Die Erfindung ermöglicht es den OS, unterschiedliche Abbilder der gleichen Kanäle, Subkanäle (die E/A-Geräte darstellen) und logischer Steuereinheiten zu nutzen. Die unterschiedlichen Abbilder ermöglichen eine individuelle anteilige Nutzung und Steuerung durch jedes OS des gleichen physischen Kanals und/oder der gleichen Steuereinheit (sowohl physisch als auch logisch) und/oder des gleichen physischen E/A-Gerätes.
  • Fig. 16 stellt ein Beispiel von Kanalabbildungen, logischen Steuereinheitsabbildungen und Subkanalabbildungen mit Hilfe von Steuerblöcken dar, die im E/A-Subsystemspeicher des CEC gespeichert sind. Eine Steuereinheit besitzt ebenfalls Steuerblöcke, die im E/A-Steuereinheitspeicher gespeichert sind, die, wie in Fig. 16B gezeigt, logische Pfade darstellen. Es ist der Einsatz dieser Steuerblöcke durch das E/A-Subsystem und die CU, die es den unterschiedlichen OS erlauben, daß sie alle auf die gleichen E/A-Betriebsmittel zugreifen und diese direkt anteilig nutzen.
  • Mehrere Abbilder des gleichen Subkanals erlauben es jedem OS, daß es mit dem gleichen Gerät (über ein OS-bezogenes Abbild des gleichen Subkanals) verbunden ist.
  • Unterschiedliche OS, die einen physischen Kanal anteilig nutzen, können asynchron Daten über den gleichen physischen Kanal zu unterschiedlichen Zeiten zum gleichen E/A-Gerät oder zu unterschiedlichen E/A-Geräten multiplexen.
  • Jedes der unterschiedlichen Kanalabbilder wird von einem Kanalsteuerblock (CHCB) in dem E/A-Subsystemspeicher darstellt. Der E/A-Subsystemspeicher liegt vorzugsweise in einem Speicherbereich, der vom Systemhauptspeicher getrennt ist, so daß der E/A-Subsystemspeicher nicht durch CPU-Befehle, sondern durch intern codierte (mikrocodierte) Befehle und Hardware adressierbar ist. Beispiele von CHCBs werden in Fig. 8, 10 und 16A gezeigt. Es kann bis zu (N+1)*(P+1) anteilig nutzbarer CHCBs im E/A-Subsystemspeicher geben.
  • Die bevorzugte Ausführungsform weist eindeutige IID-Werte ungleich Null jedem OS in einem CEC zu und reserviert dem IID=0- Wert für die Zuweisung an das übergeordnete Betriebssystem des CEC. Dem übergeordneten Betriebssystem kann dabei gerade ein beliebiger IID-Wert zugewiesen sein oder nicht.
  • Die Anforderungen an unterschiedliche übergeordnete Betriebssysteme ändern sich in Abhängigkeit davon, ob sie in der Lage sein müssen, E/A-Operationen für sich selbst auszuführen. Wenn zum Beispiel ein übergeordnetes Softwarebetriebssystem genutzt wird, sollte es in der Lage sein, E/A-Geräte mit seinen OS anteilig zu nutzen. Dann kann ein anteilig genutzter Subkanal-Steuerblock (SSCB) mit einer IID=0 jedem anteilig genutzten Satz aus SSCBs für die Nutzung durch das übergeordnete Betriebssystem bereitgestellt werden. Auf die gleiche Weise können ein CHCB und LCUCB mit einer IID=0 in jedem anteilig genutzten Satz aus CHCBs beziehungsweise LCUCBs bereitgestellt werden. Dies erlaubt es einem übergeordneten Betriebssystem (wie etwa dem VM/370 XA) E/A-Kanäle, CUs und Geräte gemeinsam mit seinen OS anteilig zu nutzen. Wenn andererseits ein übergeordnetes Mikrocodebetriebssystem genutzt wird (z.B. das übergeordnete Betriebssystem in dem IBM PR/SM LPAR-System), muß es mit seinen OS nicht E/A- Betriebsmittel anteilig nutzen, wobei in diesem Fall keine SSCB, CHCB oder LCUCB für das übergeordnete Betriebssystem (mit einen Wert von IID=0) in jedem anteilig genutzten Satz bereitgestellt werden müssen.
  • Die bevorzugte Ausführungsform macht die IIDs für alle OS in dem CEC und für alle Programme, die unter den OS laufen, transparent. Es ist nicht notwendig, irgendein OS oder OS-Programm zu besitzen, das bemerkt, daß IIDs in dem CEC genutzt werden oder daß E/A-Betriebsmittel von dem OS anteilig genutzt werden können. Nur das übergeordnete Betriebssystem, CPUs, E/A- Subsystem und Steuereinheiten müssen die IIDs und die anteilige Nutzung von Betriebsmitteln bemerken. Kein OS muß einen IID-Wert sehen oder auf diesen zugreifen, da der IID-Wert des Betriebssystems automatisch durch das übergeordnete Betriebssystem, CPU, E/A-Subsystem und der Steuereinheitsteuerung (einschließlich deren Systemmikrocode- und Hardwareoperationen) immer dann gehandhabt wird, wenn ein OS eine E/A-Operation anfordert. Und Programme, die unter einem beliebigen OS ausgeführt werden (z.B. in einem beliebigen logischen Bereich oder in einer virtuellen Maschine in einem CEC), müssen das Vorhandensein von IIDs nicht bemerken.
  • Aktivierung vom IID-Wert:
  • Fig. 9 veranschaulicht einen Konfigurationssteuerblock (CCB), in dem die unterschiedlichen IID-Nummern für die Nutzung durch die CEC-Operationen aktiviert oder deaktiviert werden können. Für jeden möglichen IID-Wert von null bis zu einem Maximum wird eine Bitposition bereitgestellt. Eine Bitposition, die einem bestimmten IID-Wert entspricht, wird auf einen Eins-Zustand gesetzt, um diesen IID-Wert zu setzen, oder sie wird auf einen Null-Zustand gesetzt, um einen inaktiven Zustand für diesen IID-Wert anzuzeigen.
  • Wenn jede IID durch eine 8-bit-Zahl dargestellt wird, erlaubt dies bis zu 255 Werte ungleich 0, von denen zum Beispiel 63 aktiviert und OS eines CEC mit eingeteilten Betriebsmitteln zugewiesen sein können. Die IIDs können durch eine größere oder kleinere Zahl spezifiziert sein, und einem beliebigen OS kann mehr als eine IID zugewiesen sein, obwohl in der bevorzugten Ausführungsform einem beliebigen OS nur eine IID zugewiesen wurde.
  • Für die aktivierten IID-Werte gibt es keine Notwendigkeit, daß sie bei einem bestimmten Wert beginnen oder in einem dichten Bereich aus IID-Werten liegen. Zum Beispiel kann eine Realisierung einen Satz aus vier aktiven IID-Werten wie etwa 0, 2, 7 und 8 für vier zugeordnete OS bereitstellen.
  • Zuweisung von IID an ein OS:
  • Eine IID wird einem OS zugewiesen, indem der IID-Wert in einem Steuerblock des übergeordneten Betriebssystems gespeichert wird, wobei dieser als eine SD (Zustandsbeschreibung - state description) bezeichnet wird, die der Operand eines SIE-Befehls (Beginn der interpretierenden Ausführung - start interpretive execution) ist, der nur durch das übergeordnete Betriebssystem ausgeführt wird, um ein OS abzufertigen. Eine beispielhafte Form einer SD wird in Fig. 6 gezeigt. Jedem OS, das unter dem übergeordneten Betriebssystem arbeitet, wird jeweils eine SD im Systemhauptspeicher zugeordnet, um die Teilmenge der CEC-Betriebsmittel festzulegen, die für jedes OS verfügbar ist. Dementsprechend wird eine IID einem OS zugewiesen, wenn der zugewiesene IID-Wert in dem IID-Feld in der SD gespeichert wurde, wobei diese dem jeweiligen OS zugewiesen wurde. Auf die SDs kann in dieser Ausführungsform nicht durch die OS zugegriffen werden.
  • Wenn ein E/A-Befehl von einem OS ausgegeben wird, wird die IID des OS gewöhnlich bei der Ausführung des Befehls benötigt. Das übergeordnete Betriebssystem oder der Mikrocode greifen auf die IID in der SD zu, und der Mikrocode, der die Ausführung des Befehls für das jeweilige OS steuert, legt die IID für den vorliegenden OS-Befehl an, ohne daß das OS Zugriff auf die IID hat. Der Mikrocode lokalisiert jeden benötigten CHCB, SSCB und/oder LCUCB und greift auf diese zu, um einen Kanal, Subkanal oder logische Steuereinheitsabbilder auszuwählen, die zur Ausführung des OS-Befehls, zur Einstellung der benötigten logischen. Pfad- (LP) Spezifikation, zur Erzeugung eines Rahmenkopfes (der alle bei der CU benötigten Adressen enthält) und zur Übertragung des Rahmenpaketes auf dem ausgewählten physischen Kanalpfad zu der CPU für dem Zugriff auf ein angefordertes E/A- Gerät (ebenfalls in dem Rahmenkopf adressiert) benötigt wird. Die CU speichert die übertragene LP-Spezifikation (einschließlich deren IID) für den Einsatz durch die CU, wenn die CU später auf die Anfrage antworten muß (nachdem der angeforderte Befehl ausgeführt wurde).
  • Kanalabbilder (CHCBs):
  • Abbilder von jedem Kanal werden von Kanalsteuerblöcken (CHCBs) bereitgestellt, die jeweils in Verbindung mit anderen Steuerblöcken genutzt werden. Jeder physische Kanal wird durch eine jeweilige CHPID-Nummer gekennzeichnet.
  • Nicht alle dieser Kanäle müssen anteilig genutzt werden, so werden in Fig. 8 Kanäle, die zu den CHPIDs 0 bis 4 gehören, nicht anteilig benutzt und entweder dem übergeordneten Betriebssystem (IID=0) oder einem der OS (IID ungleich Null) zugewiesen. Jede Zahl der Kanäle, einschließlich aller oder keiner, kann arnteilig genutzt werden. In Fig. 8 werden die Kanäle mit CHIPDs größer als 4 von allen N OS anteilig und CHPIDs 0 bis 4 nichtanteilig genutzt.
  • Jede CHIPD kann eine Vielzahl Kanalabbilder (CHCBs) bis zur Anzahl der IIDs (gleich der Anzahl der OS) besitzen. Jedes der Kanalabbilder stellt, unabhängig einen physischen Kanal für ein bestimmtes OS dar, so daß die OS unabhängig auf dem physischen Kanal arbeiten können. Das heißt, jedes OS, das einen bestimmten physischen Kanal nutzt, hat sein eigenes Kanalabbild, das sich von den Kanalabbildern der anderen OS für den gleichen physischen Kanal unterscheidet. Somit kann jedes Kanalabbild für ein OS Zustände aufweisen, die sich von dem Kanalabbild jedes anderen OS für den gleichen physischen Kanal unterscheiden und von ihnen unabhängig sind.
  • Fi. 8 zeigt ein Beispiel für ein Array aus CHCBs 0(0) bis P(N), das alle Kanalabbilder für alle physischen Kanäle in einem CEC darstellt. Die jeweiltgen CHCBs sind in dem Array nach ihrer zugewiesenen CHPID indiziert (angeordnet), die in das erste Feld jedes CHCB in der bevorzugten Ausführungsform geschrieben wurden, wobei hier jede CHPID von einer 8-bit-Zahl dargestellt wird, die die maximale Anzahl der CHPIDs (und die zugehörige Anzahl von Kanälen in dem CEC) auf 256 begrenzt. (Zur Beachtung: Dieses Beispiel stellt nicht das Array von CHCBs, das in Fig. 16A gezeigt wird, dar, bei dem nur CHCBs für anteilig genutzte Kanäle dargestellt werden).
  • Struktur eines CHCB:
  • Fig. 10 zeigt dem Inhalt eines CHCB (der ebenfalls der Inhalt der in Figur 16A genutzten CHCBs ist). Die erste Zeile in jedem CHCB enthält dem Wert der CHPID, die durch den jeweiligen CHCB dargestellt wird. Ein IID-Feld enthält die IID, die diesem CHCB zugewiesen wurde. Diese beiden Werte, die CHPID und IID, lokalisieren zusammen jeden CHCB in dem E/A-Subsystemspeicher, wo sie zum Zugriff eihes CHCB bei den Kanaloperationen genutzt werden. Weitere Felder in jedem CHCB sind:
  • U: Kennzeichnung für anteilige/nichtanteilige Nutzung zeigt an, ob der Kanal nichtanteilig (einem OS zugewiesen) oder anteilig von mehreren OS genutzt wird.
  • C: Veränderte Online/offline-Kennzeichnung zeigt an, ob das jeweilige Kanalabbild online verändert wurde, wobei es betriebsbereit sein kann, oder ob es offline verändert wurde, wobei es nicht betriebsbereit gewesen sein konnte, es jedoch für eine Wartungsoperation bedient werden konnte.
  • P: Permanenter Fehler: Zeigt an, ob sich das Kanalabbild in einem permanenten Fehlerzustand befindet oder nicht.
  • A: Kandidat: Zeigt an, ob es dem Kanalabbild erlaubt wird, daß es online verändert wird.
  • S: Unterdrückt: Zeigt an, ob eine neue E/A-Aktivität für das Kanalabbild initiiert werden kann.
  • In jedem CHCB können zusätzlich zu diesen definierten Feldern andere Felder vorhanden sein, die nicht mit den CHCBs in dieser Beschreibung übereinstimmen.
  • Die folgenden (und weiteren) Szenarien sind in den Zuständen dieser neuen Kanalabbilder für die gleichen oder andere physische Kanäle möglich:
  • a) Anteilig genutzte Abbilder für OS 1, 2 und 3 werden online verändert.
  • b) Das Kanalabbild für OS 1 wird offline verändert und ist nicht betriebsbereit, während die Kanalabbilder für OS 2 und 3 online verändert werden und E/A-Operationen gleichzeitig ausführen.
  • c) Ein momentaner Fehlerzustand ist in dem physischen Kanal aufgetreten, der bewirkt, daß die Kanalabbilder für die OS 2 und 3 in einen permanenten Fehlerzustand gebracht werden. (Das Kanalabbild für OS 1 ist offline, wie es durch den vorangehenden Schritt verändert wurde).
  • d) Um dieses Kanalabbild wieder zu nutzen, verändert OS 2 sein Kanalabbild nach offline und verändert dann das Kanalabbild nach online, was den Fehlerzustand behebt und das Kanalabbild fehlerfrei macht. Diese Ergebnisse in den drei Kanalabbildern führen zu einem anderen Zustand: Das Kanalabbild von OS1 ist offline; das Kanalabbild von OS 2 ist online und fehlerfrei, und das Kanalabbild von OS3 ist online und hat einen permanenten Fehler.
  • Andere Steuerblöcke je Kanal:
  • Beim Betrieb des Kanals werden andere Steuerblöcke genutzt, wie zum Beispiel ein "umgekehrter Suchsteuerblock" (RLCB), der jedem CHCB zugeteilt ist. Der RLCB listet jeden Subkanal auf, der einen jeweiligen physikalischen Kanal nutzen kann.
  • Wenn es eine Veränderung der Kanalzuweisung in den Subkanalabbildern (SSCBs für den gleichen anteilig genutzten Satz) gibt, bei der einige Subkanäle in dem anteilig genutzten Satz einen bestimmten Kanal nutzen können und andere Subkanäle in dem anteilig genutzten Satz nicht, kann eine derartige Veränderung ebenfalls in dem RLCB aufgelistet sein. (Allerdings ordnet die bevorzugte Ausführungsform hier die gleichen Kanäle (CHPIDs) allen SSCBs in dem gleichen anteilig genutzten Satz zu).
  • Subkanalabbilder (SCBs und SSCBs):
  • Diese Erfindung liefert einen Satz aus Subkanalabbildern für jeden Subkanal mit Hilfe eines "anteilig genutzten Satzes" aus SCBs, die hier "anteilig genutzte SCBs" (SSCBs) genannt werden. Die SSCBs in einem anteilig genutzten Satz werden jeweils anderen IIDs zugewiesen (die unterschiedliche OS darstellen). Das neue Konzept eines anteilig genutzten Satzes ermöglicht es allen OS in einem CEC, auf das gleiche Gerät zuzugreifen (da die gleiche Subkanalnummer, die das gleiche Gerät darstellt, allen SSCBs in dem gleichen anteilig genutzten Satz zugewiesen wurde).
  • Fig. 11 zeigt ein Beispiel, das sowohl anteilig genutzte Sätze aus SSCBs als auch nichtanteilig genutzte SCBs besitzt. Jeder Kasten in Fig. 11 stellt einen SSCB oder einen SCB dar. Sie sind in Fig. 11 gemäß den Subkanalnummern A bis Z senkrecht angeordnet, bei denen die Subkanalnummern mit den E/A-Geräten in den Fig. 2 und 3 entsprechen. Subkanalnummern A bis E stellen nur nicht anteilig genutzte SCBs dar. Jede der Subkanalnummern F bis Z stellt einen anteilig genutzten Satz aus SSCBs dar. Wie vorher festgestellt, ist jeder Subkanal einem anderen E/A-Gerät zugewiesen.
  • Die obere Zeile in Fig. 11 zeigt das Eigentum des OS an den SSCBs an. Jede Spalte ist jeweils einer anderen IID von 0 bis N zugewiesen, um das Eigentum des OS an dem SSCB in der jeweiligen Spalte anzuzeigen. In Spalte IID=0 gehören die SSCB dem übergeordneten Betriebssystem, da IID=0 dem übergeordneten Betriebssystem in der bevorzugten Ausführungsform zugewiesen wurde.
  • Dementsprechend lokalisiert jede der Subkanalnummern A bis E einen nichtanteilig genutzten SCB, der entweder dem übergeordneten Betriebssystem (IID=0) oder einem der anderen OS (IID ungleich Null) zugewiesen wurde. Und jede der Subkanalnummern F bis Z ist einem anteilig genutzten Satz aus SSCB zugewiesen, um es seinem von ihm dargestellten E/A-Gerät zu ermöglichen, von dem übergeordneten Betriebssystem und von jedem der OS mit den IIDs 1 bis N anteilig genutzt zu werden. Das anteilig genutzte Gerät wird ebenfalls einen oder mehrere Kanäle anteilig nutzen, wenn die gleichen CHPIDs in jedem der SSCBs in dem anteilig genutzten Satz spezifiziert wurden, so wie es in der hier bevorzugten Ausführungsform getan wurde.
  • Obwohl man von jedem der SSCBs in einem anteilig genutzten Satz annehmen kann, daß er ein "Subkanalabbild" von jedem anderen bereitstellt, da diese alle an dem gleichen Subkanal anliegen, stellen diese SSCBs nur "vollständige Subkanalabbilder" voneinander dar, wenn sie alle die gleichen CHPID-(Kanal)-Zuweisungen besitzen.
  • Ein anteilig genutzter Satz kann "partielle Subkanalabbilder" enthalten, wenn einige SSCB in dem anteilig genutzten Satz nicht alle CHPIDs besitzen, die in anderen SSCBs in dem Satz spezifiziert wurden. Allerdings unterstützt ein anteilig genutzter Satz "anteilig genutzte Kanäle", wenn zwei oder mehr SSCBs in dem anteilig genutzten Satz die gleiche CHPID besitzen, um es unterschiedlichen OS zu ermöglichen, den gleichen Kanal anteilig zu nutzen, wenn auf das E/A-Gerät zugegriffen wird, das durch den anteilig genutzten Satz dargestellt wird.
  • In der hier bevorzugten Ausführungsform hat jeder SSCB in dem gleichen Satz die gleichen CHPIDs, jedoch haben unterschiedliche anteilig genutzte Sätze unterschiedliche Sätze aus CHPIDs, obwohl sie einige oder alle CHPIDs gemeinsam besitzen können.
  • Struktur eines SSCB:
  • Fig. 12 zeigt den Inhalt von jedem SSCB und SCB, die in Fig. 11 gezeigt werden (SSCBs und SCBs sind in ihren Feldaufbau identisch und unterscheiden sich darin, ob sie in anteilig genutzten Sätzen eingesetzt werden oder nicht). Einige der Felder des dargestellten SSCB/SCB-Inhalts sind mit den Feldern in dem SCHIB (Subkanalinformationsblock), den man der S/390-Architektur nach dem Stand der Technik finden kann, identisch. Jedoch enthalten die neuen Felder, die hier in den SSCB/SCB bereitgestellt werden, ein IID-Feld, ein Warteschlangenzeigerfeld, ein QID- Feld, ein Steuerbitfeld für die E/A-Interpretation (INCB), ein LCUCB-Nummernfeld und ein SSCB-Nummernfeld, die wie folgt definiert sind:
  • a. Das INCB- (Steuerbit für die E/A-Interpretation) Feld zeigt an, ob das Subkanalabbild für die Instruktion und Unterbrechungsinterpretation freigegeben wurde oder nicht.
  • b. Das Warteschlangenzeigerfeld in dem SSCB ermöglicht es, daß es in eine aus mehreren Typen Warteschlangen eingereiht wird, die eine Funktion ausführen, die für die Auswahl von SSCBs genutzt wird. Dies können etwa eine "Start der Subkanalarbeit- Warteschlange" und eine "Geräteunterbrechungswarteschlange", so wie die in Fig. 15 gezeigten Warteschlangen sein.
  • c. Der Inhalt des QID-Feldes spezifiziert eine bestimmte Warteschlange, die den SSCB enthält (der auf dem Zeigerwert in dem Kettenzeigerfeld angewandt wird).
  • d. Das IID-Feld enthält den zugewiesenen IID-Wert.
  • e. Das LCUB-Nummernfeld enthält den Kennzeichner der logischen Steuereinheit des LCUCB, der mit dem SSCB assoziiert ist. Die LCUCB-Nummer und IID-Felder werden in Kombination genutzt, um dem zugehörigen LCUCB im E/A-Subsystemspeicher zu lokalisieren.
  • f. Das SSCB-Nummernfeld enthält den zugehörigen SSCB- (oder SCB-) Wert.
  • Die IID-Feld- und die SSCB-Nummernfeldinhalte werden für die Nachweisüberprüfung bereitgestellt. Die Werte in diesen Feldern werden durch die Lage des jeweiligen SSCB in dem in Figur 11 gezeigten Array angedeutet (theoretisch werden diese Werte nicht benötigt, um den SSCB oder SCB zu spezifizieren).
  • Das SSCB-Nummernfeld wird von dieser Erfindung benötigt, um die gleiche SSCB-Nummer in jedem SSCB in dem gleichen anteilig genutzten Satz zu enthalten.
  • Die anderen Felder in den in Figur 12 gezeigten SSCB/SCB können die gleichen wie die Felder sein, die nach einem SCHIB nach dem Stand der Technik in den ESA/390 Principles of Operation (hier bereits zitiert) definiert wurden, und die auch in jedem SSCB bereitgestellt werden können. Allerdings werden einige dieser in dem früheren SCHIB gefundenen Felder auf eine neue Weise von dieser Erfindung genutzt, so wie die folgenden:
  • Ein gültiges Feld V zeigt an, ob das durch den SSCB dargestellte Abbild gültig ist und genutzt werden kann; wenn es ungültig ist, kann auf das dargestellte Abbild nicht durch das zugewiesene OS (dargestellt durch seine zugewiesene IID) zugegriffen werden. Allerdings kann auf das gleiche Gerät durch andere OS mit gültigen Abbildern des gleichen Subkanals zugegriffen werden, die durch einen gültigen Zustand angezeigt werden (mit einem Gültigkeitsbit = 1, aber unterschiedlichen zugewiesenen IID). Daher kann das V-Bit in jedem Subkanalabbild entweder auf eins oder null gesetzt werden, um es nur ausgewählten OS zu erlauben, E/A-Operationen auf dem zugehörigen E/A-Gerät anzufordern.
  • In der bevorzugten Ausführungsform enthält jedes SSCB- oder SCB- Feld bis zu acht CHPIDs (CHPID-0 bis CHPID-7), die es erlauben, daß auf das durch einen SCB oder SSCB dargestellte Gerät über einen von bis zu acht unterschiedlichen Kanälen, die durch diese CHPIDs dargestellt werden, zugegriffen wird. Wenn ein Gerät für eine Kommunikationsoperation (etwa, wenn ein Gerät gestartet oder zurückgesetzt wird) ausgewählt wird, sind einige seiner CHPID-spezifischen Kanäle möglicherweise nicht von dem anfordernden OS nutzbar, da es mit anderen Geräten beschäftigt ist, oder es ist gerade nur nicht betriebsbereit. Wenn ein Kanal als verfügbar angesehen wird, wird dieser als gerade ausgewählter Kanalpfad dem durch den SCB oder SSCB dargestellten Gerät zugewiesen.
  • Das freigegebene Bit E zeigt an, ob E/A-Operationen von dem durch diesen SSCB dargestellten Abbild ausgeführt werden können. Der E-Bitwert kann sich für die verschiedenen SSCB-Abbilder in dem gleichen anteilig genutzten Satz unterscheiden.
  • Der E/A-Unterbrechungs-Subklassencode, ISC, zeigt die Unterbrechungssubklasse an, die für eine E/A-Unterbrechung genutzt wird, die für das durch diesen SSCB dargestellte Abbild bereitgestellt wird. Die ISC-Werte können sich für die verschiedenen SSCB- Abbilder in dem gleichen anteilig genutzten Satz unterscheiden.
  • Die logische Pfadmaske, LPM, zeigt die logische Verfügbarkeit der Kanäle an, die von den CHPIDs in dem SSCB für den Zugriff auf das durch die Subkanalnummer in dem SSCB spezifizierte E/A- Gerät spezifiziert wurden.
  • Die Pfadverfügbarkeitsmaske, PAM, besitzt 8 Bits, die die physische Verfügbarkeit jedes der installierten Kanäle jeweils anzeigt, die in den CHPID-Feldern 1 bis 8 in dem SSCB für den Einsatz durch das in dem Subkanal-Nummernfeld spezifizierte E/A- Gerät spezifiziert wurde. Der PAM-Feldwert kann sich für die verschiedenen SSCB-Abbilder in dem gleichen anteilig genutzten Satz unterscheiden.
  • Ein DB- (Gerät ist belegt) Feld zeigt an, ob die letzte Anfrage in dem aktuellen logischen Kanalpfad für diesen SSCB einen Gerät-belegt-Zustand angetroffen hat, für den ein Geräteende- Zustand noch nicht empfangen wurde. Der DB-Feldname kann sich für die verschiedenen SSCB-Abbilder in dem gleichen anteilig genutzten Satz unterscheiden.
  • Ein Vertrauensfeld, ALLEG, zeigt für den gerade zugewiesenen Kanalpfad für dieses SSCB-Abbild an, ob einer der folgenden Vertrauenszustände zutrifft: 0. kein Vertrauen, 1. aktives Vertrauen, 2. ausgewähltes Vertrauen oder 3. arbeitendes Vertrauen. Der ALLEG-Feldwert kann sich für die verschiedenen SSCB-Abbilder in dem gleichen anteilig genutzten Satz unterscheiden.
  • Diese und andere Subkanal-Steuerfelder liefern ein E/A- Subsystem, das die Fähigkeit besitzt, unabhängig auf den Zustand und die Attribute von jedem Subkanalabbild zu achten. Zum Beispiel können Elemente, wie etwa das Pfadauswahlmanagement, die Pfadverfügbarkeit, Gerät-belegt-Zustände und Vertrauen unabhängig für jedes Subkanalabbild innerhalb jedes anteilig genutzten Satzes gehandhabt werden.
  • Im allgemeinen werden die IID-Werte in dem SSCBs (und in jedem SCB) zu einem Zeitpunkt aufgestellt, zu dem das E/A-Subsystem initialisiert oder umkonfiguriert wurde. Wenn ein übergeordnetes Software-Betriebssystem mit dm CEC genutzt wird, werden Steuerblöcke, die nicht anteilig genutzten Subkanälen (SCBs) zugeordnet wurden, auf einen IID-Wert von null gesetzt, was es dem übergeordneten Softwarebetriebssystem ermöglicht, die auf diesen Subkanälen ausgeführten E/A-Operationen zu steuern. Wenn jedoch ein mikrocodiertes übergeordnetes Betriebssystem mit dem CEC genutzt wird, werden die dem nicht anteilig genutzten Subkanälen (SCBs) assoziierten Steuerblöcke auf einen IID-Wert eines OS gesetzt, wenn ein Kanal zu diesem OS auf online geändert wird.
  • Wenn weiterhin der gleiche Kanal (CHPID) in allen SSCBs in einem anteilig genutzten Satz spezifiziert wurde, wird dieser Kanal von allen CEC anteilig genutzt, um eine Verbindung zu dem Gerät herzustellen, das durch den anteilig genutzten Satz aus SSCBs dargestellt wird. Somit ermöglichen die IID-Zuweisungen an alle SSCBs in einem anteilig genutzten Satz es allen OS in dem CEC, jeden Kanal anteilig zu nutzen, der von der CHPID in allen SSCBs in dem anteilig genutzten Satz gefunden wurde.
  • Isolierung anteilig genutzter Kanäle und anteilig genutzter Subkanäle:
  • Jedes der OS kann unabhängig von den anderen OS einen physischen Kanal oder ein physisches E/A-Gerät durch die Nutzung von Abbildern dieser Kanäle und Subkanäle bedienen. Unter diesen OS wird bei ihrer Nutzung der physischen Kanäle und E/A-Geräte keine Softwarekoordinierung benötigt. Die gesamte Koordination unter diesen OS wird automatisch durch die Abbildsteuerblöcke, wie etwa den CHCB und SSCB und anderen hier zu beschreibenden Abbildsteuerblöcken, durchgeführt.
  • Die Kennzeichnung von Steuerblöcken mit unterschiedlichen IIDs ermöglicht es den unterschiedlichen OS, unabhängig subkanalbezogene E/A-Befehle an das gleiche anteilig genutzte E/A-Gerät über anteilig genutzte Kanäle auszugeben, ohne daß es zu physischen Wechselwirkungen zwischen den OS kommt und wobei die Informationen, die für jeden OS zu übertragen werden, vollständig sicher vor den Befehlen sind, die mit dem gleichen physischen Übertragungsmedium von anderen OS ausgeführt werden. Es soll verstanden werden, daß die Verantwortung für die Sicherung von Informationen vor anderen OS, die sich in einem anteilig genutzten E/A- Gerät befinden, bei jedem OS liegt.
  • Obwohl die unterschiedlichen OS die gleichen Subkanalnummern (die gleichen E/A-Gerätebezeichner) und die gleichen CHPIDs (Kanalbezeichner) in den anteilig genutzten Sätzen sehen, kann kein OS auf den Kanal oder das Subkanalabbild zugreifen, das mit einem anderen OS assoziiert ist, da die Lagefeststellung von jedem Kanalabbild oder Subkanalabbild einen IID-Wert erfordert, der von dem OS nicht gesehen wird (kein OS hat Zugriff auf die IID-Werte), und auf die nur von dem übergeordneten Betriebssystem, von CPUs und dem E/A-Subsystem zugegriffen werden kann. Das Fehlen des Zugriffs auf die IID-Werte und das Unvermögen der OS, auf die E/A-Subsystemsteuerblöcke zuzugreifen, wird dadurch verstärkt, daß die IIDs in Steuerblöcke im Speichermedium abgelegt werden, die von keinem von einem OS ausgeführten Befehl adressierbar sind. Dies hindert wiederum jeden Befehl eines OS daran, die Befehle anderer OS zu stören.
  • Adreßerzeugung für SSCBs und SCBs:
  • Die Adresse eines angeforderten SSCB oder SCB erhält man durch den Mikrocode, der von dem einen E/A-Befehl anfordernden OS- Befehl ausgeführt wird. Die SSCBs in Figur 11 befinden sich in dem Speicher des E/A-Subsystems, der nicht von Befehlen adressierbar ist, die von OS ausgeführt werden (die sich in dieser Ausführungsform in dem Systemgebiet eines zur IBM S/390 kompatiblen Systems befinden). Auf einen SSCB wird durch Erzeugung einer Speicheradresse zugegriffen, die eine Subkanalnummer und einen IID-Wert ergibt.
  • Die Adresse eines benötigten SCB oder SSCB kann durch Multiplizieren von deren Subkanalnummer mit der Größe von jedem SCB oder SSCB und Addieren dieses Ergebnisses zu der passenden Basisadresse bestimmt werden. Es gibt eine einzelne passende Basisadresse, die für alle SCBs genutzt wird, und es gibt mehrere Basisadressen (eine für jede in dem CEC bereitgestellte IID), die für SSCBs genutzt werden. Die passende Basisadresse für einen SSCB ist diejenige, die dem IID-Feld in dem SSCB entspricht. In der bevorzugten Ausführungsform der Erfindung werden alle Adresse zu dem Zeitpunkt berechnet, an dem das E/A- Subsystem initialisiert wird. Dies macht die Berechnung einer SCB- oder SSCB-Adresse viel schneller, statt die Basisadresse jedesmal, wenn sie benötigt wird, neu berechnen zu müssen. Die Berechnung der Basisadresse ist davon abhängig, ob ein einzelner, fortlaufender Bereich von Speicheradressen für alle SCBs oder SSCBs genutzt wird, oder ob mehrere fortlaufende Bereiche von Speicheradresse für den Bereich des SCB und die Bereiche der SSCBs, die mit unterschiedlichen IIDs assoziiert sind, genutzt werden.
  • Die Adreßerzeugung für CHCBs und LCUCBs kann auf eine Weise durchgeführt werden, die der für SCBs/SSCBs ähnelt. Für CHCBs sind es eine CHPID-Nummer und IID, die einen CHCB eindeutig kennzeichnen. Für LCUCBs sind es eine LCUCB-Nummer und eine IID, die einen LCUCB eindeutig kennzeichnen.
  • Erweiterung der Anzahl Kanäle und Subkanäle:
  • Die Erfindung kann die wirksame Anzahl verfügbarer Kanal- und Subkanalabbilder in einem CEC auf Werte weit oberhalb der maximalen Anzahl erweitern, die durch die höchste verfügbare Bit-Anzahl in der CHPID und der Subkanalnummernwerte bereitgestellt wurde. Die maximal einem CEC zur Verfügung stehende Anzahl von Kanalabbildern ist gleich der maximalen Anzahl von Kanälen, multipliziert mit der Anzahl der IIDs in dem CEC. Die maximale Anzahl von Subkanalabbildern, die einem CEC verfügbar sind, ist wiederum gleich der maximalen Anzahl an Subkanälen, multipliziert mit der Anzahl von IIDs in dem CEC. Hierzu kommt es, weil jede CHPID und jede Subkanalnummer für jeden IID-Wert kopiert wird.
  • Einsatz eines dynamischen Schalters:
  • Bezugnehmend auf Fig. 16A und 16B kann ein physischer Kanal über einen dynamischen Schalter 62 mit einer physischen CU 60 verbunden oder nicht (wobei mehrere logische CUs innerhalb einer physischen CU vorhanden sein können). Wenn der Kanal mit Schalter 62 verbunden ist, besteht der physische Kanalpfad aus der physischen Kanalverbindung 63 zwischen dem CEC E/A-Subsystem und Schalter 62, und es ist eine physische Steuereinheitsverbindung 61 zwischen Schalter 62 und physischer CU geschaltet.
  • Wenn Schalter 62 nicht genutzt wird, erscheint der physische Kanalpfad als physische Kanalverbindung zwischen dem CEC E/A- Subsystem und der physischen CU (wobei mehrere logische CUs innerhalb der physischen CU vorhanden sein können).
  • Fig. 16B zeigt dem dynamischen Schalter 62, der mit den physischen Kanalverbindungen 63-0 bis 63-P der physischen Kanäle 65-0 bis 65-P verbunden ist. Steuereinheits- (CU-) Anschlüsse von Schalter 62 sind mit physischen CU-Verbindungen 61-0 bis 61-L verbunden, die mit Anschlüssen eines physischen CU-Blockes 60 verbunden sind. Innerhalb eines physischen CU-Blockes 60 sind mehrere logische Cus vorhanden, von denen jede in der Lage ist, alle Anschlüsse des physischen CU-Blockes zu nutzen. CU-Block 60 ist mit den physischen E/A-Geräten A-E bis Y-Z verbunden. (Fig. 16A und 16B zeigen gemeinsam eine integrierte Ausführungsform der Erfindung mit unterschiedlichen Typen von Steuerblöcken, die unterschiedliche Typen IID-assoziierter Abbilder bereitstellen, die wiederum vom OS anteilig genutzte Kanäle, Geräte und logische Steuereinheiten darstellen).
  • Logische Steuereinheitsabbilder (LCUCBs):
  • Eine physische Steuereinheit (physische CU) ist eine Einheit, die man im allgemeinen in einem elektronischen Block oder auf Leiterplatten und/oder auf Chips innerhalb eines Blockes findet, um den Betrieb eines oder mehrerer angeschlossener E/A-Geräte, wie etwa DASD, Band, Drucker, Anzeige, usw. zu steuern.
  • Die ESCON-E/A-Schnittstellenarchitektur stellt innerhalb einer physischen CU eine Vielzahl logischer Steuereinheiten (logischer CUs) bereit. Eine logische CU liefert die Funktionen und hat die logische Erscheinung einer Steuereinheit. Wenn innerhalb einer physischen CU nicht mehrere logische Cus vorhanden sind, sagt man, daß es in der physischen CU eine einzelne logische CU gibt. Logische CUs innerhalb einer physischen CU können vom gleichen allgemeinen Typ (z.B. zur Steuerung von DSAD) oder von unterschiedlichen allgemeinen Typen sein (z.B. einer zur Steuerung von DASD, ein anderer zur Steuerung von Druckern, usw.).
  • Jede der logischen CUs innerhalb einer physischen CU kann alle Anschlüsse nutzen, die für die physische CU vorhanden sind. Eine logische CU ist innerhalb einer physischen CU durch die logische Adresse eindeutig gekennzeichnet, die in dem Rahmenkopf, der von einem Kanal an eine logische Steuereinheit gesandt wurde, und in dem Rahmenkopf, der von einer logischen Steuereinheit an einen Kanal gesandt wurde, enthalten ist.
  • Die Informationen und Steuerungen in dem E/A-Subsystem, das sich auf eine logische CU bezieht, wird in einem LCUCB gehalten. Das E/A-Subsystem kennzeichnet durch die Nutzung einer logischen CU- Bezeichnung (LCUCB-Nummer) einen LCUCB.
  • Diese Erfindung stellt einen Satz logischer CU-Abbilder für jede logische CU mit Hilfe eines "anteilig genutzten Satzes" aus LCUCBs bereit. Die LCUCBs in einem anteilig genutzten Satz werden jeweils anderen IIDs (die unterschiedliche OS darstellen) zugewiesen. Dies ermöglicht es maximal allen OS in einem CEC, die gleiche logische CU anteilig zu nutzen, da sich die Informationen und Steuerungen, die sich auf die logische CU beziehen (wie etwa Informationen und Steuerungen bezogen auf logische Pfade zwischen Kanalabbildern und der logischen CU), getrennt für jedes Abbild der logischen CU aufrechterhalten werden.
  • Jeder LCUCB ist ein anteilig genutzter Satz, der die gleiche LCUCB-Nummer besitzt und der eindeutig durch die Kombination aus einer LCUCB-Nummer und einer IID gekennzeichnet ist. Fig. 13 zeigt ein Beispiel eines Arrays aus LCUCBs, ähnlich den Arrays aus CHCBs und SCBs/SSCBs in den Fig. 8 beziehungsweise 11. Die LCUCBs in dem Array sind über die LCUCB-Nummern 0 bis K in Vertikalrichtung und durch die IID-Nummern 0 bis N in Horizontalrichtung eingeordnet.
  • Fig 16A zeigt ebenfalls anteilig genutzte Sätze aus LCUCBs 67- 0(0) - 67-0(N) bis 67-K(0) - 67-K(N), in denen sich alle LCUCBs in anteilig genutzten Sätzen befinden (es werden keine nichtanteilig genutzten LCUCB eingesetzt). In Fig. 16A ist jeder anteilig genutzte Satz aus LCUCBs, z.B. 67-0(0) bis 67-0(N), mit einem oder mehreren anteilig genutzten Sätzen aus SSCBs assoziiert. SSCB-A(0) - SSCB-A(N) ist ein solches Beispiel dieser anteilig genutzten Sätze aus SSCBs und stelle das gleiche Gerät 71A, das mit der in Fig. 16B gezeigten assoziierten logischen CU verbunden ist, dar.
  • Struktur eines LCUCB:
  • Fig. 14 zeigt dem Inhalt jedes in Fig. 13 gezeigten LCUCB. Die erste Zeile in dem LCUCB enthält ein LCUCB-Nummernfeld für die Nummer, die diesem LCUCB zugewiesen wurde, ein IID-Feld für die IID, die dem jeweiligen LCUCB zugewiesen wurde und ein logisches CU-Adressfeld, das die logische CU innerhalb der physischen CU kennzeichnet. Jeder LCUCB ist der Kopf einer belegten Warteschlange, die aus SSCBs (und/oder SCBs) besteht, die gerade in die belegten Warteschlange eingereicht sind und bei der Lokalisierung der oberen und unteren Elemente in der Warteschlange genutzt werden. Somit steuert jeder LCUCB eine Warteschlange für Subkanalabbilder, deren aktuelle Funktion aufgrund eines Belegtzustandes unerledigt und verzögert ist.
  • Das "V"-Feld zeigt an, ob der LCUCB gültig ist. V=1 zeigt an, daß der LCUCB gültig ist. V=0 zeigt an, daß der LCUCB ungültig ist.
  • Das "IID"-Feld enthält die IID, die dem assoziierten CU-Abbild zugewiesen wurde.
  • Das "logische CU-Adreß"-Feld enthält die logische CU-Adresse, die die logische CU innerhalb der physischen CU kennzeichnet.
  • Die "LCUCB-Nummer" ist die logische CU-Bezeichnung für das E/A- Subsystem.
  • Das "CU-Zählerfeld für die belegte Warteschlange" enthält die aktuelle Länge der belegten Warteschlange. Die Länge der Warteschlange wird durch die Anzahl von Subkanalabbildern in der zugehörigen belegten Warteschlange bestimmt, bei der Funktionen aufgrund von Belegtzuständen nicht abgeschlossen und verspätet sind.
  • Obere und untere Zeigerfelder sollen Adressen oberer und unterer Warteschlangenelemente in der CU-Warteschlange enthalten.
  • Das Feld zur "Addition von Wartschlangenzählständen" addiert das Warteschlangenzählfeld an dem Zeitpunkt zur Summe, zu dem ein Subkanalabbild der spezifizierten besetzten Warteschlange hinzugefügt wird.
  • Das Feld zur "Addition von Warteschlangeneinreihungen" enthält einen vorzeichenlosen Binärzahlwert der Anzahl, mit der ein Subkanalabbild der spezifizierten belegten Warteschlange hinzugefügt wird.
  • CHPIDs 0 bis 7 sind die gleichen wie die bis zu acht CHPIDs in jedem der SSCBs für Geräte, die mit der logischen CU assoziiert sind, die durch den jeweiligen LCUCB dargestellt werden.
  • Den oben definierten Feldern innerhalb des LCUCB folgend, gibt es acht Teilsatzfelder, von denen jeder Teilsatz mit einem anderen der acht CHPID-Felder assoziiert ist. Jeder Teilsatz enthält die folgenden Felder:
  • Feld B enthält eine Belegtkennung für das zugehörige logische CU-Abbild.
  • Feld E zeigt an, ob eine Anfrage zur Erstellung eines logischen Pfades zwischen dem zugehörigen logischen CU-Abbild und Kanalabbild besteht.
  • Feld R zeigt an, ob eine Anfrage zur Entfernung eines logischen Pfades zwischen dem zugehörigen logischen CU-Abbild und Kanalabbild besteht.
  • Feld S zeigt an, ob eine Anfrage nach einem Systemreset auf Geräteebene zwischen dem zugehörigen logischen CU-Abbild und Kanalabbild vorhanden ist.
  • Feld L zeigt an, ob ein gerade aufgestellter logischer Kanal zwischen dem zugehörigen logischen CU-Abbild und Kanalabbild besteht.
  • Das "physische Kanalverbindungsadreß"-Feld und das "physische CU-Verbindungsadreß"-Feld können ihren Inhalt mit den Inhalten der vorhergehenden IID- und logischen CU-Adreßfeldern kombiniert haben, um die Identität des logischen Kanalpfades zuliefern, der zwischen dem zugewiesenen Kanalabbild und dem logischen CU- Abbild besteht.
  • Ein "Schalter-Belegt-Zählwert"-Feld enthält einen Zählwert, der angibt, wie oft eine Initialisierungsauswahlfolge für eine Start- oder Haltfunktion zu einer Schalter-Belegt-Antwort auf dem zugehörigen logischen Kanalpfad führte. Jedes Schalter- Beleg-Zählwertfeld entspricht eins-zu-eins gemäß der relativen Position den PIM-Bits des Subkanals, der mit der logischen CU assoziiert ist.
  • Das "CU-Belegt-Zählwert"-Feld enthält einen Zählwert, der angibt, wie oft eine Initialisierungsauswahlfolge für eine Start- oder Haltfunktion zu einer Steuereinheit-Belegt-Antwort auf dem zugehörigen logischen Kanalpfad führte. Jedes Steuereinheit-Belegt-Zählwertfeld entspricht eins-zu-eins gemäß der relativen Position dem PIM-Bits des Subkanals, der mit der logischen CU assoziiert ist.
  • Das "Erfolg-Zählwert"-Feld enthält einen Zählwert, der angibt, wie oft eine Initialisierungsauswahlfolge für eine Start- oder Haltfunktion dazu führte, daß das Gerät den ersten Befehl des Kanalprogramms auf dem zugehörigen logischen Kanalpfad akzeptierte. Jedes Erfolg-Zählwertfeld entspricht eins-zu-eins gemäß der relativen Position mit dem PIM-Bits des Subkanals, der mit der logischen CU assoziiert ist.
  • Logischer Pfadsteuerblock der Steuereinheit (CULPCB):
  • Bevor es zur Kommunikation zu einem an die logische CU angeschlossenen E/A-Gerät kommen kann, muß ein logischer Kanal zwischen einem Kanal und einer logischen CU eingerichtet werden. Diese Erfindung erweitert die Kennzeichnung eines logischen Pfades (LP) dahingehend, daß die IID eingeschlossen wird, die dem Kanalabbild entspricht. Somit muß ein eindeutiger LP zwischen jedem Abbild eines Kanals und einer logischen CU erstellt werden, bevor es zur Kommunikation mit einem an die logische CU angeschlossenen E/A-Gerät kommen kann, indem jedes der jeweiligen Kanalabbilder genutzt wird. Ein einzelner LP ist eindeutig durch die Kombination der physischen Kanalverbindungsadresse, physischen CU-Verbindungsadresse, IID und logischen CU- Adresse mit Bezug auf entweder einen physischen Kanal oder einen Steuereinheitsanschluß, gekennzeichnet.
  • Die Informationen und die Steuerungen in einer E/A-Steuereinheit (CU), die sich auf einen erstellten LP beziehen, werden in einem "Steuerblock für die Steuereinheit des logischen Pfades" (CULPCB) gehalten. Die Anzahl der CULCBs, die sich im Speicher einer E/A-Steuereinheit befinden, bestimmt die maximale Anzahl von LPs, die eine CU zu einem beliebigen Zeitpunkt erstellt haben kann. Die maximale Anzahl von CULPCBs, die in dem Speicher einer E/A-Steuereinheit vorhanden sein können, ist nach oben offen, da es veränderbare Zahl sein kann.
  • Wenn ein Kanalabbild fordert, daß ein LP zwischen dem Kanalabbild und einer logischen CU (unter Nutzung der Prozedur zur Erstellung eines logischen Pfades) erstellt wird, versucht die CU einen verfügbaren CULPCB zu lokalisieren, der dem spezifizierten LP zugewiesen werden kann. Ein CULPCB, der gerade einem anderen erstellten LP zugewiesen ist, wird von der CU als nicht verfügbar angesehen. Wenn ein verfügbarer CULPCB lokalisiert werden kann, kann die CU dem Kanalabbild antworten, daß der LP erstellt wurde. Wenn kein verfügbarer CULPCB lokalisiert werden kann, antwortet die CU dem Kanalabbild, daß der LP nicht erstellt wurde. Wenn ein LP erstellt wurde, ist der mit diesem erstellten LP assoziierte LP nicht länger verfügbar. Der CULPCB kann später verfügbar werden, wenn der erstellte LP, dem der CULPCB zugeordnet wurde, später entfernt wird.
  • Ein CULPCB, der einem erstellten LP innerhalb einer CU zugewiesen wurde, wird von den gleichen Bezeichnern gekennzeichnet, die einen LP in bezug auf einen Steuereinheitsanschluß kennzeichnen. Das heißt, ein CULPCB ist eindeutig gekennzeichnet durch die Kombination einer physischen Kanalverbindungsadresse, einer physischen CU-Verbindungsadresse, einer IID, einer logischen CU- Adresse und einem Steuereinheitsanschlußbezeichner (CU- Anschlußnummer). Sowie ein CULPCB einem erstellten Pfad zugeordnet wird, wird der CULPCB dem Kanalabbild, der logischen CU und dem Steuereinheitsanschluß zugeordnet, die mit dem erstellten Pfad entsprechen.
  • Ein verfügbarer CULPCB innerhalb einer physischen CU kann für die Erstellung eines LP in Abhängigkeit von der Identität des logischen Pfades und/oder dem Steuereinheitsanschlusses bedingt verfügbar sein. Zum Beispiel kann ein CULPCB für die Zuordnung auf einen LP beschränkt sein, der durch eine Untermenge logischer CU-Adresswerte gekennzeichnet ist, die innerhalb einer physischen CU gültig sind.
  • Fig. 16B zeigt ein Beispiel einer physischen CU 60 (dargestellt in einem einzelnen Block), die eine Vielzahl logischer CUs 60-0 bis 60-K besitzt. Jede logische CU kann eine andere Anzahl von CULPCBs besitzen, die der logischen CU zugeordnet sind. Zum Beispiel wurden der logische CU 60-0 die CULPCBs 60-0(1) bis 60- 0(G) und der logischen CU 60-K die CULPCBs 60-K(1) bis 60-K(H) zugeordnet.
  • Struktur eines LCUCB:
  • Fig. 4 veranschaulicht ein Beispiel der Struktur eines Steuerblocks für eine Steuereinheit für einen logischen Pfad (CULPCB), der in der Hardware bzw. dem Mikrocode einer physischen CU bereitgestellt wird, um einen einzelnen LP darzustellen, der zwischen einem Kanalabbild und einer logischen CU erstellt wurde.
  • In Fig. 4 enthält die erste Zeile in dem CULPCB alle Komponentenbezeichner für den CULPCB (die ebenfalls die Komponentenbezeichner des zugeordneten erstellten LP und logischen Kanalpfades darstellen). Jede der anderen Zeilen in dem CULPCB stellt Informationen über ein E/A-Gerät dar, das mit der zugeordneten logischen CU verbunden ist. Zum Beispiel sind die E/A-Geräte 71A bis 71E mit der logischen CU 0 (logische CU-Adresse = 0) in Figur 16B verbunden. Die E/A-Informationen enthalten Vertrauensindikatoren für die E/A-Geräte, wie sie in den S/390 Principles of Operastion (hier bereits zitiert) definiert wurden, ein PGID (dem E/A-Gerät durch ein OS zugewiesen) und modellabhängige Steuerfelder, die für die jeweilige logische CU und das Gerät angepaßt wurden.
  • Der PGIP (mehrfacher Pfadgruppenbezeichner) bezieht sich auf eine Lage in einem CU-Speicher, der einen Satz logischer Kanalpfade definiert, die von der CU auswählbar sind, wobei die gegebenen LPs erstellt wurden, wenn diese auf ein anfragendes OS anstelle eines E/A-Gerätes antworten. Die Kanalpfadgruppe enthält logische Kanalpfade, die das gleiche Betriebssystem mit einer Vielzahl von Anschlüssen einer CU verbinden und wobei die Gruppe dem PGID durch ein OS zugewiesen wurde. Da diese Erfindung jedes OS mit getrennten und eindeutigen logischen Kanalpfaden ausstattet, um auf ein anteilig genutztes E/A-Gerät unter Nutzung anteilig genutzter Kanäle zuzugreifen, kann jedes OS logische Kanalpfade zu einem Gerät zusammengruppieren, das seinen eigenen benötigten Pfadgruppenbezeichner (PGID) nutzt.
  • Zurücksetzen des Abbildes
  • Vor dieser Erfindung bewirkte ein Rücksetzbefehl für einen logischen Betriebsmittelbereich, der von dem übergeordneten Betriebssystem an das E/A-Subsystem ausgegeben wurde, ein Zurücksetzen aller Steuereinheiten für einen logischen Betriebsmittelbereich, das einherging mit einem Zurücksetzen aller Steuereinheiten und Geräte, die über die den logischen Betriebsmittelbereichen zugeordneten logischen Pfade miteinander verbunden waren. Der Befehl enthielt eine Liste von E/A- Subsystembetriebsmitteln, die mehr dem logischen Betriebsmittelbereich angehörten, als daß sie direkt die Identität des logischen Betriebsmittelbereichs spezifizierten. Die Steuereinheiten und Geräte wurden zurückgesetzt, indem Systemrücksetzbefehle auf Geräteebene nur über diejenigen erstellten logischen Pfade ausgegeben wurden, die dem Kanälen zugeordnet waren, die dem spezifizierten logischen Betriebsmittelbereich angehörten.
  • Ein Rücksetzbefehl für einen logischen Betriebsmittelbereich wurde zum Beispiel ausgegeben, wenn für den logischen Betriebsmittelbereich eine Aktivierung, Deaktivierung, eine Ausführung eines Systemresets oder eine Ausführung eines Anfangsladeprogramms (IPL) durchgeführt wurde.
  • Mit dieser Erfindung bewirkt ein "Abbild-Rücksetz"-Befehl, der von dem übergeordneten Betriebssystem an das E/A-Subsystem ausgegeben wurde, ein Zurücksetzen aller Steuereinheiten und Geräte, die über die mit der spezifizierten IID assoziierten logischen Pfade miteinander verbunden sind. Die Steuereinheiten und Geräte werden zurückgesetzt, wie zum Beispiel, wenn ein Systemreset für einen logischen Betriebsmittelbereich durchgeführt wird, indem Systemrücksetzbefehle auf Geräteebene nur über die erstellten logischen Pfade ausgegeben werden, die mit der spezifischen IID assoziiert sind.
  • Neu bei dieser Erfindung ist, daß der Abbildrücksetzbefehl nur die Steuereinheiten für anteilig genutzte E/A-Betriebsmittel innerhalb der E/A-Subsystems und der Steuereinheit neuinitialisiert, die mit der spezifizierten IID assoziiert sind. Das heißt, nur Steuerungen innerhalb SSCBs, LCUCBs und CHCBs, die mit der spezifizierten IID assoziiert sind, werden neuinitialisiert. SSCBs, LCUCBs und CHCBs, die mit anderen IIDs assoziiert sind, werden nicht beeinflußt. Zusätzlich werden nur Steuerungen innerhalb CULPCBs neuinitialisiert, die mit erstellten logischen Pfaden assoziiert sind, über die ein Systemrücksetzbefehl auf Geräteebene empfangen wurde. Andere CULPCBs werden nicht beeinflußt.
  • Wenn das übergeordnete Betriebssystem den Abbildrücksetzbefehl ausgibt, ist ebenfalls eine Anzeige eingeschlossen, die spezifiziert, ob die Ziel-IID in den aktivierten Zustand oder deaktivierten Zustand bei Abschluß des Abbildrücksetzbefehls zu setzen ist. Das übergeordnete Betriebssystem legt fest, daß die Ziel- IID in den aktivierten Zustand zu bringen ist. Dies erfolgt zum Beispiel, wenn es aktiviert wird, wenn ein Rücksetzen des Systems oder wenn ein Anfangsladen (IPL) für einen logischen Betriebsmittelbereich ausführt wird. Das übergeordnete Betriebssystem legt fest, daß die Ziel-IID in den deaktivierten Zustand gebracht wird, wenn ein logischer Betriebsmittelbereich deaktiviert wird.
  • Eine aktivierte IID ist für den Einsatz durch ein OS verfügbar. Eine deaktivierte IID ist für dem Einsatz durch ein OS nicht verfügbar, obwohl es später für den Einsatz durch ein OS aktiviert werden kann.
  • Der in Figur 9 gezeigte Konfigurationssteuerblock (CCB) wird von dem E/A-Subsystem zur Steuerung des aktuellen aktivierten/deaktivierten Zustandes jeder IID genutzt. Wenn ein Abbildrücksetzbefehl an das E/A-Subsystem ausgegeben wird, wird das Bit, das der Ziel-IID entspricht, auf eins gesetzt, wenn die IID in den aktivierten Zustand zu bringen ist, oder es wird auf Null gesetzt, wenn die IID in den deaktivierten Zustand zu bringen ist.
  • Eine Aktivierungs-/Deaktivierungsanzeige war in dem Rücksetzbefehl für logische Betriebsmittelbereiche nicht enthalten, der vor dieser Erfindung eingesetzt wurde. Stattdessen wurde von dem E/A-Subsystem angenommen, daß alle logischen Betriebssystembereiche immer aktiviert waren.
  • Neu an dieser Erfindung ist, daß die Aktivierungs-/Deaktivierungsanzeige, die mit dem Abbildrücksetzbefehl eingeschlossen ist, es dem E/A-Subsystem ermöglicht, alle erstellten logischen Pfade, die mit einer deaktivierten IID assoziiert sind, zu entfernen, da dem E/A-Subsystem nun zur Kenntnis gegeben wird, welche IID aktiviert und welche IIDs deaktiviert sind. Es ist wichtig, erstellte logische Pfade für eine deaktivierte IID zu entfernen, so daß CULPCBs innerhalb des Speichers von E/A- Steuereinheiten für die Erstellung anderer logischer Pfade zur Verfügung gestellt werden können.
  • Wenn eine vorher deaktivierte IID über den Abbildrücksetzbefehl aktiviert wird, versucht das E/A-Subsystem alle logischen Pfade zu erstellen, die mit der Ziel-IID assoziiert sind. Wenn eine vorher aktivierte IID über den Abbildrücksetzbefehl deaktiviert wird, entfernt das E/A-Subsystem alle logischen Pfade, die mit der Ziel-IID assoziiert waren. Wenn eine vorher aktivierte IID über dem Abbildrücksetzbefehl aktiviert wird, sendet das E/A- Subsystem Systemrücksetzbefehle auf Geräteebene über alle erstellten logischen Pfade, die mit der Ziel-IID assoziiert sind, um Steuerungen innerhalb der CULPCBs der Steuereinheit neu zu initialisieren, die mit den erstellten logischen Pfaden assoziiert sind.
  • Der Abbildrücksetzbefehl ist Teil von sowohl dem Befehl des logischen Prozessors für den Diensteaufruf (SCLP - Service Call Logical Processor) als auch von dem Befehl des Aufrufs der Prqzessorsteuerung (PCCALL - Processor Controller Call), die einen Steuerblock durchlaufen, der die Ziel-IID und Aktivierungs-/Deaktivierungsanzeige enthält. Dieser Befehl wird nur von dem übergeordneten Betriebssystem ausgegeben.
  • E/A-Befehle:
  • Die meisten der E/A-Befehle an das E/A-Subsystem nutzen die SSCBs, CHCBs, LCUCBs und CULPCBs.
  • Beispiel für den Starte-Subkanal-Befehl:
  • Ein Beispiel eines E/A-Befehls wird in den Fig. 17 und 18 gezeigt, das ein Ablaufdiagramm der Ausführung des S/390- "Starte-Subkanal" (SSCH)-Befehls darstellt. Der SSCH-Befehl wird von einem beliebigen Betriebssystem (OS) in dem CEC in Fig. 1 ausgegeben, der in einem beliebigen Betriebsmittelbereich ausgeführt wird und einer IID zugewiesen wurde. Die Schritte bei der Ausführung des SSCH-Befehls sind die folgenden:
  • 101) Bevor ein OS die Erfindung auf einem CEC nutzen kann, wird eine Zustandsbeschreibung (SD) für das OS (dargestellt in Figur 6) in den Speicher des CEC von dem übergeordneten Betriebssystem des CEC geläden. Der Inhalt der SD definiert Betriebsmittel für den Bereich J und ist einem IID-Wert zugewiesen.
  • 102) Schritt 102 lädt das OS in den CEC-Speicher, der dem Betriebsmittelbereich J zugewiesen wurde.
  • 103) Das OS wird auf einer CPU in dem CEC von dem übergeordneten Betriebssystem abgearbeitet.
  • 104) Das OS arbeitet ein Anwendungsprogramm als Auftrag auf der abarbeitenden CPU ab.
  • 105) Der Auftrag fordert eine E/A-Operation des OS, indem der Auftrag einen Befehl zum Aufruf des übergeordneten Betriebssystem (SVC - supervisor call) ausgibt, der Anwendung-zu-OS- Programmschnittstelleneinrichtungen, wie etwa Lese-, Hol-, Schreib- oder Ausgabeanforderungen nutzt.
  • 106) Das OS gibt einen SSCH-Befehl zum Start des E/A-Gerätes aus, um eine angeforderte Operation auszuführen.
  • 107) Der CPU-Mikrocode antwortet auf den Operationscode des SSCH-Befehls, indem auf die IID von dem SD des ausgebenden OS zugegriffen wird und indem die angeforderte Subkanalnummer vom Hauptregister GR1 erhalten wird. Dann nutzt der Mikrocode die IID und Subkanalnummer, um einen angeforderten SSCB in Fig. 12 auszuwählen. Dieser SSCB ist das Subkanalabbild, das für das OS genutzt wird, um auf das gewünschte E/A-Gerät zuzugreifen.
  • 108) Der Mikrocode testet das Gültigkeitsbit (V) und E/A- Interpretationssteuerbit (INCB) in dem SSCB, um festzustellen, ob dies ein gültiger SSCB ist, beziehungsweise ob dieser im Durchlaßmodus arbeitet. Wenn der SSCB gültig ist und im Durchlaßmodus arbeitet, wird der Ja-Ausgang nach Schritt 115 genommen. Wenn der SSCB nicht gültig ist oder nicht im Durchlaßmodus arbeitet, wird der Nein-Ausgang nach Schritt 109 genommen.
  • 109) Wenn die Subkanalnummer vom Hauptregister GR1 und eine IID=0 (d.h. die IID des übergeordneten Betriebssystems) genutzt werden, wird ein zweiter Versuch unternommen, um einen SSCB auszuwählen (in Figur 12), der das gewünschte E/A-Gerät darstellt. Der Mikrocode überprüft das Gültikeitsbit (V) und das E/A-Interpretationssteuerbit (INCB) in dem SSCB, um festzustellen, ob es ein gültiger SSCB ist beziehungsweise ob es im Durchlaßmodus arbeitet. Wenn der SSCB gültig ist und im Durchlaßmodus arbeitet, wird der Ja-Ausgang nach Schritt 115 genommen (d.h., das übergeordnete Betriebssystem hat den SSCB eingerichtet, der sich selbst zugeordnet ist, so daß er von einem OS im Durchlaßmodus genutzt werden kann). Wenn der SSCB nicht gültig ist oder nicht im Durchlaßmodus betrieben wird, wird der Nein- Ausgang nach Schritt 113 genommen.
  • 113) Das übergeordnete Betriebssystem schaltet sich in die Ausführung des SIE-Befehls für OS-J ein. Das übergeordnete Betriebssystem kann entweder den E/A-Befehl mit einem Zustandscode (CC) für "nicht erfolgreich" (z.B. wenn der ausgewählte SSCB ungültig ist) beenden, oder es kann die Ausführung des E/A- Befehls für OS-J simulieren (z.B. wenn der ausgeführte SSCB nicht im Durchlaßmodus arbeitet).
  • 115) Der CPU-Mikrocode greift auf SSCB für OS-J zu, um den synchronen Teil des SSCH-Befehls auszuführen.
  • 116) Dieser Schritt testet den SSCH-Befehlszustandscode, um festzustellen, ob der CPU-Teil der SSCH-Befehlsausführung erfolgreich ausgeführt wurde, was den CPU-Mikrocode einbezieht, der einen E/A-Prozessor (IOP) auswählt. Während die in dem SSCB enthaltenen Informationen genutzt werden, führt die CPU die normalen Überprüfungen durch, um festzustellen, welcher Zustandscode (CC) dem SSCH zu übergeben werden muß. Wenn ein nicht erfolgreicher CC festgestellt wurde, wird in Schritt 117 eingetreten. Wenn er erfolgreich war, wird in Schritt 119 eingetreten.
  • 117) Wenn der CC des SSCH-Befehls anzeigt, daß die CPU den Befehl nicht erfolgreich ausgeführt hat, wird eine Ausnahme angezeigt, die bewirkt, daß in Schritt 118 eingetreten wird.
  • 118) Das übergeordnete Betriebssystem schaltet sich ein, um festzustellen, warum die CPU nicht den SSCH-Befehl erfolgreich ausgeführt hat, und unternimmt eine dementsprechende Aktion.
  • 119) Dann entfernt die CPU den SSCB aus der ausgewählten Arbeitswarteschlange des IOP, die in dem E/A-Subsystemspeicher enthalten ist, und beendet den CPU-Anteil des Befehls. Wenn die CPU den synchronen Anteil des SSCH-Befehls ausgeführt hat, beginnt ein asynchroner Anteil der Befehlsausführung mit IOP- Operationen an der Arbeitswarteschlange.
  • 120) Die Arbeitswarteschlange arbeitet nach dem FIFO-Prinzip. Ein IOP entfernt dem SSCB aus der Arbeitswarteschlange, wenn der SSCB den oberen Teil der Warteschlange erreicht. Dann führt das IOP eine Pfadauswahl durch, indem ein Kanalprozessor ausgewählt wird, der von einer der CHPIDs in dem genutzten SSCB dargestellt wird.
  • 121) Wenn ein Kanalprozessor ausgewählt wurde, gibt der IOP einen Befehl an dem Kanalprozessor aus, um seine E/A-Operationen zu beginnen. Der IOP-Befehl enthält die IID des SSCB, die CHPID und die Subkanalnummer des SSCB. Dann wird in Schritt 131 in Fig. 18 eingetreten.
  • 131) Der Kanalprozessor empfängt den IOP-Befehl und berechnet die Adresse des SSCB unter Nutzung der empfangenen Subkanalnummer und IID.
  • 122) Der Kanalprozessor konstruiert einen ESCON-Befehlsrahmen, um diesen an die Interpoliereinrichtung (sofern vorhanden) und an die Steuereinheit zu senden. Figur 5 veranschaulicht den Rahmenkopf, der die Adressinformation enthält. Der Kopf enthält die in Figur 5 gezeigten Felder. Die LP-Bezeichner werden von einem LCUCB erhalten. Der mit dem SSCB assoziierte LCUCB wird unter Nutzung der LCUCB-Nummer und der IID in dem SSCB lokalisiert.
  • 123) Der Kanalprozessor überträgt den Rahmen durch den Interpoliereinrichtung (sofern vorhanden) an die adressierte logische Steuereinheit.
  • 124) Die CU empfängt dem Rahmen, überprüft ihn und greift auf das in dem Rahmen adressierte E/A-Gerät zu. Die logische CU hält ihre Steuerung für die E/A-Operation in dem CULPCB aufrecht, der unter Nutzung des Bezeichners in dem Rahmenkopf und des Anschlußbezeichners der Steuereinheit, über die der Rahmen empfangen wurde, lokalisiert wurde. (Die Kombination aus der Quellverbindungsadresse und der logischen Quelladresse kennzeichnet das Kanalabbild, das den Rahmen gesandt wurde. Die Kombination der Zielverbindungsadresse und der logischen Zieladresse kennzeichnet die logische Steuereinheit, die das Ziel des Rahmens darstellt. Die Geräteadresse kennzeichnet das jeweilige E/A-Gerät auf der logischen Steuereinheit.) Auf alle angeforderten Daten wird von dem adressierten E/A-Gerät zugegriffen. Die CU sendet dann einen Befehlsakzeptanzrahmen an den Kanal, indem die unten beschriebene Rahmensendeprozedur genutzt wird. In der bevorzugten Ausführungsform wird das ESCON- Protokoll genutzt, um die mit dem Befehlsrahmen assoziierten Daten zu übertragen. Bei einer Schreibanfrage werden in aufeinanderfolgenden Rahmen übertragene Daten von dem Gerät geschrieben. Bei einer Leseanfrage werden von dem Gerät gelesene Daten zurück zur CU gesandt um in Rückkehrrahmen eingebaut zu werden, die die CPU an den Kanalprozessor senden will.
  • 126) Um einen Rahmen an dem Kanalprozessor zu senden, konstruiert die CU einen zurückkehrenden ESCON-Rahmen, der an den Kanal gesandt wird. Dieser hat einen Rahmenkopf ähnlich dem in Fig. 5, außer daß der Inhalt der Ziel- und Quellenteile des Rahmenkopfes reserviert sind. (Die Quellenverbindungsadresse in dem Rahmen wird auf die physische CU-Verbindungsadresse gesetzt. Die logische Quelladresse wird auf die logische CU-Adresse gesetzt. Die Zielverbindungsadresse wird auf die physische Kanalverbindungsadresse gesetzt. Die logische Zieladresse wird auf dem IID- Wert gesetzt. Der Rahmen enthält ebenfalls die zu dem E/A-Gerät gehörende Geräteadresse.)
  • 127) Der Kanalprozessor empfängt den Rahmen und überprüft ihn. Die Kombination aus Zielverbindungsadresse und logischer Zieladresse kennzeichnet das OS-J-Kanalabbild, das das Ziel des Rahmens ist. Die Kombination aus der Quellverbindungsadresse und der logischen Quelladresse kennzeichnet die logische Steuereinheit, die dem Rahmen gesandt hat. Die Geräteadresse kennzeichnet das bestimmte E/A-Gerät auf der logischen Steuereinheit.
  • 128) Bei Nutzung der logischen Zieladresse (IID), der Quellverbindungsadresse (physische CU-Verbindungsadresse), der logischen Quelladresse (logische CU-Adresse) und der Geräteadresse von dem Rahmen berechnet der Kanalprozessor die Adresse des SSCB unter Nutzung eines umgekehrten Suchsteuerblocks (RLCB). Wenn der Rahmen ein Datenrahmen ist, werden die Daten in dem Programmzwischenspeicher gespeichert. Wenn der Rahmen ein Statusrahmen ist, plaziert der Kanalprozessor einen Endestatus in den SSCB.
  • 129) Nachdem der Statusrahmen empfangen wurde, signalisiert der Kanalprozessor dem IOP, daß die E/A-Operation für diesen Befehl abgeschlossen wurde, was durch die Subkanalnummer und IID des SSCB angezeigt wird.
  • 130) Das IOP berechnet die Adresse des SSCB, indem die Subkanalnummer und IID genutzt werden, und plaziert den SSCB unten in eine Unterbrechungswarteschlange für die Unterbrechungsunterklasse, die in einem Feld des SSCB angezeigt wird. Die Unterbrechungswarteschlange ist in dem E/A-Subsystem enthalten. Dies beendet die IOP-Operationen für dem SSCH-Befehl. Die Unterbrechungswarteschlange nutzt eine FIFO-Struktur. Ein Unterbrechungssignal wird an alle CPUs in einem CEC gesandt, so daß die Unterbrechung in einer Unterberechungswarteschlange steht.
  • 131) Die erste CPU, die für die E/A-Unterbrechung freigegeben wurde, entfernt den SSCB aus der Unterbrechungswarteschlange und konstruiert einen Unterbrechungsantwortblock (IRB) in dem Systemspeicher für OS-J, wenn die E/A-Unterbrechung stattfindet. Der IRB enthält die Subkanalnummer, er enthält jedoch nicht die IID.
  • Befehl zum Rücksetzen des Kanalpfades:
  • Ein weiteres neues Beispiel dieser Erfindung ist der "Setze-den- Kanalpfad-zurück-" (RCHP-) Befehl, der vor dieser Erfindung alle Steuerungen für dem spezifizierten Kanal zusammen mit allen Steuereinheiten und geräten zurückgesetzt hat, die über die logische Pfade verbunden waren, die mit dem spezifizierten Kanal assoziiert waren. Mit dieser Erfindung erfordert dieser Befehl eine spezifizierte IID und setzt nur die Steuerungen und logischen Pfade zurück, die mit dem Kanalabbild assoziiert sind, das durch die IID und CHPID gekennzeichnet ist.
  • Wenn ein OS den "Setze-den-Kanalpfad-zurück"-Befehl ausgibt, ist der Zielkanal (CHPID) in GPR 1 spezifiziert. Dieser Befehl wird nicht interpretierend über dem SIE-Befehl ausgeführt, sondern wird von dem übergeordneten Betriebssystem abgehängt, das wiederum die IID liefert, die dem Kanalabbild GPR 1 zusätzlich zu der CHPID zugewiesen wurde, bevor der RCHP-Befehl an das E/A- Subsystem ausgegeben wurde. Fig. 19 zeigt das Format von GPR1, das von dieser Erfindung bereitgestellt wurde. Die Kombination der IID- und CHPID-Werte legt das Kanalabbild als das Ziel der Rücksetzfunktion fest.
  • Das E/A-Subsysten setzt die Steuerung für das spezifizierte Kanalabbild zurück und gibt Systemrücksetzbefehle auf Geräteebene nur für die erstellten Pfade aus, die mit dem spezifizierten Kanalabbild durch Bildung von Rahmenköpfen assoziiert sind, die die spezifische IID enthält. Alle anderen Kanalabbilder und alle anderen erstellten logischen Pfade werden nicht beeinflußt. Weiterhin setzt das E/A-Subsystem die Steuerungen (Belegtanzeigen und Vertrauen) nur in dem Subkanalabbildern (SSCBs) zurück, die mit dem spezifizierten Kanalabbild assoziiert sind. Steuerungen in Subkanalabbildern (SSCBs), die mit anderen Kanalabbildern assoziiert sind, werden nicht beeinflußt.
  • Kanalberichte:
  • Einige Kanalberichte werden einem OS vorgelegt, um Informationen über entweder einen Kanal oder einen Subkanal darzubieten. Ein Kanalbericht besteht aus einem oder mehreren Kanalberichtsworten (CRWs), die miteinander verkettet sind. Vor dieser Erfindung wurden diese Kanalberichte einem einzelnen OS vorgelegt, da die Kanäle und Subkanäle nicht anteilig genutzt wurden. Mit dieser Erfindung wird ein Mechanismus bereitgestellt, der diese Kanalberichte entweder einem einzelnen OS oder mehreren OS vorgelegt, wenn Subkanäle und Kanäle anteilig genutzt werden. In einigen Fällen betrifft der Kanalbericht nur eines der OS, die den Kanal oder Subkanal anteilig nutzen. In anderen Fällen muß dieser Kanalbericht allen OS angeboten werden, die den Kanal oder Subkanal anteilig nutzen.
  • Fig. 20 zeigt das Format des Kanalberichtwortes, wie es durch die Erfindung bereitgestellt wird.
  • Wenn der Kanalbericht alle OS betrifft, legt das E/A-Subsystem den Bericht dem übergeordneten Betriebssystem auf die gleiche Weise vor, wie es vor dieser Erfindung erfolgte. Das Abbild- (I) Bit in dem Kanalberichtwort wird auf null gesetzt. Neu bei dieser Erfindung ist, daß das übergeordnete Betriebssystem wiederum diesen Bericht allen OS vorgelegt, die den Kanal oder Subkanal anteilig nutzen. Ein Beispiel für diesen Berichtstyp ist ein permanenter Ausfall in der Kanalhardware.
  • Wenn der Kanalreport nur einem OS vorgelegt wird, stellt diese Erfindung ein Mittel für das E/A-Subsystem bereit, die IID, die dem Abbild zugewiesen war, für das der Bericht bestimmt ist, gemeinsam mit dem Bericht hindurchzulassen. Das Abbild- (I) Bit wird auf eins gesetzt. Weiterhin werden das Verkettungs- (C) Bit ebenfalls auf eins gesetzt und ein zusätzliches Kanalberichtswort mit dem Original verkettet, das den IID-Wert in dem ID-Feld der Berichtsquelle liefert. Das übergeordnete Betriebssystem wiederum stellt diesen Bericht nur den OS bereit, die mit der IID assoziiert sind, ohne die verkettete CRW, die die IID enthält und ohne daß das I-Bit auf eins gesetzt wird. Ein Beispiel für diesen Bericht kann das Ergebnis eines RCHP-Befehls sein, der von dem gleichen OS ausgegeben wurde.
  • Kanalneukonfiguration:
  • Vor dieser Erfindung bewirkte ein Kanalkonfigurationsbefehl, der von einem OS oder mit Hilfe manueller Mittel ausgegeben wurde, daß das System den Zielkanal physisch in den offline- oder online-Zustand brachte. Ein Kanal, der auf online für ein OS gestellt wurde, ist für den Einsatz durch dieses OS verfügbar. Ein Kanal, der auf offline gestellt wurde, ist für kein OS verfügbar.
  • Mit dieser Erfindung bewirkt ein Kanalkonfigurationsbefehl, der von einem OS ausgegeben wurde, daß das E/A-Kanalsubsystem nur die Kanalabbilder nach online/offline verändert, die mit dem OS assoziiert sind. Die Kanalkonfigurationsbefehle sind Teil des Dienstaufrufbefehls des logischen Prozessors (SCLP-Befehl), der einen Steuerblock durchläuft, der den Zielkanal enthält. Dieser Befehl wird nicht über den SIE-Befehl interpretierend ausgeführt, sondern er wird von dem übergeordneten Betriebssystem abgestellt. Das übergeordnete Betriebssystem wiederum liefert zusätzlich zu der CHPID die IID, die dem Abbild in dem Steuerblock zugewiesen wurde, bevor der Kanalkonfigurationsbefehl an das E/A-Subsystem ausgegeben wird. Die Kombination der IID- und CHPID-Werte legt das Kanalabbild als Ziel des Konfigurationsbefehls fest.
  • Das E/A-Subsystem setzt die Steuerungen für das spezifizierte Kanalabbild zurück und entfernt entweder logische Pfade (für die Veränderung nach offline) oder erstellt logische Pfade (für die Veränderung nach online) nur für die logischen Pfade, die mit dem spezifizierten Kanalabbild assoziiert wurden, indem Rahmenköpfe erstellt werden, die die spezifizierte IID enthalten. Alle anderen Kanalabbilder und alle anderen erstellten logischen Pfade werden nicht beeinflußt. Weiterhin setzt das E/A-Subsystem die Steuerungen zurück (Belegtanzeigen und Vertrauen) und schaltet entweder das geeignete Bit für die Pfadverfügbarkeit aus (für die Veränderung nach offline) oder schaltet das geeignete Bit für die Pfadverfügbarkeit ein (für die Veränderung nach online) in nur den Subkanalabbildern (SSCBs), die mit dem spezifizierten Kanalabbild assoziiert sind. Steuerungen in Subkanalabbildern (SSCBs), die mit anderen Kanalabbildern assoziiert sind, werden nicht beeinflußt.

Claims (26)

1. Verfahren zur anteiligen Nutzung von Ein-/Ausgabebetriebsmitteln von einer Vielzahl von Programmen in einem computerelektronischen Komplex, wobei jedem Programm aus der Vielzahl Programme ein Abbildbezeichner zugewiesen wurde, wobei das Verfahren die folgenden Schritte umfaßt:
Speichern eines anteilig genutzten Satzes Ein-/Ausgabesteuerblöcke in einem computerelektronischen Komplex, wobei jeder Ein-/Ausgabesteuerblock des anteilig genutzten Satzes Ein-/Ausgabesteuerblöcke einen Ein-/Ausgabebetriebsmittelbezeichner und einen Abbildbezeichner enthält;
Zugreifen auf den anteilig genutzten Satz aus Ein-/Ausgabesteuerblöcken in dem computerelektronischen Komplex als Antwort auf eine Ein-/Ausgabeanforderung eines Programms aus der Vielzahl Programme;
Zugreifen auf einen Steuerblock in dem anteilig genutzten Satz aus Ein-/Ausgabesteuerblöcken, auf den im vorangegangenen Schritt zugegriffen wurde, mit einem Abbildbezeichner eines Programms aus der Vielzahl Programme; und
Speichern von Zuständen von Ein-/Ausgabebetriebsmitteln in dem Steuerblock, auf den in dem vorangegangenem Schritt zugegriffen wurde, wobei der Steuerblock getrennte Abbilder der Ein-/Ausgabebetriebsmittel an jedes der Programme aus der Vielzahl Programme bereitstellt.
2. Verfahren der anteiligen Nutzung von Ein-/Ausgabebetriebsmitteln durch eine Vielzahl von Programmen, so wie es in Anspruch 1 festgelegt wurde, wobei der computerelektronische Komplex ein einzelnes Betriebssystemprogramm mit mehreren Programmkategorien enthält, wobei jede Kategorie einen oder mehrere Abbildbezeichner besitzt, die ihm zugewiesen wurden, und dieser die Schritte der Zuweisung eines Abbildbezeichners zu jedem gerade ausgeführten Programm in jeder Kategorie und der Nutzung eines Bezeichners der Ein- /Ausgabebetriebsmittel zur Auswahl eines Satzes Eingabesteuerblöcke und der Nutzung eines Abbildbezeichners enthält, der dem Programm zugeordnet wurde, um einen benötigten Eingabesteuerblock in dem benötigten Satz auszuwählen, um die unabhängige Nutzung des Ein-/Ausgabebetriebsmittels durch Programme in den unterschiedlichen Kategorien zu ermöglichen, die unterschiedliche Eingabesteuerblöcke in dem Satz der Eingabesteuerblöcke nutzen.
3. Verfahren der anteiligen Nutzung von Ein-/Ausgabebetriebsmitteln durch eine Vielzahl von Programmen, so wie es in Anspruch 1 festgelegt wurde, wobei der computerelektronische Komplex mehrere Betriebssysteme enthält, bei dem jedes Betriebssystem eine Kategorie aufweist und jeder Kategorie ein oder mehrere Abbildbezeichner zugeordnet wurden und wobei es den weiteren Schritt der Nutzung eines Bezeichners des Ein-/Ausgabebetriebsmittels zur Auswahl eines benötigten Satzes aus Eingabesteuerblöcken und der Nutzung eines Abbildbezeichners enthält, der dem Programm zugeordnet wurde, um einen benötigten Eingabesteuerblock in dem benötigten Satz auszuwählen, um die unabhängige Nutzung des Ein- /Ausgabebetriebsmittels durch Programme in den unterschiedlichen Betriebssystemen zu ermöglichen, indem unterschiedliche Eingabesteuerblöcke in dem Satz aus Eingabesteuerblöcken genutzt werden.
4. Verfahren der anteiligen Nutzung von Ein-/Ausgabebetriebsmitteln durch eine Vielzahl von Programmen, so wie es in Anspruch 1 festgelegt wurde, das die folgenden Schritte umfaßt:
Zugreifen auf die Abbildbezeichner und Steuerblöcke mit Hilfe von internen Code, auf den nicht durch die gerade ausgeführten Programme zugegriffen werden kann.
5. Verfahren der anteiligen Nutzung von Ein-/Ausgabebetriebsmitteln durch eine Vielzahl von Programmen, so wie es in Anspruch 1 festgelegt wurde, das die folgenden Schritte umfaßt:
Zugreifen auf die Abbildbezeichner mit Hilfe von Systemsoftware, die von einem übergeordneten Betriebssystem des computerelektronischen Komplexes genutzt wird, und Zugreifen auf die Steuerblöcke mit Hilfe von internem Code, bei dem von einem beliebigen gerade in dem computerelektronischen Komplex ausgeführten Programm nicht auf die Abbildbezeichner und Steuerblöcke zugegriffen werden kann.
6. Verfahren der anteiligen Nutzung von Ein-/Ausgabebetriebsmitteln durch eine Vielzahl von Programmen, so wie es in Anspruch 1 festgelegt wurde, das die folgenden Schritten umfaßt:
Bereitstellen einer Vielzahl Kategorien aus Programmen, wobei ein übergeordnetes Betriebssystem eine der Kategorien darstellt.
7. Verfahren der anteiligen Nutzung von Ein-/Ausgabebetriebsmitteln durch eine Vielzahl von Programmen, so wie es in Anspruch 1 festgelegt wurde, das die folgenden Schritten umfaßt:
Bereitstellen einer Vielzahl Kategorien aus Programmen, wobei Betriebssysteme (OS) eine oder mehrere der Kategorien darstellen.
8. Verfahren der anteiligen Nutzung von Ein-/Ausgabebetriebsmitteln durch eine Vielzahl von Programmen, so wie es in Anspruch 1 festgelegt wurde, das die folgenden Schritten umfaßt:
Übertragen einer Ein-/Ausgabeanforderung direkt von einem der Programme an ein Ein-/Ausgabeuntersystem, das wenigstens ein anteilig genutztes Ein-/Ausgabebetriebsmittel ohne Eingreifen des übergeordneten Betriebssystems nutzt;
Ausführen der Ein-/Ausgabeanforderung von dem Ein-/Ausgabeuntersystem unter Nutzung des anteilig genutzten Ein- /Ausgabebetriebsmittels ohne Eingreifen des übergeordneten Betriebssystems; und
Antworten auf das anfordernde Programm ohne Eingreifen des übergeordneten Betriebssystems.
9. Verfahren der anteiligen Nutzung von Ein-/Ausgabebetriebsmitteln durch eine Vielzahl von Betriebssystemen (OS), das die folgenden Schritte umfaßt:
Speichern eines Abbildbezeichners (IID) in einem Betriebsmittel bezeichnenden Steuerblock (SD) für jedes OS aus der Vielzahl OS, die in einem computerelektronischen Komplex (CEC) arbeiten;
Strukturieren eines Satzes aus Ein-/Ausgabesteuerblöcken (CBs) für jedes Betriebsmittel aus der Vielzahl der Ein- /Ausgabebetriebsmittel des CES innerhalb eines Ein- /Ausgabesteuerspeichers für den CEC und Zuordnen jedes CB in dem Satz mit einem unterschiedlichen IID; und
Zugreifen auf einen CB, der von einem Ein-/Ausgabeprozessor für eine Ein-/Ausgabeoperation benötigt wird, indem aus einem Satz CB mit einem Kennzeichner eines Ein-/Ausgabebetriebsmittels und durch Auswahl eines benötigten CB in einem ausgewählten Satz wobei der IID in dem SD eines OS gespeichert ist, der die Ein-/Ausgabeoperation anfordert, und anteilige Nutzung von Ein-/Ausgabebetriebsmitteln unter den OS, die den IIDs der unterschiedlichen CBs in dem Satz zugeordnet sind.
10. Verfahren zur anteiligen Nutzung von Ein-/Ausgabebetriebsmitteln von einer Vielzahl Betriebssysteme (OS), so wie es in Anspruch 9 festgelegt wurde, das weiterhin die folgenden Schritte umfaßt:
Zuordnen eines der IID-Werte zu einem übergeordneten Betriebssystem des CEC (anstatt mit einem beliebigen OS), um es dem übergeordneten Betriebssystem zu ermöglichen, sein jeweiliges Abbild des Ein-/Ausgabebetriebsmittels zu besitzen, um es so dem übergeordneten Betriebssystem zu ermöglichen, das Ein-/Ausgabebetriebsmittel unabhängig von einem beliebigen Betriebssystem und gleichzeitig mit dem OS zu nutzen.
11. Verfahren zur anteiligen Nutzung von Ein-/Ausgabebetriebsmitteln zwischen einer Vielzahl Betriebssystemen (OS), so wie es in Anspruch 9 festgelegt wurde, das weiterhin die folgenden Schritte umfaßt:
Strukturieren eines einzelnen Ein-/Ausgabesteuerblockes (CB) innerhalb des Ein-/Ausgabesteuerungsspeichers für den CEC für ein beliebiges Ein-/Ausgabebetriebsmittel und Zuordnen des CB zu einem übergeordneten Betriebssystem-IID oder einem OS-IID, um ein einzelnes Abbild eines nicht anteilig genutzten Ein-/Ausgabebetriebsmittels nur dem übergeordneten Betriebssystem beziehungsweise dem OS zur Verfügung zu stellen, um es dem übergeordneten Betriebssystem beziehungsweise dem OS zu ermöglichen, das nicht anteilig genutzte Ein-/Ausgabebetriebsmittel zu steuern, um CEC-Ein- /Ausgabeoperationen für anteilig genutzte Ein-/Ausgabebetriebsmittel und nicht anteilig genutzte Ein-/Ausgabebetriebsmittel zu vermischen, wofür die OS direkt anteilig genutzte Ein-/Ausgabebetriebsmittel ohne Einwirkung des übergeordneten Betriebssystems nutzen, und wofür das übergeordnete Betriebssystem oder die OS nicht anteilig genutzte Betriebsmittel direkt nutzen können.
12. Verfahren zur anteiligen Nutzung von Ein-/Ausgabebetriebsmitteln von einer Vielzahl Betriebssysteme (OS), so wie es in Anspruch 9 festgelegt wurde, das weiterhin die folgenden Schritte umfaßt:
Unabhängiges Setzen von Zuständen in verschiedenen Steuerblöcken für die gleichzeitig ausgeführten Programme der umterschiedlichen Programme, um eine unabhängige Steuerung für die unterschiedlichen Programme über die Ein-/Ausgabebetriebsmittel zu ermöglichen, die anteilig von den OS genutzt werden.
13. Verfahren zur anteiligen Nutzung von Ein-/Ausgabebetriebsmitteln von einer Vielzahl Betriebssysteme (OS), so wie es in Anspruch 12 festgelegt wurde, das weiterhin die folgenden Schritte umfaßt:
Übertragen einer Darstellung des IID jeder Ein-/Ausgabeoperation des CEC an eine Ein-/Ausgabesteuereinheit (wie etwa das Ein-/Ausgabebetriebsmittel für die Ein-/Ausgabeoperation) und Speichern der Darstellung des IID durch die Ein-/Ausgabesteuereinheit, um es der Ein-/Ausgabesteuereinheit zu ermöglichen, dem OS bezüglich der Ein-/Ausgabeanforderung zu antworten.
14. Verfahren zur anteiligen Nutzung von Ein-/Ausgabebetriebsmitteln von einer Vielzahl Betriebssystemen (OS), so wie es in Anspruch 13 festgelegt wurde, das weiterhin die folgenden Schritte umfaßt:
Antworten durch die Ein-/Ausgabesteuereinheit an die CEC bezüglich der Ein-/Ausgabeoperation durch die Ein-/Ausgabesteuereinheit, indem diese auf die Darstellung des IID zugreift, die für die Ein-/Ausgabeoperation gespeichert wurde, und Signalisieren der Darstellung des IID an ein Ein- /Ausgabeuntersystem in der CEC;
Auswählen eines für das Ein-/Ausgabebetriebsmittel benötigten CB durch das Ein-/Ausgabeuntersystem und Auswählen eines benötigten CB in dem Satz für OS, die die Ein-/Ausgabeoperation mit Hilfe der Ein-/Ausgabesteuereinheit anfordern; und
Einreihen der benötigten CBs in einer Unterbrechungsschlange für das OS, das die Ein-/Ausgabe anfordert, um es einer das OS ausführenden CPU zu ermöglichen, die Ein-/Ausgabeunterbrechung ohne jeglichen Zugriff auf den IID zu handhaben, um die OS von dem IIDs zu isolieren und um Sicherheit der IIDs vor dem OS zu ermöglichen.
15. Verfahren zur anteiligen Nutzung von Ein-/Ausgabebetriebsmitteln von einer Vielzahl Betriebssysteme (OS), so wie es in Anspruch 9 festgelegt wurde, das weiterhin die folgenden Schritte umfaßt:
Zurücksetzen des Zustandes eines Abbildes eines Ein- /Ausgabebetriebsmittels für ein OS (dargestellt durch einen CB an dem Ein-/Ausgabebetriebsmittel, das einen angeforderten IID in dem CEC zugeordnet ist), ohne daß der Zustand eines anderen CB für das gleiche Ein-/Ausgabebetriebsmittel oder der Zustand eines CB beeinflußt wird, der irgend einem anderen Ein-/Ausgabebetriebsmittel zugeordnet ist, indem nur auf den CB des IID und des Betriebsmittels zugegriffen wird und nur dieses auf einen Anfangszustand gesetzt wird, der gekennzeichnet wurde, um zurückgesetzt zu werden.
16. Verfahren zur anteiligen Nutzung von Ein-/Ausgabebetriebsmitteln von einer Vielzahl Betriebssysteme (OS), so wie es in Anspruch 9 festgelegt wurde, das weiterhin die folgenden Schritte umfaßt:
Zurücksetzen des Zustandes von CBs für alle Ein-/Ausgabebetriebsmittel (dargestellt durch sämtliche CBs der Ein- /Ausgabebetriebsmittel, die einem angeforderten IID in dem CEC zugeordnet sind), ohne daß der Zustand von Ein- /Ausgabebetriebsmitteln beeinflußt wird, die einem beliebigen anderen IID zugeordnet wurden, indem die CBs des CEC durchsucht werden und indem die CBs für alle für den angeforderten IID gefundene Ein-/Ausgabebetriebsmittel auf einen Anfangszustand gesetzt werden.
17. Verfahren zur anteiligen Nutzung von Ein-/Ausgabebetriebsmitteln von einer Vielzahl Betriebssysteme (OS), so wie es in Anspruch 9 festgelegt wurde, das weiterhin die folgenden Schritte umfaßt:
Strukturieren eines anteilig genutzten Satzes aus Ein- /Ausgabesteuerblöcken (CHCBs) innerhalb eines Ein- /Ausgabesteuerspeichers für den CEC für jeden Kanal aus Vielzahl physischer Ein-/Ausgabekanäle (jeder physische Ein-/Ausgabekanal ist das Ein-/Ausgabebetriebsmittel für einen Satz aus CHCBs) und zuordnen jedes CHCB in dem Satz zu einem anderen IID, um ein anderes Abbild des physischen Ein-/Ausgabekanals an jedes der Betriebssysteme bereitzustellen, um eine unabhängige Steuerung jedes physischen Ein-/Ausgabekanals durch die OS zu ermöglichen, die den physischen Kanal gemeinsam nutzen.
18. Verfahren zur anteiligen Nutzung von physischen Ein- /Ausgabekanälen und Ein-/Ausgabebetriebsmitteln von einer Vielzahl Betriebssysteme (OS), so wie es in Anspruch 17 festgelegt wurde, das weiterhin die folgenden Schritte umfaßt:
Kennzeichnen eines online/offline Feldes in jedem CHCB, und
Unabhängiges Setzen des online/offline Feldes in jedem der CHCB in dem anteilig genutzten Satz, um es jedem der OS zu ermöglichen, unabhängig zu steuern ob ein zugehöriges Abbild des physischen Kanals (bereitgestellt durch einen zugehörigen CHCB) online oder offline ist.
19. Verfahren zur anteiligen Nutzung von Ein-/Ausgabebetriebsmitteln von einer Vielzahl Betriebssysteme (OS), so wie es in Anspruch 17 festgelegt wurde, das weiterhin die folgenden Schritte umfaßt:
Festlegen eines Kanalpfadbezeichners (CHPID) als einen Bezeichner für jeden physischen Kanal, wobei der physische Kanal das Ein-/Ausgabebetriebsmittel für einen anteilig genutzten Satz aus CBs ist.
20. Verfahren zur anteiligen Nutzung von Ein-/Ausgabebetriebsmitteln von einer Vielzahl Betriebssysteme (OS), so wie es in Anspruch 17 festgelegt wurde, das weiterhin die folgenden Schritte umfaßt:
Strukturieren innerhalb eines Ein-/Ausgabesteuerspeichers für den CEC eines einzelnen Ein-/Ausgabesteuerblockes (CB) für einen physischen Ein-/Ausgabekanal (wobei der Kanal das Ein-/Ausgabebetriebsmittel für den einzelnen CB ist) und Zuordnen des CB zu einem IID des übergeordneten Betriebssystems oder einem OS-IID, um ein einzelnes Abbild für einen nicht anteilig genutzten physischen Kanal nur dem übergeordneten Betriebssystem beziehungsweise dem OS bereitzustellen, um es nur dem übergeordneten Betriebssystem beziehungsweise dem OS zu ermöglichen, jeden nicht anteilig genutzten physischen Kanal zu steuern, um anteilig genutzte Kanäle und nicht anteilig genutzte Kanäle in einem CEC zu vermischen, um es so jedem OS aus der Vielzahl von OS zu ermöglichen, anteilig genutzte Kanäle ohne die Einwirkung des übergeordneten Betriebssystems zu nutzen, und für die das übergeordnete Betriebssystem oder die OS direkt nicht anteilig genutzte Kanäle nutzen können.
21. Verfahren zur anteiligen Nutzung von Ein-/Ausgabebetriebsmitteln von einer Vielzahl Betriebssysteme (OS), so wie es in Anspruch 9 festgelegt wurde, das weiterhin die folgenden Schritte umfaßt:
Strukturieren innerhalb eines Ein-/Ausgabesteuerspeichers für dem CEC eines Satzes aus Ein-/Ausgabesteuerblöcken (CBs) für jeden Unterkanal aus einer Vielzahl Unterkanäle, wobei jeder Unterkanal ein Ein-/Ausgabegerät darstellt (wobei der Unterkanal das Ein-/Ausgabebetriebsmittel für den Satz aus CBs darstellt), Nutzen eines Bezeichners des Unterkanals als Bezeichner des Satzes aus CBs und Zuordnen von jedem CB in dem Satz zu einem anderen IID, um ein anderes Abbild von jedem Unterkanal jedem der OS zuzuordnen, um so eine unabhängige Steuerung über das Ein-/Ausgabegerät durch jedes der OS zu ermöglichen.
22. Verfahren zur anteiligen Nutzung von Ein-/Ausgabebetriebsmitteln von einer Vielzahl Betriebssysteme (OS), so wie es in Anspruch 9 festgelegt wurde, das weiterhin die folgenden Schritte umfaßt:
Strukturieren innerhalb eines Ein-/Ausgabesteuerspeichers für den CEC eines Satzes aus Ein-/Ausgabesteuerblöcken (CBs) für jedes Abbild einer Ein-/Ausgabesteuereinheit (CU), die an den CEC anschließbar ist (als eines der Ein- /Ausgabebetriebsmittel), und Zuordnen von jedem CB in dem Satz zu einem anderen IID, um ein anderes Abbild an das jeweilige OS der CU bereitzustellen, um eine unabhängige Steuerung über die CU durch jedes der OS zu ermöglichen.
23. Verfahren zur anteiligen Nutzung von Ein-/Ausgabebetriebsmitteln von einer Vielzahl Betriebssysteme (OS), so wie es in Anspruch 9 festgelegt wurde, das weiterhin die folgenden Schritte umfaßt:
Kommunizieren durch ein Ein-/Ausgabeuntersystem zu einem übergeordneten Betriebssystem beim Auftreten eines besonderen Zustandes in dem Ein-/Ausgabeuntersystem, wobei die Kommunikation einen IID und eine Kennzeichnung jedes Betriebsmittels, das durch die spezielle Bedingung beeinflußt wurde, sowie eine Anzeige darüber enthält, daß ein Bericht über den speziellen Zustand an das dem IID zugeordneten OS zugeleitet wird; und
Zuleiten des Berichtes, der Informationen über den besonderen Zustand enthält, über das übergeordnete Betriebssystem an das OS.
24. Verfahren zur anteiligen Nutzung von Ein-/Ausgabebetriebsmitteln von einer Vielzahl Betriebssysteme (OS), so wie es in Anspruch 9 festgelegt wurde, das weiterhin die folgenden Schritte umfaßt:
Kommunizieren mit Hilfe eines Ein-/Ausgabeuntersystems mit einem übergeordneten Betriebssystem bei Auftreten eines besonderen Zustandes in dem Ein-/Ausgabeuntersystem, wobei die Kommunikation eine Kennzeichnung jedes Betriebsmittels, das durch den besonderen Zustand beeinflußt wird, sowie eine Anzeige darüber enthält, ob ein Bericht über den besonderen Zustand an jedes OS geleitet wird, das die Ein- /Ausgabebetriebsmittel anteilig nutzt; und
Zuleiten des Berichtes mit Hilfe des übergeordneten Betriebssystems, der Informationen über den besondere Zustand enthält, an jedes OS, das die Ein-/Ausgabebetriebsmittel anteilig nutzt.
25. Verfahren zur anteiligen Nutzung von Ein-/Ausgabebetriebsmitteln von einer Vielzahl Betriebssysteme (OS), so wie es in Anspruch 9 festgelegt wurde, das weiterhin die folgenden Schritte umfaßt:
Aktivieren eines logischen Betriebsmittelabschnittes (LPAR) in dem CEC für die Nutzung durch ein OS mit einem Abbild- Rücksetz-Befehl;
Benachrichtigen des Ein-Ausgabeuntersystems, daß der LPAR zu aktivieren ist; und
Aufstellen von Darstellungen logischer Pfade (LPs) in dem Ein-/Ausgabeuntersystem und beeinflußten Ein- /Ausgabesteuereinheiten für den LPAR, der aktiviert wurde.
26. Verfahren zur anteiligen Nutzung von Ein-/Ausgabebetriebsmitteln von einer Vielzahl Betriebssysteme (OS), so wie es in Anspruch 9 festgelegt wurde, das weiterhin die folgenden Schritte umfaßt:
Deaktivieren eines logischen Betriebsmittelabschnittes (LPAR) in dem CEC mit Hilfe eines Abbild-Rücksetz-Befehls;
Übermittlung des IID des LPAR an das Ein-Ausgabeuntersystem, mit dem Hinweis, daß das LPAR deaktiviert wurde; und
Entfernen von Darstellungen logischer Pfade (LPs) aus dem Ein-/Ausgabeuntersystem und der beeinflußten Ein- /Ausgabesteuereinheiten für den deaktivierten LPAR.
DE69312589T 1992-06-15 1993-05-07 Verfahren zur anteiligen Nutzung von Ein-/ Ausgabebetriebsmitteln zwischen einer Vielzahl von Betriebsystemen und Programmen Expired - Lifetime DE69312589T2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US07/898,867 US5414851A (en) 1992-06-15 1992-06-15 Method and means for sharing I/O resources by a plurality of operating systems

Publications (2)

Publication Number Publication Date
DE69312589D1 DE69312589D1 (de) 1997-09-04
DE69312589T2 true DE69312589T2 (de) 1998-02-19

Family

ID=25410147

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69312589T Expired - Lifetime DE69312589T2 (de) 1992-06-15 1993-05-07 Verfahren zur anteiligen Nutzung von Ein-/ Ausgabebetriebsmitteln zwischen einer Vielzahl von Betriebsystemen und Programmen

Country Status (4)

Country Link
US (1) US5414851A (de)
EP (1) EP0574691B1 (de)
JP (1) JP2500095B2 (de)
DE (1) DE69312589T2 (de)

Families Citing this family (144)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2100540A1 (en) * 1992-10-19 1994-04-20 Jonel George System and method for performing resource reconfiguration in a computer system
CA2126740A1 (en) * 1993-07-06 1995-01-07 Naveen Jain Method and system for incorporation of a utility function into an operating system
US5566346A (en) * 1993-12-21 1996-10-15 Taligent, Inc. System for constructing hardware device interface software systems independent of operating systems including capability of installing and removing interrupt handlers
US5717950A (en) * 1994-01-11 1998-02-10 Hitachi, Ltd. Input/output device information management system for multi-computer system
US5907684A (en) * 1994-06-17 1999-05-25 International Business Machines Corporation Independent channel coupled to be shared by multiple physical processing nodes with each node characterized as having its own memory, CPU and operating system image
US5604890A (en) * 1994-08-16 1997-02-18 Miller; Paul B. Coupling device for the switching of data lines between a data storage device controller and a plurality of bootable data storage devices
US5671441A (en) * 1994-11-29 1997-09-23 International Business Machines Corporation Method and apparatus for automatic generation of I/O configuration descriptions
US5664219A (en) * 1995-06-12 1997-09-02 International Business Machines Corporation Method and system for controlling servicability of adapters connected by an I/O channel interface to a computer system
US6247093B1 (en) * 1995-09-01 2001-06-12 Hitachi, Ltd. Data processing apparatus for executing synchronous instructions prior to executing asynchronous instructions
US5996026A (en) * 1995-09-05 1999-11-30 Hitachi, Ltd. Method and apparatus for connecting i/o channels between sub-channels and devices through virtual machines controlled by a hypervisor using ID and configuration information
US6125411A (en) * 1995-09-13 2000-09-26 Hitachi, Ltd. System storing plural I/O arrangement information wherein each I/O arrangement information corresponding to each operating system is created in response to more than two operating systems
US5925108A (en) * 1995-11-03 1999-07-20 Novell, Inc. Event notification in a computer system
US5790807A (en) * 1995-12-20 1998-08-04 Tandem Computers Incorporated Computer sysem data I/O by reference among CPUS and I/O devices
US5954794A (en) * 1995-12-20 1999-09-21 Tandem Computers Incorporated Computer system data I/O by reference among I/O devices and multiple memory units
US5852719A (en) * 1995-12-20 1998-12-22 Tandem Computers Incorporated System for transferring data over a network in which a data source sends only a descriptor which a data sink uses to retrieve data
US5931903A (en) * 1995-12-20 1999-08-03 Tandem Computers Incorporated Computer system data I/O by reference among multiple CPUS
US5941959A (en) * 1995-12-20 1999-08-24 Tandem Computers Incorporated System for transferring a data stream to a requestor without copying data segments to each one of multiple data source/sinks during data stream building
JP3526700B2 (ja) * 1995-12-21 2004-05-17 三菱電機株式会社 複合計算機システム
US6678712B1 (en) 1996-01-19 2004-01-13 International Business Machines Corporation Method and system for executing a program under one of a plurality of mutually exclusive operating environments
US5956723A (en) * 1997-03-21 1999-09-21 Lsi Logic Corporation Maintaining identifier information in a memory using unique identifiers as a linked list
US6269409B1 (en) 1997-09-02 2001-07-31 Lsi Logic Corporation Method and apparatus for concurrent execution of operating systems
US6772419B1 (en) * 1997-09-12 2004-08-03 Hitachi, Ltd. Multi OS configuration system having an interrupt process program executes independently of operation of the multi OS
US6633916B2 (en) 1998-06-10 2003-10-14 Hewlett-Packard Development Company, L.P. Method and apparatus for virtual resource handling in a multi-processor computer system
US6332180B1 (en) 1998-06-10 2001-12-18 Compaq Information Technologies Group, L.P. Method and apparatus for communication in a multi-processor computer system
US6260068B1 (en) 1998-06-10 2001-07-10 Compaq Computer Corporation Method and apparatus for migrating resources in a multi-processor computer system
US6542926B2 (en) * 1998-06-10 2003-04-01 Compaq Information Technologies Group, L.P. Software partitioned multi-processor system with flexible resource sharing levels
US6199179B1 (en) 1998-06-10 2001-03-06 Compaq Computer Corporation Method and apparatus for failure recovery in a multi-processor computer system
US6381682B2 (en) 1998-06-10 2002-04-30 Compaq Information Technologies Group, L.P. Method and apparatus for dynamically sharing memory in a multiprocessor system
US6647508B2 (en) 1997-11-04 2003-11-11 Hewlett-Packard Development Company, L.P. Multiprocessor computer architecture with multiple operating system instances and software controlled resource allocation
US6530078B1 (en) * 1998-03-26 2003-03-04 Alexander V. Shmid Virtual machines in OS/390 for execution of any guest system
US6505341B1 (en) * 1998-11-10 2003-01-07 Scientronix, Inc. System and method for programming a logic control unit
US6453392B1 (en) 1998-11-10 2002-09-17 International Business Machines Corporation Method of and apparatus for sharing dedicated devices between virtual machine guests
US6188702B1 (en) * 1998-11-17 2001-02-13 Inrange Technologies Corporation High speed linking module
US6351782B1 (en) * 1999-03-19 2002-02-26 Unisys Corporation Method of sharing an I/O device between a host operating system and a foreign operating system in a single computer
US6691146B1 (en) * 1999-05-19 2004-02-10 International Business Machines Corporation Logical partition manager and method
JP2001034568A (ja) * 1999-07-21 2001-02-09 Fujitsu Ltd 論理パス確立方法及び記憶媒体
US8234650B1 (en) * 1999-08-23 2012-07-31 Oracle America, Inc. Approach for allocating resources to an apparatus
US6986137B1 (en) * 1999-09-28 2006-01-10 International Business Machines Corporation Method, system and program products for managing logical processors of a computing environment
US6567841B1 (en) * 1999-09-28 2003-05-20 International Business Machines Corporation Method and apparatus for creating and identifying logical partition clusters
US6633962B1 (en) 2000-03-21 2003-10-14 International Business Machines Corporation Method, system, program, and data structures for restricting host access to a storage space
US6671733B1 (en) 2000-03-24 2003-12-30 International Business Machines Corporation Internal parallel system channel
JP2001290665A (ja) * 2000-04-11 2001-10-19 Nec Software Hokuriku Ltd プロセッサシステム
US7032113B2 (en) 2000-04-28 2006-04-18 Moldflow Ireland, Ltd. Network enabled application software system and method
JP2001331333A (ja) * 2000-05-18 2001-11-30 Hitachi Ltd 計算機システム及び計算機システムの制御方法
US6990663B1 (en) 2000-06-08 2006-01-24 International Business Machines Corporation Hypervisor virtualization of OS console and operator panel
US7035963B2 (en) * 2000-12-27 2006-04-25 Intel Corporation Method for resolving address space conflicts between a virtual machine monitor and a guest operating system
JP4214682B2 (ja) * 2001-01-24 2009-01-28 株式会社日立製作所 計算機およびその入出力手段
JP4087072B2 (ja) * 2001-01-25 2008-05-14 株式会社日立製作所 ストレージシステム及び仮想プライベートボリューム制御方法
JP2002251326A (ja) * 2001-02-22 2002-09-06 Hitachi Ltd 耐タンパ計算機システム
US7089558B2 (en) 2001-03-08 2006-08-08 International Business Machines Corporation Inter-partition message passing method, system and program product for throughput measurement in a partitioned processing environment
US6985951B2 (en) * 2001-03-08 2006-01-10 International Business Machines Corporation Inter-partition message passing method, system and program product for managing workload in a partitioned processing environment
US6721812B1 (en) * 2001-03-22 2004-04-13 Emc Corporation Method and system for adaptive resource management
US6820164B2 (en) * 2001-04-17 2004-11-16 International Business Machines Corporation Peripheral component interconnect bus detection in logically partitioned computer system involving authorizing guest operating system to conduct configuration input-output operation with functions of pci devices
ES2185496B1 (es) * 2001-07-17 2005-06-01 Universidad Politecnica De Valencia Equipo y metodo en linea para la deteccion, determinacion de la evolucion y cuantificacion de biomasa microbiana y otras sustancias que absorben a lo largo del espectro de luz durante el desarrollo de procesos biotecnologicos.
JP3992952B2 (ja) * 2001-09-10 2007-10-17 株式会社日立製作所 記憶制御装置およびその運用方法
US20030115443A1 (en) * 2001-12-18 2003-06-19 Cepulis Darren J. Multi-O/S system and pre-O/S boot technique for partitioning resources and loading multiple operating systems thereon
US7131025B2 (en) * 2002-12-18 2006-10-31 Emc Corporation Resource allocation aware queuing of requests for media resources
US7512717B2 (en) * 2003-01-21 2009-03-31 Nextio Inc. Fibre channel controller shareable by a plurality of operating system domains within a load-store architecture
US7493416B2 (en) * 2003-01-21 2009-02-17 Nextio Inc. Fibre channel controller shareable by a plurality of operating system domains within a load-store architecture
US7103064B2 (en) * 2003-01-21 2006-09-05 Nextio Inc. Method and apparatus for shared I/O in a load/store fabric
US8346884B2 (en) * 2003-01-21 2013-01-01 Nextio Inc. Method and apparatus for a shared I/O network interface controller
US7502370B2 (en) * 2003-01-21 2009-03-10 Nextio Inc. Network controller for obtaining a plurality of network port identifiers in response to load-store transactions from a corresponding plurality of operating system domains within a load-store architecture
US7664909B2 (en) 2003-04-18 2010-02-16 Nextio, Inc. Method and apparatus for a shared I/O serial ATA controller
US7046668B2 (en) 2003-01-21 2006-05-16 Pettey Christopher J Method and apparatus for shared I/O in a load/store fabric
US7457906B2 (en) * 2003-01-21 2008-11-25 Nextio, Inc. Method and apparatus for shared I/O in a load/store fabric
US7174413B2 (en) * 2003-01-21 2007-02-06 Nextio Inc. Switching apparatus and method for providing shared I/O within a load-store fabric
US7219183B2 (en) * 2003-01-21 2007-05-15 Nextio, Inc. Switching apparatus and method for providing shared I/O within a load-store fabric
US8102843B2 (en) * 2003-01-21 2012-01-24 Emulex Design And Manufacturing Corporation Switching apparatus and method for providing shared I/O within a load-store fabric
US7836211B2 (en) * 2003-01-21 2010-11-16 Emulex Design And Manufacturing Corporation Shared input/output load-store architecture
US7617333B2 (en) * 2003-01-21 2009-11-10 Nextio Inc. Fibre channel controller shareable by a plurality of operating system domains within a load-store architecture
US7917658B2 (en) * 2003-01-21 2011-03-29 Emulex Design And Manufacturing Corporation Switching apparatus and method for link initialization in a shared I/O environment
US8032659B2 (en) 2003-01-21 2011-10-04 Nextio Inc. Method and apparatus for a shared I/O network interface controller
US7953074B2 (en) * 2003-01-21 2011-05-31 Emulex Design And Manufacturing Corporation Apparatus and method for port polarity initialization in a shared I/O device
US7698483B2 (en) * 2003-01-21 2010-04-13 Nextio, Inc. Switching apparatus and method for link initialization in a shared I/O environment
US7188209B2 (en) * 2003-04-18 2007-03-06 Nextio, Inc. Apparatus and method for sharing I/O endpoints within a load store fabric by encapsulation of domain information in transaction layer packets
US7149821B2 (en) * 2003-01-29 2006-12-12 International Business Machines Corporation Predictably defining input/output configurations for environments employing fabrics
JP2004258840A (ja) * 2003-02-25 2004-09-16 Hitachi Ltd 仮想化されたi/oデバイスをもつ計算機システム
US7073002B2 (en) * 2003-03-13 2006-07-04 International Business Machines Corporation Apparatus and method for controlling resource transfers using locks in a logically partitioned computer system
US7174550B2 (en) * 2003-05-12 2007-02-06 International Business Machines Corporation Sharing communications adapters across a plurality of input/output subsystem images
US7290070B2 (en) * 2003-05-12 2007-10-30 International Business Machines Corporation Multiple logical input/output subsystem facility
US7000036B2 (en) * 2003-05-12 2006-02-14 International Business Machines Corporation Extended input/output measurement facilities
US7130938B2 (en) * 2003-05-12 2006-10-31 International Business Machines Corporation Method, system and program products for identifying communications adapters of a computing environment
US7177961B2 (en) * 2003-05-12 2007-02-13 International Business Machines Corporation Managing access, by operating system images of a computing environment, of input/output resources of the computing environment
US6996638B2 (en) * 2003-05-12 2006-02-07 International Business Machines Corporation Method, system and program products for enhancing input/output processing for operating system images of a computing environment
US7127599B2 (en) * 2003-05-12 2006-10-24 International Business Machines Corporation Managing configurations of input/output system images of an input/output subsystem, wherein a configuration is modified without restarting the input/output subsystem to effect a modification
US7826386B2 (en) * 2003-12-08 2010-11-02 International Business Machines Corporation Facilitating the configuring of communications environments
US7913251B2 (en) * 2003-12-12 2011-03-22 International Business Machines Corporation Hypervisor virtualization of OS console and operator panel
US7277968B2 (en) * 2004-01-23 2007-10-02 International Business Machines Corporation Managing sets of input/output communications subadapters of an input/output subsystem
US7451302B2 (en) * 2004-03-10 2008-11-11 Hewlett-Packard Development Company, L.P. System and method for managing configuration data for a multi-cell computer system
US7383555B2 (en) * 2004-03-11 2008-06-03 International Business Machines Corporation Apparatus and method for sharing a network I/O adapter between logical partitions
DE102004014427A1 (de) * 2004-03-19 2005-10-27 Francotyp-Postalia Ag & Co. Kg Verfahren für ein servergesteuertes Sicherheitsmanagement von erbringbaren Dienstleistungen und Anordnung zur Bereitstellung von Daten nach einem Sicherheitsmanagement für ein Frankiersystem
US7530071B2 (en) 2004-04-22 2009-05-05 International Business Machines Corporation Facilitating access to input/output resources via an I/O partition shared by multiple consumer partitions
US20060069828A1 (en) * 2004-06-30 2006-03-30 Goldsmith Michael A Sharing a physical device among multiple clients
JP4788124B2 (ja) * 2004-09-16 2011-10-05 株式会社日立製作所 データ処理システム
US7697536B2 (en) * 2005-04-01 2010-04-13 International Business Machines Corporation Network communications for operating system partitions
US7502872B2 (en) * 2005-05-23 2009-03-10 International Bsuiness Machines Corporation Method for out of user space block mode I/O directly between an application instance and an I/O adapter
US7464189B2 (en) * 2005-05-23 2008-12-09 International Business Machines Corporation System and method for creation/deletion of linear block address table entries for direct I/O
US20060265525A1 (en) * 2005-05-23 2006-11-23 Boyd William T System and method for processor queue to linear block address translation using protection table control based on a protection domain
US7552240B2 (en) * 2005-05-23 2009-06-23 International Business Machines Corporation Method for user space operations for direct I/O between an application instance and an I/O adapter
US7502871B2 (en) * 2005-05-23 2009-03-10 International Business Machines Corporation Method for query/modification of linear block address table entries for direct I/O
US20070005815A1 (en) * 2005-05-23 2007-01-04 Boyd William T System and method for processing block mode I/O operations using a linear block address translation protection table
US7797564B2 (en) * 2005-05-24 2010-09-14 International Business Machines Corporation Method, apparatus, and computer program product for dynamically modifying operating parameters of the system based on the current usage of a processor core's specialized processing units
US7657662B2 (en) * 2005-08-31 2010-02-02 International Business Machines Corporation Processing user space operations directly between an application instance and an I/O adapter
US7500071B2 (en) * 2005-08-31 2009-03-03 International Business Machines Corporation Method for out of user space I/O with server authentication
US20070168567A1 (en) * 2005-08-31 2007-07-19 Boyd William T System and method for file based I/O directly between an application instance and an I/O adapter
US7577761B2 (en) * 2005-08-31 2009-08-18 International Business Machines Corporation Out of user space I/O directly between a host system and a physical adapter using file based linear block address translation
US7996585B2 (en) * 2005-09-09 2011-08-09 International Business Machines Corporation Method and system for state tracking and recovery in multiprocessing computing systems
JP2008021252A (ja) * 2006-07-14 2008-01-31 Hitachi Ltd 計算機システム及びアドレス割当方法
KR100992050B1 (ko) * 2006-01-12 2010-11-05 브로드콤 이스라엘 알 앤 디 가상화된 네트워크 환경에서 입력/출력 공유를 가지는프로토콜 오프로드 및 다이렉트 입력/출력을 위한 방법 및시스템
US8521912B2 (en) * 2006-01-12 2013-08-27 Broadcom Corporation Method and system for direct device access
US7783807B2 (en) * 2006-03-14 2010-08-24 International Business Machines Corporation Controlling resource transfers in a logically partitioned computer system
US8635388B2 (en) * 2006-03-31 2014-01-21 Broadcom Corporation Method and system for an OS virtualization-aware network interface card
US7500023B2 (en) * 2006-10-10 2009-03-03 International Business Machines Corporation Facilitating input/output processing by using transport control words to reduce input/output communications
JP2008158710A (ja) * 2006-12-22 2008-07-10 Hitachi Ltd 計算機システム
US8205207B2 (en) * 2007-03-15 2012-06-19 International Business Machines Corporation Method of automated resource management in a partition migration capable environment
US20080285551A1 (en) * 2007-05-18 2008-11-20 Shamsundar Ashok Method, Apparatus, and Computer Program Product for Implementing Bandwidth Capping at Logical Port Level for Shared Ethernet Port
US8286195B2 (en) * 2007-10-31 2012-10-09 Microsoft Corporation Controlling hardware across two or more simultaneously running operating systems
US8327331B2 (en) 2008-01-23 2012-12-04 International Business Machines Corporation Verification of input/output hardware configuration
US8117347B2 (en) 2008-02-14 2012-02-14 International Business Machines Corporation Providing indirect data addressing for a control block at a channel subsystem of an I/O processing system
US7937507B2 (en) * 2008-02-14 2011-05-03 International Business Machines Corporation Extended measurement word determination at a channel subsystem of an I/O processing system
US7890668B2 (en) * 2008-02-14 2011-02-15 International Business Machines Corporation Providing indirect data addressing in an input/output processing system where the indirect data address list is non-contiguous
US8001298B2 (en) * 2008-02-14 2011-08-16 International Business Machines Corporation Providing extended measurement data in an I/O processing system
US8478915B2 (en) 2008-02-14 2013-07-02 International Business Machines Corporation Determining extended capability of a channel path
US9052837B2 (en) 2008-02-14 2015-06-09 International Business Machines Corporation Processing communication data in a ships passing condition
US7941570B2 (en) 2008-02-14 2011-05-10 International Business Machines Corporation Bi-directional data transfer within a single I/O operation
WO2010023052A2 (en) 2008-08-26 2010-03-04 International Business Machines Corporation A method, apparatus and computer program for provisioning a storage volume to a virtual server
US8332542B2 (en) * 2009-11-12 2012-12-11 International Business Machines Corporation Communication with input/output system devices
US8364854B2 (en) 2011-06-01 2013-01-29 International Business Machines Corporation Fibre channel input/output data routing system and method
US8583988B2 (en) 2011-06-01 2013-11-12 International Business Machines Corporation Fibre channel input/output data routing system and method
US8677027B2 (en) 2011-06-01 2014-03-18 International Business Machines Corporation Fibre channel input/output data routing system and method
US8364853B2 (en) 2011-06-01 2013-01-29 International Business Machines Corporation Fibre channel input/output data routing system and method
US8738811B2 (en) 2011-06-01 2014-05-27 International Business Machines Corporation Fibre channel input/output data routing system and method
US9021155B2 (en) 2011-06-01 2015-04-28 International Business Machines Corporation Fibre channel input/output data routing including discarding of data transfer requests in response to error detection
US8549185B2 (en) 2011-06-30 2013-10-01 International Business Machines Corporation Facilitating transport mode input/output operations between a channel subsystem and input/output devices
US8346978B1 (en) 2011-06-30 2013-01-01 International Business Machines Corporation Facilitating transport mode input/output operations between a channel subsystem and input/output devices
US8312176B1 (en) 2011-06-30 2012-11-13 International Business Machines Corporation Facilitating transport mode input/output operations between a channel subsystem and input/output devices
US8473641B2 (en) 2011-06-30 2013-06-25 International Business Machines Corporation Facilitating transport mode input/output operations between a channel subsystem and input/output devices
US8695010B2 (en) 2011-10-03 2014-04-08 International Business Machines Corporation Privilege level aware processor hardware resource management facility
CN104137088A (zh) 2012-02-23 2014-11-05 三菱电机株式会社 计算机、访问管理方法以及访问管理程序
US8918542B2 (en) 2013-03-15 2014-12-23 International Business Machines Corporation Facilitating transport mode data transfer between a channel subsystem and input/output devices
US8990439B2 (en) 2013-05-29 2015-03-24 International Business Machines Corporation Transport mode data transfer between a channel subsystem and input/output devices
US9772867B2 (en) * 2014-03-27 2017-09-26 International Business Machines Corporation Control area for managing multiple threads in a computer
CN105095126B (zh) * 2014-04-30 2018-02-13 华为技术有限公司 控制方法和控制设备
CN104536869B (zh) 2014-12-12 2017-09-12 华为技术有限公司 移动终端及其资源管理方法

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2258113A5 (de) * 1973-11-30 1975-08-08 Honeywell Bull Soc Ind
US4253145A (en) * 1978-12-26 1981-02-24 Honeywell Information Systems Inc. Hardware virtualizer for supporting recursive virtual computer systems on a host computer system
US4564903A (en) * 1983-10-05 1986-01-14 International Business Machines Corporation Partitioned multiprocessor programming system
JPH0619747B2 (ja) * 1984-01-18 1994-03-16 株式会社日立製作所 I/o命令実行方法、i/o割込処理方法およびそれらを用いた計算機システム
US4967342A (en) * 1984-08-17 1990-10-30 Lent Robert S Data processing system having plurality of processors and channels controlled by plurality of system control programs through interrupt routing
US4843541A (en) * 1987-07-29 1989-06-27 International Business Machines Corporation Logical resource partitioning of a data processing system
JPH02195453A (ja) * 1989-01-25 1990-08-02 Toshiba Corp ファイルアクセス制御方式
AU650242B2 (en) * 1989-11-28 1994-06-16 International Business Machines Corporation Methods and apparatus for dynamically managing input/output (I/O) connectivity
US5170472A (en) * 1991-03-28 1992-12-08 International Business Machines Corp. Dynamically changing a system i/o configuration definition

Also Published As

Publication number Publication date
JP2500095B2 (ja) 1996-05-29
US5414851A (en) 1995-05-09
EP0574691A1 (de) 1993-12-22
JPH0635725A (ja) 1994-02-10
EP0574691B1 (de) 1997-07-30
DE69312589D1 (de) 1997-09-04

Similar Documents

Publication Publication Date Title
DE69312589T2 (de) Verfahren zur anteiligen Nutzung von Ein-/ Ausgabebetriebsmitteln zwischen einer Vielzahl von Betriebsystemen und Programmen
DE3854837T2 (de) Vorrichtung für ein Datenverarbeitungssystem mit gleichmengiger Beziehung zwischen einer Vielzahl von zentralen Datenverarbeitungseinheiten
DE69030861T2 (de) Bus-Master-Steuerprotokoll
DE112013006063B4 (de) Funktionsübernahme für einen Datenübertragungskanal in einem Netzwerk mit Hochleistungsdatenverarbeitung
DE69032614T2 (de) Verfahren zur Datenverteilung in einer Speicherplattenanordnung
DE69534616T2 (de) System und Verfahren zum Verarbeiten von E/A-Anfragen über einen Schnittstellenbus zu einer Speicherplattenanordnung
DE69024753T2 (de) Tragbarer, Ressourcen teilender Datei-Server, der gemeinsame Routines benutzt
DE60212626T2 (de) Endknotenunterteilung mittels lokaler identifikatoren
DE3852378T2 (de) Mechanismus und Verfahren zur entgegengesetzten Flussteuerung.
DE69032862T2 (de) Intelligenter Ein-/Ausgabeprozessor und Datenverarbeitungssystem
DE3689226T2 (de) Multiprozessorsystem mit multihierarchischen Ebenen.
DE69231909T2 (de) Abstufungserweiterung der Erkennung von E/A-Unterbrechungsunterklassen einer CPU
DE69429279T2 (de) Multiprozessor-programmierbares unterbrechungskontrollersystem mit prozessor-integrierten unterbrechungskontrollern
DE69433293T2 (de) Netzwerkübertragungsverfahren für Systeme mit virtuellem Speicher
DE69521101T2 (de) Gemeinsam genutzte virtuelle Platten mit anwendungstransparenter Wiedergewinnung
DE69230093T2 (de) Multiprozessorsystem
DE3789104T2 (de) Netzwerkübertragungsadapter.
DE69108434T2 (de) Mehrgruppen-Signalprozessor.
DE68919631T2 (de) Verfahren zur Verarbeitung von Programmteilen eines verteilten Anwendungsprogramms durch einen Hauptrechner und einen intelligenten Arbeitsplatz in einer SNA LU 6.2-Netzwerkumgebung.
DE3856030T2 (de) Vorrichtung und Verfahren zur Durchführung von änderbarer Betriebsmittelaufteilung in einem Datenverarbeitungssystem mit zentralen Datenverarbeitungseinheiten mit verschiedenen Betriebssystemen
DE69605568T2 (de) Verfahren zum schaffen eines benutzerglobalen namenraums in einem mehrbenutzer-betriebssystem
DE3851928T2 (de) Steuerung von asynchron arbeitenden Peripheriegeräten.
DE69735575T2 (de) Verfahren und Vorrichtung zur Unterbrechungsverteilung in einem skalierbaren symmetrischen Mehrprozessorsystem ohne die Busbreite oder das Busprotokoll zu verändern
DE69628798T2 (de) Verfahren zur Übertragung von Multimediadaten
DE69114961T2 (de) Vorrichtung für Zusammenschaltungskanäle.

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8328 Change in the person/name/address of the agent

Representative=s name: DUSCHER, R., DIPL.-PHYS. DR.RER.NAT., PAT.-ANW., 7