DE69428681T2 - Verfahren und Gerät zur Erzeugung der Anzeige einer Hardware-Konfiguration - Google Patents
Verfahren und Gerät zur Erzeugung der Anzeige einer Hardware-KonfigurationInfo
- Publication number
- DE69428681T2 DE69428681T2 DE69428681T DE69428681T DE69428681T2 DE 69428681 T2 DE69428681 T2 DE 69428681T2 DE 69428681 T DE69428681 T DE 69428681T DE 69428681 T DE69428681 T DE 69428681T DE 69428681 T2 DE69428681 T2 DE 69428681T2
- Authority
- DE
- Germany
- Prior art keywords
- configuration
- peripheral units
- central processor
- display
- units
- 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 - Fee Related
Links
- 238000000034 method Methods 0.000 title claims description 22
- 230000015654 memory Effects 0.000 claims description 36
- 230000002093 peripheral effect Effects 0.000 claims description 24
- 238000010586 diagram Methods 0.000 description 29
- 230000006870 function Effects 0.000 description 4
- 230000010365 information processing Effects 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 239000013598 vector Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/20—Drawing from basic elements, e.g. lines or circles
- G06T11/206—Drawing of charts or graphs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/10—Geometric CAD
- G06F30/18—Network design, e.g. design based on topological or interconnect aspects of utility systems, piping, heating ventilation air conditioning [HVAC] or cabling
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Geometry (AREA)
- Mathematical Analysis (AREA)
- Computational Mathematics (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Computer Hardware Design (AREA)
- Evolutionary Computation (AREA)
- General Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Digital Computer Display Output (AREA)
- Multi Processors (AREA)
Description
- Die Erfindung betrifft ein System, das mindestens einen Prozessor und mindestens eine mit dem Prozessor verbundene Einheit umfasst, wobei der Prozessor eine Konfigurationstabelle zum Definieren der logischen Verbindungen zwischen der mindestens einen Einheit und dem Prozessor aufweist, wobei das System eine Anzeigeeinheit zum Anzeigen der Konfiguration des Systems aufweist.
- Die Systemhardwareverwaltung (SHAMAN) von New Era Software bietet eine Lösung für das Problem der Erzeugung und der Anzeige von Hardwarekonfigurationsdiagrammen für Großrechnermaschinen. Shaman lädt die zum Erstellen der Diagramme benötigten Datendateien vom Großrechner in den Speicher eines Personal Computers herunter und erzeugt anschließend auf dem Bildschirm des Personal Computers oder auf einem angeschlossenen Drucker die Konfigurationsdiagramme.
- Da die Konfigurationsanzeigen aufseiten des Personal Computers eines Datenverarbeitungssystems erzeugt werden, ist es nicht möglich, dynamische Änderungen der Hardwarekonfiguration zu überwachen. Ähnlich ist Shaman darauf begrenzt, die Hardwarekonfiguration der mit einem einzigen Prozessor verbundenen Peripheriegeräte zu zeigen, wohingegen moderne Computersysteme aus einer Vielzahl von Computern, Peripheriegeräten und Einheiten bestehen, die in einem Netz miteinander verbunden sind.
- Der von der Graphic Management Group Inc. hergestellte Graphic Configuration Manager bietet ähnliche Einrichtungen wie Shaman und hat dieselben Nachteile.
- Research Disclosure Nr. 292 vom August 1988 mit dem Titel "Automated WYSIWYG Presentation of Hardware" beschreibt kurz die Vorteile einer grafischen Anzeige von Computersystemhardware, bietet jedoch keine ausführliche Lösung für das Problem.
- Aus US-A-4 195 344 (Yamazaki) ist ein System bekannt, in dem die Konfiguration einer Vielzahl von Informationsverarbeitungsmodulen automatisch überwacht werden kann. Das hier beschriebene Patent lehrt jedoch kein Verfahren und keine Vorrichtung zum Anzeigen der aus der Überwachung der Informationsverarbeitungsmodule erhaltenen Informationen.
- US-A-5 038 294 beschreibt ein automatisches System zur Erzeugung eines Verbindungskonfigurationsdiagramms zwischen Einheiten. Diese Erfindung betrifft insbesondere ein Zeichenhilfsprogramm (drawing tool), insbesondere ein Kabelzeichenhilfsprogramm. Das System umfasst einen ersten und zweiten Speicher zum Speichern von Eingabeparametern, einen dritten Speicher zum Speichern von Ausgabedaten, eine Wissensbasis (knowledge base) zum Speichern eines Satzes von Verbindungsregeln und zum Erzeugen einer Verbindungsstruktur. Fig. 2 beschreibt, dass eine Einheit durch einen Namen und eine laufende und die CPU, mit der die Einheit verbunden ist, und den Eingabekanal dieser CPU angezeigt wird. Die Eingabeparameter entsprechen der Konfigurationstabelle in der vorliegenden Erfindung. Dieses System benötigt drei Speicher zum Anzeigen von Informationen.
- Die Aufgabe der Erfindung ist daher die Erzeugung einer Vorrichtung und eines Verfahrens, die dem Benutzer die Erzeugung von komplexen grafischen Anzeigen der Hardwarekonfiguration einer Datenverarbeitungsumgebung ermöglichen.
- Diese Aufgabe wurde durch eine Vorrichtung und ein Verfahren nach den Ansprüchen 1 und 8 durch den Prozessor erfüllt, der beim Betrieb außerdem einen Konfigurationsanzeige- Speicherbereich zum Erstellen einer Anzeige der logischen Verbindungen zwischen dem Prozessor und der mindestens einen Einheit umfasst, wobei die Anzeigeeinheit beim Betrieb den Inhalt des Konfigurationsanzeige-Speicherbereichs ausgibt. Da der Prozessor mit einem Konfigurationsanzeige-Speicherbereich zum Erstellen der Konfigurationsanzeige ausgestattet ist, ist es nicht notwendig, dass die benötigten Daten in einen Personal Computer heruntergeladen werden. Dadurch muss kein mit dem Datenverarbeitungssystem verbundener Personal Computer bereitgestellt werden. Außerdem wird die für die Erstellung der Anzeige benötigte Zeit eingespart, da die Daten nicht aus dem Großrechnerprozessor in den Prozessor eines Personal Computers geladen werden müssen.
- In einer weiteren Ausführungsform der Erfindung weist das System eine Vielzahl von Prozessoren und eine erste Konfigurationstabelle zum Definieren der logischen Verbindungen zwischen der Vielzahl von Prozessoren auf, wobei die erste Konfigurationstabelle zum Erstellen der Anzeige der logischen Verbindungen im Konfigurationsanzeige- Speicherbereich verwendet werden kann. Die Verwendung dieser ersten Konfigurationstabelle zum Erstellen des Konfigurationsanzeigediagramms bedeutet, dass die Erfindung ausführlichere Diagramme erstellen kann, als es mit den Systemen nach dem Stand der Technik möglich ist.
- Das System enthält außerdem eine Vielzahl von zweiten Konfigurationstabellen, die die logischen Verbindungen zwischen einem aus der Vielzahl von Prozessoren und der mindestens einen Einheit definieren. Die Verwendung der Vielzahl von zweiten Konfigurationstabellen, die von den ersten Konfigurationstabellen verschieden sind, ermöglicht es dem Systemprogrammierer, mehrere verschiedene Konfigurationen für die mit dem Kanalsubsystem des Prozessors verbundene Einheit zu programmieren. Diese können immer dann geändert werden, wenn es für die Gewährleistung eines leistungsfähigen Betriebs des Systems notwendig ist.
- Gemäß einer Ausführungsform der Erfindung besteht das System aus einer Vielzahl von Einheiten, die mit den Kanalsubsystemen der Prozessoren verbunden sind. Die logischen Verbindungen zwischen der Vielzahl von Einheiten und dem Prozessor werden in den ersten und/oder zweiten Konfigurationstabellen definiert. Zwischen die Prozessoren und die Einheiten sind Steuereinheiten geschaltet. Die logischen Verbindungen zwischen den Steuereinheiten, den Einheiten und den Prozessoren werden in den ersten und/oder zweiten Konfigurationstabellen definiert.
- Die ersten und/oder zweiten Konfigurationstabellen haben eine ähnliche Struktur und enthalten eine Liste von logischen Verbindungen zwischen dem Prozessor und der Einheit, einen Zeiger auf die Liste von Prozessoren, einen Zeiger auf die Liste von Einheiten.
- Der Inhalt des Konfigurationsanzeige-Speicherbereichs kann in Form eines Datensatzes auf einer Anzeigeeinheit oder auf einem Drucker ausgegeben werden.
- Die Aufgabe der Erfindung wird außerdem durch ein Verfahren zum Anzeigen der Konfiguration eines Datenverarbeitungssystems auf einer Anzeigeeinheit erfüllt, das die folgenden Schritte umfasst:
- einen ersten Schritt des Definierens der anzeigbaren Informationen,
- einen zweiten Schritt des Erzeugens eines Konfigurationsanzeige-Speicherbereichs im virtuellen Speicher des Prozessors,
- einen dritten Schritt des Lesens von Konfigurationsdaten, die die logischen Verbindungen zwischen den Definitionseinheiten (entities) betreffen, aus einer im Prozessor gespeicherten Konfigurationstabelle,
- einen vierten Schritt des Feststellens der Topologie der Definitionseinheiten,
- einen fünften Schritt des Platzierens von Einträgen zur Darstellung der allgemeinen Definitionseinheiten im Konfigurationsanzeige-Speicherbereich,
- einen sechsten Schritt des Entnehmens von Verbindungsdaten zwischen den allgemeinen Definitionseinheiten aus den gelesenen Konfigurationsdaten,
- einen siebten Schritt des Erzeugens von Verbindungen zwischen den Definitionseinheiten im Konfigurationsanzeige-Speicherbereich unter Verwendung der entnommenen Verbindungsdaten,
- einen achten Schritt des Ausgebens der Konfiguration des Datenverarbeitungssystems auf einer Ausgabeeinheit unter Verwendung des Konfigurationsanzeige-Speicherbereichs.
- Im Verfahren umfasst der fünfte Schritt das Platzieren aller Elemente derselben Gruppe von allgemeinen Definitionseinheiten im selben Bereich des Konfigurationsanzeige-Speicherbereichs. Dies ermöglicht es der die Konfigurationstabelle betrachtenden Person, die verschiedenen Typen von angezeigten Definitionseinheiten oder Objekten problemlos zu unterscheiden.
- Das Verfahren kann außerdem einen Schritt des Optimierens der Anordnung der Definitionseinheiten und Verbindungen im Konfigurationsanzeige-Speicherbereich umfassen. Durch das Optimieren der Anordnung können kompakte Diagramme erhalten werden, die für den Betrachter leicht verständlich sind.
- In einer besonders vorteilhaften Ausführungsform des Verfahrens wird eine Prozedur ausgeführt, um die Kreuzungen von Verbindungen festzustellen und um ein bestimmtes Symbol an die Position der Verbindungskreuzungen zu setzen. Die Erfahrung hat gezeigt, dass dieses Symbol aus einem '-' bestehen sollte. Dies verbessert die Lesbarkeit des Konfigurationsdiagramms.
- Außerdem kann ein Schritt des Feststellens der Übereinstimmungen von Linien, die vertikale und horizontale Verbindungen darstellen, ausgeführt und die Übereinstimmungen können beseitigt werden. Dies verbessert ebenfalls die Lesbarkeit des Diagramms.
- Fig. 1 zeigt eine einfache Übersicht über ein auf einem Kanal beruhenden Datenverarbeitungssystem.
- Fig. 2A zeigt eine Übersicht über ein anderes auf einem Kanal beruhenden Datenverarbeitungssystem.
- Fig. 2B zeigt die Struktur des Prozessors des Datenverarbeitungssystems.
- Fig. 3 zeigt die Struktur der Ein-/Ausgabedefinitionsdatei (input/output definition file).
- Fig. 4 zeigt die Struktur des Speicherbereichs, der für das Erstellen des Konfigurationsdiagramms verwendet wird.
- Fig. 5 zeigt ein Flussdiagramm, das die an der Erstellung des Konfigurationsdiagramms beteiligten Schritte darstellt.
- Fig. 6 zeigt die verschiedenen Schritte des Erstellens eines typischen Beispiels eines Konfigurationsdiagramms.
- Fig. 7 zeigt eine Verbindungslinie, die zum Verbinden der grafischen Objekte des Konfigurationsdiagramms verwendet wird.
- Fig. 8 zeigt ein typisches Beispiel eines Konfigurationsdiagramms mit Verbindungslinien.
- Fig. 9 zeigt eine Verbindungslinie mit Endpunkten.
- Fig. 10 zeigt ein Flussdiagramm für den Linienkreuzungsalgorithmus (line crossing algorithm).
- Fig. 11 zeigt eine Stufentabelle (level table).
- Fig. 12 zeigt Zeilen eines Konfigurationsdiagramms.
- Fig. 13 zeigt die Lösung von Konflikten zwischen vertikalen Linien in einem Konfigurationsdiagramm.
- Fig. 14 zeigt die Ersetzung von Zeichen am Schnittpunkt von vertikalen und horizontalen Linien.
- Fig. 15 zeigt die Definition eines Zeichens aufgrund der Ermittlung eines Nachbarn.
- Fig. 16 zeigt eine Mustertabelle für die Ermittlung eines nahegelegenen Nachbarn.
- Fig. 17 zeigt eine kompliziertere Definition eines Zeichens aufgrund der Ermittlung eines Nachbarn.
- Fig. 18 zeigt das Ergebnis des Ersetzens eines Zeichens durch ein anderes Zeichen, das gemäß der Ermittlung eines Nachbarn ermittelt wurde.
- Fig. 19 zeigt ein anderes typisches Beispiel eines Konfigurationsdiagramms, das andere Aspekte der Erfindung darstellt.
- Fig. 20 zeigt ein weiteres typisches Beispiel eines Konfigurationsdiagramms, das andere Aspekte der Erfindung darstellt.
- Fig. 1 zeigt die Übersicht über ein auf einem Kanal beruhenden Datenverarbeitungssystem 5. Solche Datenverarbeitungssysteme sind typisch für die IBM /390 und kompatible Computerarchitekturen. Sie umfassen einen oder mehrere Prozessoren P, mit denen Steuereinheiten CU1, CU2 verbunden sind. Einheiten D1, D2 und D3 sind mit den Steuereinheiten 45 CU1, CU2 verbunden. Die Einheiten 50 können Bandeinheiten, Einheiten mit Direktzugriffspeicher (DASD), Datenstationen usw. sein. Fig. 1 zeigt der Einfachheit halber nur einen Prozessor P, zwei Steuereinheiten CU1, CU2 und drei Einheiten D1, D2, D3. In der Praxis sind viel mehr Prozessoren, Steuereinheiten und Einheiten vorhanden. Die Steuereinheiten CU1, CU2 und die Einheiten D1, D2, D3 bilden die Kanalsubsysteme des Prozessors P.
- Fig. 2A zeigt eine kompliziertere Struktur eines auf einem Kanal beruhenden Datenverarbeitungssystems 5. Das Datenverarbeitungssystem 5 umfasst zwei Prozessoren 40a, 40b, zwei Steuereinheiten 45a, 45b und zwei Einheiten 50a, 50b. Beide Prozessoren 40 sind mit beiden Steuereinheiten 45 verbunden. Die erste Einheit 50a ist mit beiden Steuereinheiten 45 verbunden. Die zweite Einheit 50b ist nur mit der zweiten 45b der Steuereinheiten verbunden. Außerdem werden in Fig. 2A Einheiten mit Direktzugriffspeicher (DASD) 68a, 68b gezeigt, auf die die Prozessoren 40 und insbesondere ein HCD-Modul 42 in den Prozessoren 40 zugreifen können. Auf den DASDs 68 sind eine Vielzahl von Datensätzen 70a bis e gespeichert, die als IOCDS-Datensätze (IOCDS datasets) 70 bezeichnet werden. Die Funktion der IOCDS-Datensätze 70 und des HCD-Moduls 42 wird an späterer Stelle erläutert.
- In Fig. 2B wird die Struktur der Prozessoren 40 in einem Beispiel der Erfindung gezeigt. Der Prozessor 35 umfasst einen Speicher 10 und eine Zentraleinheit (CPU) 40. Für die Erläuterung wird vorausgesetzt, dass im Prozessor das MVS/ESA- Betriebssystem abläuft, ein von IBM Corporation für die Systemarchitektur /390 entwickeltes firmenspezifisches (proprietary) Betriebssystem. Die Erfindung könnte jedoch gleichermaßen in anderen Betriebssystemen betrieben werden.
- Das MVS/ESA-Betriebssystem enthält das in den Fig. 2A und 2B gezeigte und als Hardwarekonfigurationsdefinitions- (HCD-) Modul bezeichnete HCD-Modul 42, das es einem Systemprogrammierer ermöglicht, die Hardware und die Topologie des Datenverarbeitungssystems 5 zu definieren und zu konfigurieren. Das HCD-Modul 42 erzeugt zwei Datensätze, eine Ein-/Ausgabedefinitionsdatei (IODF) 60 und den IOCDS-Datensatz 70, dessen Funktion an späterer Stelle erläutert wird, und greift auf diese zu. Im HCD-Modul 42 werden zwei Blöcke gezeigt, der IODF-Block 65 und der IOCDS-Datenblock 75, deren Funktion ebenfalls später erläutert wird.
- Der IODF 60 enthält Einzelheiten von allen Prozessoren 40, Steuereinheiten 45 und Einheiten 50, die das Datenverarbeitungssystem 5 bilden. Der IODF 60 kann außerdem Einzelheiten von allen Schaltern oder ESCON-Verwaltern (ESCON managers) im Datenverarbeitungssystem 5, 7 enthalten. Die Struktur der Daten im IODF 60 wird später erläutert. Der IODF 60 wird vom HCD-Modul 42 erzeugt, das in einem der Prozessoren 40 ausgeführt und vom Systemprogrammierer definiert wird.
- Die IOCDS-Datensätze 70 enthalten Einzelheiten der Konfiguration und Topologie der mit einem einzigen der Prozessoren 40 verbundenen Hardware. Beispielsweise würde der IOCDS-Datensatz 70a, wie er in Fig. 2 gezeigt wird, Einzelheiten der Verbindungen zwischen dem ersten Prozessor 40a, den Steuereinheiten 45a und 45b und den Einheiten 50a und 50b enthalten. Der IOCDS-Datensatz 70a würde nicht die Einzelheiten der Verbindungen der Steuereinheiten 45a und 45b zum zweiten Prozessor 40b enthalten. Die Verbindungen zum zweiten Prozessor 40b sind in einem der IOCDS-Datensätze 70d, 70e zu finden, auf die der zweite Prozessor 40b zugreifen kann. Die IOCDS-Datensätze 70 enthalten außerdem Einzelheiten von allen Schaltern usw., mit denen der Prozessor 40 verbunden ist. Die Struktur der Daten in den IOCDS-Datensätzen 70 wird später erläutert.
- Die IOCDS-Datensätze 70 werden zum Zeitpunkt der Systeminitialisierung und Grundeinstellung (power-on-reset time) verwendet, um die Kanalsteuerblöcke zu erzeugen, mit Hilfe derer der Prozessor 40 auf die Steuereinheiten 45 und folglich auf die Einheiten 50 zugreifen kann.
- Jedem Prozessor 40 kann mehr als ein IOCDS-Datensatz 70 zugeordnet werden. Dem ersten Prozessor 40a in Fig. 2A werden beispielsweise drei IOCDS-Datensätze 70a bis c und dem zweiten Prozessor zwei IOCDS-Datensätze 70d, 70e zugeordnet. Es können weitere IOCDS-Datensätze 70 vorhanden sein. Die Vielzahl von IOCDS-Datensätzen 70 ermöglicht es dem Systemprogrammierer, die Konfiguration und die Topologie des Datenverarbeitungssystems 5 gemäß den Bedürfnissen der Benutzer hinsichtlich der Datenverarbeitung zu ändern.
- Die Einheiten, Steuereinheiten, Schalter, ESCON-Verwalter usw. können insgesamt als Definitionseinheiten bezeichnet werden. Jedesmal, wenn eine neue dieser Definitionseinheiten zum Datenverarbeitungssystem 5 hinzugefügt werden muss, muss die Ein-/Ausgabedatendatei (IODF) 60 ergänzt werden. Der Systemprogrammierer führt dies aus, indem er die HCD-Module 42 in einem der Prozessoren 40 startet und die IODF 60 aus der Einheit 50 in den Speicher 10 des Prozessors kopiert, wie durch den IODF-Block 65 in Fig. 2B gezeigt wird. Der Systemprogrammierer führt die nötigen Änderungen am IODF 65 im Speicher 10 aus, um die Konfiguration und die Topologie der zum Datenverarbeitungssystem 5 neu hinzugefügten Definitionseinheiten zu definieren. Der IODF-Block 65 im Speicher wird sodann zurück in den in der Einheit 50b gespeicherten IODF-Datensatz 60 geschrieben, wo er den früheren IODF-Datensatz 60 ersetzt.
- Die neu hinzugefügte Definitionseinheit wird nun im IODF- Datensatz 60 definiert. Solange sie nicht für mindestens einen der Prozessoren 40 definiert ist, kann jedoch keiner der Prozessoren 40 darauf zugreifen. Die Definition der neu hinzugefügten Objekte für die Prozessoren 40 wird durch die Erzeugung eines neuen IOCDS-Datensatzes 70 oder die Ergänzung eines vorhandenen IOCDS-Datensatzes 70 ausgeführt. Dies wird vom Systemprogrammierer ausgeführt, der die HCD-Module 42 im Prozessor 40 startet, für den das neu hinzugefügte Objekt definiert werden muss.
- Der aktualisierte IODF-Datensatz 60 wird in den Speicher 10 kopiert, wie durch den IODF-Block 65 in Fig. 2B dargestellt wird. Ein neuer IOCDS-Datensatz (durch Block 75 dargestellt) wird sodann im Speicher 10 erzeugt, indem die benötigten Daten aus dem IODF-Block 65 entnommen werden. Der neue IOCDS- Datensatz 70 kann anschließend in die DASD 68 geschrieben werden.
- Wenn der IODF-Datensatz 60 aktualisiert und der neue oder ergänzte IOCDS-Datensatz 70 erzeugt wurde, kann der Systemprogrammierer die HCD-Module 42 aus dem Speicher 10 entfernen, da sie nicht mehr benötigt werden. Das Datenverarbeitungssystem 5 kann auf das neu hinzugefügte Objekt zugreifen, wenn der IOCDS 70, in dem es beschrieben wird, als Nächstes von einem der Prozessoren 40 verwendet wird, um die Konfiguration und Topologie der Hardware zu definieren.
- Fig. 3 zeigt die Struktur des IODF 60. Die Ein-/ Ausgabedefinitionsdatei 60 umfasst einen laDF-Vorsatz (IODF header record) (IHR) 100 und eine Liste von Elementen 200 bis 270. Der IHR 100 enthält den Namen 110 des IODF 60, die Größe des IODF 120, das Erstellungsdatum 130 des IODF 60, die Anzahl von Elementen 140 im IODF 60, einen Zeiger 150 auf die Liste von Prozessoren P im Datenverarbeitungssystem 5, einen Zeiger 160 auf die Liste von Steuereinheiten CU1, CU2 im Datenverarbeitungssystem 5 und einen Zeiger 170 auf die Liste von Einheiten D1, D2, D3 im Datenverarbeitungssystem 5. Der IODF 60 enthält außerdem Zeiger auf andere Objekte, die im Datenverarbeitungssystem 5 enthalten sein können.
- Die Liste von Elementen 200 bis 270 im IODF 20 zeigt alle möglichen Verbindungen zwischen den Prozessoren P, den Steuereinheiten CU1, CU2 und den Einheiten D1, D2 und D3 im Datenverarbeitungssystem 5. In Fig. 3 wird ein Beispiel-IODF 60 für das in Fig. 1 gezeigte Datenverarbeitungssystem 5 dargestellt.
- Die Beschreibungen 250 bis 270 der möglichen Verbindungen zwischen den Prozessoren 40 und den Einheiten 50 sind als Geräteanschlussdatensätze (device attachment records) (DAR) bekannt. Die DARs enthalten die Einheitenadresse, den Zeitlimitwert und Einzelheiten des bevorzugten Pfades zwischen den Einheiten D und dem Prozessor P. Die Beschreibungen zwischen den Prozessoren P und den Steuereinheiten CU sind als Steuereinheit-Anschlussdatensätze (control unit attachment records) (CAR) bekannt.
- Der IODF 60 umfasst eine Liste von Prozessoren P, auf die der Zeiger P 150 zeigt. Die Liste von Prozessoren P wird als AVL- Baum verwaltet. Jedes Element im AVL-Baum hat einen Datensatz, der den Namen und den Typ des Prozessors P sowie andere Informationen bezüglich des Prozessors P anzeigt. Der IODF 60 umfasst eine Liste von Steuereinheiten CU1, CU2, auf die der Zeiger 160 zeigt. Die Liste von Steuereinheiten CU2, CU2 wird als AVL-Baum verwaltet. Jedes Element im AVL-Baum enthält Informationen bezüglich der Steuereinheiten CU1. CU2. Schließlich umfasst der IODF 60 eine Liste von Einheiten D1, D2, D3, auf der Zeiger D 170 zeigt. Die Liste von Einheiten D1, D2, D3 wird ebenfalls als AVL-Baum verwaltet. Jedes Element im Einheiten-AVL-Baum hat einen Datensatz, der den Typ von Einheit (DASD, Bandeinheit, Datenstation, usw.) anzeigt, und der anzeigt, an welche Steuereinheit sie angeschlossen ist. Die Elemente in den AVL-Bäumen können bei Bedarf weitere Informationen enthalten.
- Um die Konfiguration des Datenverarbeitungssystems anzuzeigen, können die im IODF 60 vorhandenen Daten zum Erstellen eines Konfigurationsdiagramms zur Anzeige auf einer Datenstation oder zum Drucken auf einem Drucker verwendet werden. Das Verfahren, mit Hilfe dessen dies ausgeführt wird, wird mit Bezugnahme auf die in Fig. 4 gezeigte Speicherbereichstruktur und das Flussdiagramm von Fig. 5 erläutert. Fig. 4 ist im Detail sehr ähnlich wie Fig. 2, und in beiden Figuren werden dieselben Bezugszeichen zur Darstellung derselben Elemente verwendet. Fig. 4 enthält außerdem Verarbeitungstabellen (processing tables) 80 und einen Konfigurationsanzeige- Speicherbereich 90, dessen Funktion nachstehend ausführlich erläutert wird. Mit dem Konfigurationsanzeige-Speicherbereich 90 ist eine Anzeigeeinheit 95 verbunden, die ein Drucker oder eine Datenstation sein kann. Alternativ können erzeugte Daten zur späteren Verwendung in einen Datensatz geschrieben werden. Insgesamt können die Datensätze, Drucker und Datenstationen als Ausgabeeinheiten bezeichnet werden.
- Das Flussdiagramm von Fig. 5 stellt die Schritte dar, die notwendig sind, um die Konfiguration des Datenverarbeitungssystems 5 anzuzeigen. Im Schritt 300 wählt der Systemprogrammierer oder ein anderer Benutzer die Informationen aus, die er oder sie anzeigen möchte. Der Systembediener kann beispielsweise entscheiden, nur Informationen über einen Prozessor P oder nur über Einheiten D eines bestimmten Typs und die Prozessoren P anzuzeigen, mit denen sie verbunden sind. Insgesamt sind die Prozessoren P, die Einheiten D und die Steuereinheiten CU, die angezeigt werden müssen, als Anzeigeobjekte bekannt. Die Möglichkeiten der Auswahl von Anzeigeobjekten werden nur durch die Informationen begrenzt, die in den Elementen der AVL-Bäume der Prozessoren P, der Steuereinheiten CU und der Einheiten D gespeichert sind.
- Die Erfindung stellt gemäß ihrer gegenwärtigen Realisierung vier Typen von Konfigurationsanzeigen oder Meldungen bereit, die erzeugt werden müssen und vom Systemprogrammierer ausgewählt werden können. Andere Meldungsformate sind möglich.
- CU Dies erzeugt eine Meldung, die alle mit den Steuereinheiten CU verbundenen Einheiten und die Prozessoren P zeigt, die die Steuereinheiten CU adressieren können.
- CHPID Dies erzeugt eine Meldung, die Kanäle und alle Steuereinheiten CU und Einheiten D zeigt, die mit den Kanälen verbunden sind.
- SWITCH Dies erzeugt eine Meldung, die die ausgewählten Schalter 5 und die Steuereinheiten CU, Einheiten D und Prozessoren P zeigt, die mit den Schaltern verbunden sind.
- LCU Dies erzeugt eine Meldung, die im Wesentlichen eine Kombination aus den CU- und CHIPD-Meldungen ist.
- Im Schritt 310 wird eine Voranalyse der Daten zur Anzeige ausgeführt, und die Verarbeitungstabellen 80 im Speicher 10 werden erzeugt. Die Voranalyse der Daten beinhaltet das Auswählen jener Anzeigeobjekte aus den AVL-Bäumen des IODF 60 der Prozessoren P, der Steuereinheiten CU und der Einheiten D, die mit den im Schritt 310 vom Systembediener ausgewählten Suchkriterien übereinstimmen. In die Verarbeitungstabellen 80 werden Informationen über die ausgewählten Anzeigeobjekte sowie alle anderen Informationen platziert, die in der Konfigurationsanzeige angezeigt werden müssen. Die Modellnummern der Einheiten D können aus den Elementen im Einheit-AVL-Baum erhalten und in den Verarbeitungstabellen 80 gespeichert werden.
- Die Topologie der anzuzeigenden Konfiguration wird im Schritt 320 festgestellt. Die Topologieinformationen werden aus einer Analyse der Elemente 200 bis 270 im IODF 60 erhalten. Jeder der DARs und CARs 200 bis 270 wird überprüft, um festzustellen, ob er eine Verbindung zwischen den ausgewählten Anzeigeobjekten darstellt, die in den Verarbeitungstabellen 80 gespeichert sind, und falls dies der Fall ist, werden die Topologieinformationen in eine weitere Verarbeitungstabelle 80 kopiert.
- Im Schritt 330 wird mit der Zeichnung des Konfigurationsdiagramms begonnen. Alle Anzeigeobjekte in den Verarbeitungstabellen 80 werden in ihren jeweiligen Typen zusammen gruppiert, beispielsweise eine Gruppe von Prozessoranzeigeobjekten, die alle anzuzeigenden Prozessoren P darstellen, eine Gruppe von Steuereinheit-Anzeigeobjekten, die alle anzuzeigenden Steuereinheiten CU darstellen, und eine Gruppe von Einheitenanzeigeobjekten, die alle anzuzeigenden Einheiten D darstellen.
- Im Speicher 10 wird der Konfigurationsanzeige-Speicherbereich 90 erzeugt, und es werden grafische Symbole, die jedes der Anzeigeobjekte darstellen, im Konfigurationsanzeige- Speicherbereich 90 platziert. Der Konfigurationsanzeige- Speicherbereich 90 wird sodann logisch in Blöcke 610, 620, 630 unterteilt, wie in Fig. 6A gezeigt wird. Jeder der Blöcke enthält später alle Elemente einer Gruppe der Anzeigeobjekte.
- In der bevorzugten Ausführungsform der Erfindung enthält der oberste Block 610 die Elemente der Gruppe der Prozessoranzeigeobjekte. Grafische Symbole, die jedes der Prozessoranzeigeobjekte darstellen, werden sodann im obersten Block 610 platziert. In der erklärenden Ausführungsform der Erfindung, d.h. in dem in Fig. 1 gezeigten Datenverarbeitungssystem 5, muss nur ein Prozessor 40 P angezeigt werden, und folglich wird ein einziges grafisches Symbol, das den Prozessor darstellt, im obersten Block 610 platziert, wie in Fig. 6B gezeigt wird. Das grafische Symbol wird in die Mitte des obersten Blocks 610 platziert.
- In der erklärenden Ausführungsform der Erfindung enthält der mittlere Block 620 die Elemente der Gruppe der Steuereinheit- Anzeigeobjekte 50. Grafische Symbole, die jedes der Steuereinheit-Anzeigeobjekte darstellen, werden sodann in den mittleren Block 620 platziert. Im Datenverarbeitungssystem 5 von Fig. 1 müssen zwei Steuereinheiten angezeigt werden, und folglich werden zwei die Steuereinheiten 45 CU1, CU2 darstellende grafische Symbole in den mittleren Block 620 platziert, wie in Fig. 6C gezeigt wird. Die die Steuereinheiten darstellenden grafischen Symbole werden auf derselben Ebene im mittleren Block 620 platziert und gleichmäßig auf der horizontalen Ebene verteilt.
- Die Menge an vertikalem Speicherbereich, die zwischen den die Steuereinheiten darstellenden grafischen Symbolen und dem grafischen Symbol des Prozessors bleibt, hängt von der maximal möglichen Anzahl von Verbindungen zwischen den Steuereinheiten CU und dem Prozessor P im Datenverarbeitungssystem 5 ab. In der erklärenden Ausführungsform der Erfindung sind nur zwei Verbindungen möglich, d.h. eine von jeder Steuereinheit CU zum Prozessor P. Folglich bleibt ausreichend Speicherbereich übrig, um die beiden Verbindungen zu zeigen. Dieser Abstand wird als 2X bezeichnet und wird in Fig. 6C gezeigt.
- In der erklärenden Ausführungsform der Erfindung enthält der unterste Block 630 die Elemente der Gruppe der Einheitenanzeigeobjekte. Grafische Symbole, die jedes der Einheitenanzeigeobjekte darstellen, werden sodann im untersten Block 630 platziert. In dem in Fig. 1 gezeigten Datenverarbeitungssystem 5 müssen drei Einheiten angezeigt werden, und folglich werden drei die Einheiten D darstellende grafische Symbole im untersten Block 630 platziert, wie in Fig. 6D gezeigt. Es wird ein Versuch unternommen, die die Einheiten D darstellenden grafischen Symbole direkt unterhalb der Steuereinheiten 45 zu platzieren, mit denen die Einheiten D verbunden sind.
- Die Menge an vertikalem Speicherbereich, die zwischen den die Steuereinheiten CU darstellenden grafischen Symbolen und den grafischen Symbolen der Einheiten bleibt, hängt von der maximal möglichen Anzahl von Verbindungen zwischen den Steuereinheiten CU und den Einheiten D im Datenverarbeitungssystem 5 ab. In der erklärenden Ausführungsform der Erfindung sind maximal sechs Verbindungen möglich, d.h. eine von jeder Steuereinheit CU zu jeder der drei Einheiten D. Folglich bleibt ein ausreichender Speicherbereich zwischen den Gruppen von grafischen Symbolen übrig, um die sechs Verbindungen zu zeigen. Dieser Abstand wird als 6X bezeichnet und in Fig. 6C gezeigt.
- Es ist offensichtlich, dass der vertikale Speicherbereich, der zwischen der Gruppe von die Steuereinheiten 45 darstellenden grafischen Symbolen und der Gruppe von die Einheiten 50 darstellenden grafischen Symbolen verbleibt, dreimal größer als der vertikale Speicherbereich zwischen der Gruppe von die Steuereinheiten CU darstellenden grafischen Symbolen und dem den Prozessor P darstellenden grafischen Symbol ist, da zwischen den Steuereinheiten 45 und den Einheiten 50 dreimal mehr Verbindungen möglich sind als zwischen dem Prozessor 40 und den Steuereinheiten 45.
- Es soll hervorgehoben werden, dass in diesem Stadium keine Konfigurationsanzeige in einer Datenstation oder auf einem Drucker erzeugt wurde. Stattdessen wird die Konfigurationsanzeige im Konfigurationsanzeige-Speicherbereich 90 logisch erzeugt.
- Im Schritt 340 werden die Verbindungen zwischen den grafischen Symbolen im Konfigurationsanzeige-Speicherbereich 90 platziert. Die Einzelheiten der Verbindungen wurden während der Voranalyse des IODF 65 im Schritt 310 aus den Elementen des IODF 65 erhalten. Wie in Fig. 7 gezeigt wird, werden zum Anzeigen der Verbindungen Verbindungssymbole in Form von Verbindungslinien verwendet, die vom Ende eines grafischen Symbols zum Anfang eines anderen grafischen Symbols in einem unteren der Blöcke 610 bis 630 verlaufen. Die Verbindungssymbole in Form von Verbindungslinien werden in der bevorzugten Ausführungsform der Erfindung verwendet, da es sich gezeigt hat, dass sie das am besten lesbare Mittel zur Veranschaulichung der Verbindungen zwischen den grafischen Anzeigesymbolen sind. Genauso gut könnten jedoch andere Verbindungssymbole verwendet werden.
- Wenn die Verbindungslinien als Verbindungssymbole platziert wurden, hat die Anzeigekonfiguration des Datenverarbeitungssystems 5 von Fig. 1 die in Fig. 8 gezeigte Form. In diesem Stadium wird ein Linienkreuzungsalgorithmus verwendet, um die Lesbarkeit der sich kreuzenden Verbindungslinien zu verbessern. Im einfachen Beispiel des Datenverarbeitungssystems 5 von Fig. 1 gibt es keine Linienkreuzungen, und folglich muss der Algorithmus nicht verwendet werden. Der Algorithmus wird später ausführlicher erläutert.
- Die Konfigurationsanzeige kann nun komprimiert werden, wie im Schritt 350 gezeigt wird. Es soll daran erinnert werden, dass zwischen den grafischen Symbolen, die die Einheitenanzeigeobjekte und die Steuereinheit-Anzeigeobjekte darstellen, genügend Platz gelassen wurde, um sechs Verbindungen anzuzeigen. Es muss jedoch nur Platz für eine Verbindung verwendet werden (in diesem Beispiel gibt es keine sich überschneidenden Verbindungen). Folglich können die grafischen Symbole, die die beiden Typen von Anzeigeobjekten darstellen, ohne Verlust der Klarheit im Konfigurationsdiagramm näher zusammengerückt werden.
- Ähnlich wurde zwischen dem grafischen Symbol, das das Prozessoranzeigeobjekt darstellt, und den grafischen Symbolen, die die Steuereinheit-Anzeigeobjekte darstellen, Platz für zwei Verbindungen gelassen. Die grafischen Symbole können ebenfalls näher zusammengerückt werden, um das Konfigurationsdiagramm optimal zu nutzen. Dies wird in Fig. 8 gezeigt, in der der vertikale Platz, der zwischen dem den Prozessor P darstellenden grafischen Symbol und der Gruppe von die Steuereinheiten CU darstellenden grafischen Symbolen gelassen wurde, nun gleich demjenigen zwischen der Gruppe von die Steuereinheiten CU darstellenden grafischen Symbolen und der Gruppe von die Einheiten D darstellenden grafischen Symbolen ist.
- Der Schritt 360 zeigt ein zusätzliches Merkmal zur Verbesserung der Klarheit der Konfigurationsdiagramme. Jede Verbindung kann mit einem Namen oder einer Nummer markiert werden, und die Endpunkte der Verbindungen können auf den grafischen Symbolen mit dem Namen oder der Nummer markiert werden. Dies ermöglicht die schnelle Erkennung der Verbindungen zwischen den Anzeigeobjekten.
- Im Schritt 370 wird das im Konfigurationsanzeige- Speicherbereich 90 erzeugte Konfigurationsdiagramm in Teile unterteilt, wobei die Größe jedes Teils so ist, dass er auf der verfügbaren Anzeigeeinheit 95 angezeigt oder auf dem verfügbaren Drucker ausgedruckt werden kann. Sogenannte Off- Page-Verbinder (off-page connectors) werden an den Rändern der Teile bereitgestellt, um die Verbindungen zwischen den verschiedenen Teilen anzuzeigen. Dies wird später ausführlicher erläutert.
- Im Schritt 380 wird die erzeugte Konfigurationsanzeige schließlich aus dem Konfigurationsanzeige-Speicherbereich 90 entnommen und auf der Anzeigeeinheit 95 angezeigt. Nach dem Stand der Technik sind viele Verfahren zur Erzeugung einer Anzeige oder eines Ausdrucks bekannt, beispielsweise können die Bildelemente aus dem Konfigurationsanzeige-Speicherbereich 90 direkt auf den Bildschirm der Datenstation oder den Drucker abgebildet werden. Alternativ können Vektoren erzeugt werden, die die Linien im Konfigurationsanzeige-Speicherbereich 90 darstellen, und diese zur Erzeugung der Anzeige oder des Ausdrucks verwendet werden.
- Nun wird der oben erwähnte Linienkreuzungsalgorithmus beschrieben. Als Erstes wird die in Fig. 7 gezeigte Struktur der Verbindungslinie beschrieben, um ein besseres Verständnis der Erfindung zu ermöglichen. Fig. 9 zeigt eine Verbindungslinie, die ähnlich wie diejenige von Fig. 7 ist. Die Verbindungslinie 900 hat einen ersten Endpunkt 910 und einen zweiten Endpunkt 950. In der bevorzugten Ausführungsform der Erfindung wird die Zeichnung der Verbindungslinie 900 in drei Schritte unterteilt. Im ersten Schritt wird eine erste vertikale Linie 920 gezeichnet. In einem zweiten Schritt wird eine horizontale Linie 930 gezeichnet, und in einem dritten Schritt wird eine zweite vertikale Linie 940 gezeichnet.
- Fig. 10 ist ein Flussdiagramm für den Linienkreuzungsalgorithmus gemäß der vorliegenden Erfindung. In einem ersten Schritt 1000 wird die im Konfigurationsanzeige-Speicherbereich 90 erzeugte Konfigurationsanzeige überprüft, und im Schritt 1010 werden sogenannte Stufentabellen 1100 erstellt. Ein typisches Beispiel einer Stufentabelle 1100 wird in Fig. 11 gezeigt. Die Stufentabellen 1100 sind ein Teil der an früherer Stelle erwähnten Verarbeitungstabellen 80. Die Stufentabelle 1100 enthält unter anderen Daten den Namen des Anzeigeobjektes 1110, von dem die Verbindungslinie 900 ausgeht, die am weitesten links gelegene X-Koordinate 1120 der horizontalen Linie 930 und die am weitesten rechts gelegene X-Koordinate 1130 der horizontalen Linie 930. Die Stufentabelle 1100 enthält außerdem die Zeile 1140, in der die horizontale Linie 930 auftritt. Die Zeile ist im Wesentlichen die Y-Koordinate der horizontalen Linie 930.
- Ein Vergleich der Stufentabelle 1100 mit der Konfigurationsanzeige von Fig. 12 ist hilfreich für das Verständnis dieser Konzepte. Aus Fig. 12 ist zu erkennen, dass die von der Steuereinheit CU1 ausgehende Verbindungslinie 1210 als ihre am weitesten links gelegene X-Koordinate den Buchstaben A und als ihre am weitesten rechts gelegene X- Koordinate den Buchstaben B aufweist. Die von der Steuereinheit CU2 ausgehende Verbindungslinie 1220 weist als ihre am weitesten links gelegene X-Koordinate den Buchstaben E und als ihre am weitesten rechts gelegene X-Koordinate den Buchstaben F auf. Die von der Steuereinheit CU2 ausgehende Verbindungslinie 1230 weist als ihre am weitesten links gelegene X-Koordinate den Buchstaben C und als ihre am weitesten rechts gelegene X-Koordinate den Buchstaben D auf. Diese Daten sind in den Spalten 1120 und 1230 der Stufentabelle 1100 zu finden.
- Die horizontale Linie 930 von jeder Verbindungslinie 1210, 1220, 1230 kann in eine der Zeilen 1, 2 oder 3 platziert werden, wie in Fig. 12 gezeigt wird. Es wird ein Versuch unternommen, im Schritt 1020 das Auffüllen der Zeilen zu optimieren, ohne dass sich irgendwelche horizontalen Linien 930 überschneiden. Wie aus Fig. 12 sofort klar wird, wurde dies mit den Verbindungslinien 1210 und 1230 erfolgreich erreicht, die beide ohne Überschneidung in die Zeile 1 platziert wurden. Es wäre nicht möglich gewesen, die horizontale Linie 930 der Verbindungslinie 1220 in Zeile 1 zu platzieren, da dies eine Überschneidung mit der horizontalen Linie 930 der Verbindungslinie 1210 ergeben hätte. Daher wurde sie in die Zeile 2 platziert. Die Nummer der Zeile, in der die horizontale Linie 930 der Verbindungslinie platziert wird, erscheint in der Zeilenspalte 1140 der Stufentabelle 1100.
- Der Schritt 1020 des Optimierens der Auffüllung der Zeilen wird ausgeführt, indem jeder Eintrag der Stufentabelle 1100 der Zeile nach durchgegangen wird und die am weitesten links gelegene X-Koordinate 1120 und die am weitesten rechts gelegene X-Koordinate 1130 überprüft werden, um festzustellen, ob ein Konflikt aufgrund einer Überschneidung mit einer anderen horizontalen Linie 930 vorliegt. Falls die horizontale Linie 930 in keine der bereits verwendeten Zeilen platziert werden kann, wird sie in die nächste verfügbare Zeile platziert. Die Zeilen werden von oben nach unten aufgefüllt, wie in Fig. 12 gezeigt wird.
- Nach der Zuweisung der horizontalen Linien 930 zu Zeilen im Konfigurationsdiagramm wird eine Prüfung ausgeführt, um festzustellen, ob es irgendwelche Konflikte mit den vertikalen Linien 920, 940 gibt. Fig. 13 stellt einen solchen Konflikt dar. Die Konfigurationsanzeige 1310 weist bei 1315 sich überschneidende vertikale Linien auf. Dieser Konflikt wird gelöst, indem die Zeilennummern für die horizontalen Linien 930 in der Stufentabelle 1100 umgestellt werden. Demzufolge werden die horizontalen Linien in Zeile 1 nach Zeile 2 versetzt, die horizontalen Linien 930 in Zeile 2 werden nach Zeile 3 versetzt usw. Allgemein gesprochen werden horizontalen Linien 930 in der Zeile (n-1) in die Zeile n versetzt, während die horizontalen Linien 930 in der Zeile n in die Zeile 1 versetzt werden, wobei n die maximale Anzahl von Zeilen ist. Im Diagramm von Fig. 13 gibt es nur zwei Linien (d.h., n = 2). Durch das Austauschen der horizontalen Linien 930 zwischen den beiden Zeilen wird der vertikale Konflikt bei 1315 gelöst, wie mit Bezugnahme auf die Konfigurationsanzeige 1320 zu erkennen ist.
- Nach der Lösung der Konflikte zwischen den vertikalen Linien 920, 940 und den horizontalen Linien 930 können die Linien zwischen den Anzeigeobjekten erstellt werden (Schritt 1040). Das hier beschriebene Verfahren zur Linienzeichnung beruht auf einem Zeichengrafikverfahren (character graphic method). Es ist zumindest zu erkennen, dass von Fachleuten andere Verfahren realisiert werden können.
- Die Zeichnung der Linien wird mit Bezugnahme auf die Stufentabelle 1100 ausgeführt, in der die am weitesten links gelegene X-Koordinate 1120 und die am weitesten rechts gelegene X-Koordinate 1130 sowie die Zeile 1140 gespeichert werden. Das erste Element in der Stufentabelle 1100 wird als Grundlage für die erste Verbindungslinie 1210 verwendet, die in der Konfigurationsanzeige erzeugt werden muss. Da anfangs keine anderen Verbindungslinien in der Konfigurationsanzeige vorhanden sind, gibt es natürlich keine möglichen Linienüberkreuzungen, die aufgelöst werden müssen. Sobald jedoch mehrere Verbindungslinien in der Konfigurationsanzeige dargestellt werden, ist die Überkreuzung von einigen der vertikalen Linien 920, 940 und einigen der horizontalen Linien 930 unvermeidlich. Dies muss festgestellt werden, um die Lesbarkeit der Konfigurationsanzeige zu verbessern.
- Der grundlegende Linienzeichnungsalgorithmus verwendet das Zeichen '-' für die horizontale Linie 930 der Verbindungslinie und das Zeichen ' ' für die vertikalen Linien 920, 940 der Verbindungslinie. Bei der Erstellung der Konfigurationsanzeige wird die horizontale Linie 930 der Verbindungslinie zuerst erzeugt. Anschließend werden die vertikalen Linien 920, 940 erzeugt. Dies wird ausgeführt, indem in jeder Position in der Konfigurationsanzeige, die von einer der vertikalen Linien 920, 940 belegt wird, das Zeichen ' ' für vertikale Linien eingefügt wird. Das Zeichen ' ' für vertikale Linien ersetzt jedes Zeichen '-' für horizontale Linien, das möglicherweise zuvor die Position belegt hatte. Dies wird in Fig. 14 klar dargestellt, in der die vorhandenen Zeichen '-' für horizontale Linien bei 8D und 8F durch die Zeichen ' ' für vertikale Linien ersetzt werden.
- Die Endpunkte der vertikalen Linien 920, 940 mussten besonders betrachtet werden, da es möglich ist, dass die vertikalen Linien 920, 940 mit anderen horizontalen Linien verbunden sein können. Dies wird ausgeführt, indem die Nachbarn des zu zeichnenden Zeichens überprüft werden. In Fig. 15 schneidet beispielsweise der Untere Teil (bottom) der vertikalen Linie 1510 die horizontale Linie 1520 bei dem durch die Koordinaten 9E gegebenen Punkt. Die Nachbarn des Punktes 9E werden überprüft, d.h. die Zeichen bei den Punkten 9D, 9F, 8E und 10E, und das als Verbindungszeichen bezeichnete geeignete Zeichen ausgewählt. Fig. 16 stellt die Mustertabelle (pattern table) 1600 für das Verbindungszeichen dar. Die Mustertabelle 1600 ist ein Teil des HCD-Moduls 42.
- Schließlich sei darauf hingewiesen, dass die Nachbarn der zu überprüfenden Koordinate nicht unbedingt direkt angrenzende Koordinaten sind, wie in Fig. 17 dargestellt wird. Der linke Nachbar der Koordinate 9F ist aufgrund der angrenzenden Linien 6E. Dies muss bei der Erzeugung des Verbindungszeichens berücksichtigt werden.
- Auf ähnliche Weise, wie die Verbindungszeichen für die vertikalen Linien 920, 940 ermittelt werden, ist es auch notwendig, Verbindungszeichen für horizontale Linien 930 zu ermitteln. Dies wird auf dieselbe Weise ausgeführt, indem die benachbarten Zeichen und das Verbindungszeichen aus einer Tabelle ermittelt werden. Dies wird in Fig. 18 dargestellt.
- Nachdem die Zeichen für jede von einer Linie belegten Koordinate ermittelt wurden, wird die Ausführung des Linienkreuzungsalgorithmus im Schritt 1050 beendet.
- Fig. 19, die aus den Fig. 19A und 19B besteht, stellt die weiteren Aspekte der Erfindung dar, die von den Schritten 360 des Flussdiagramms von Fig. 5 erzeugt werden. Fig. 19 zeigt ein Beispiel einer erzeugten Konfigurationsanzeige, die zu groß zum Ausdrucken auf einem einzigen Blatt Papier ist. Die Figur stellt einen Prozessor 1900 dar, der mit fünf Steuereinheiten 1910a bis f verbunden ist, die ihrerseits mit vierunddreißig Einheiten 1920a bis ff verbunden sind (nur zweiunddreißig werden in den Fig. 19A und 19B gezeigt). In jeden dieser Blöcke, die den Prozessor 1900, die Steuereinheiten 1910a bis f oder die Einheiten 1920a bis ff darstellen, werden Informationen über den Modelltyp und seine Adresse platziert. Die Steuereinheit 1910a ist eine 3274- Einheit und hat die Adresse 00C3, die Steuereinheit 1910d ist ebenfalls eine 3274-Einheit, hat jedoch die Adresse 00C9. Ähnlich ist die Einheit 1920a eine Datenstation vom 3270-Typ mit der Adresse 0A80. Die Zahl nach dem Komma zeigt die Anzahl von Datenstationen mit dieser Adresse, d.h. 007. Die Einheit 920t ist eine 3745-Bandeinheit bei der Adresse 0ACF, wobei nur eine Bandeinheit vorhanden ist. Der Block bei der Einheit 920y stellt zweiunddreißig 3380-DASDs bei der Adresse 0B0B dar. Die im Block gespeicherten Informationen werden aus den in den Verarbeitungstabellen 50 gespeicherten Informationen erhalten, die im Schritt 310 aus dem IODF 65 kopiert wurden.
- Fig. 19B stellt außerdem die Verwendung von Off-Page- Verbindern 1930 dar, wie sie oben in Verbindung mit dem Schritt 370 des Flussdiagramms von Fig. 5 erwähnt wurden, um das Verständnis von Konfigurationsanzeigen zu erleichtern, die sich über mehrere Seiten erstrecken. Die Off-Page-Verbinder 1930 werden an den Anfang der Linien angehängt, die die Steuereinheiten 1910a bis f mit jenen Einheiten 1920q bis ff auf einer neuen Seite verbinden. Die Off-Page-Verbinder 1930 liefern die Adressen der Steuereinheiten 1910a bis f, mit denen die Einheiten 1920q bis ff auf der Seite verbunden sind.
- In Fig. 19A werden außerdem im Schritt 360 des Flussdiagramms von Fig. 5 erzeugte Texte dargestellt, die den Linien zugeordnet werden, die die Steuereinheiten 1910a bis f mit dem Prozessor 1900 verbinden. Diese Texte zeigen die Kanalnummern des Prozessors 1900, mit denen die Steuereinheiten 1910a bis f verbunden sind. Die Steuereinheit 1910c ist beispielsweise mit der Kanalnummer 70 im Prozessor 900 verbunden, und die Steuereinheit 910a ist mit der Kanalnummer B3 im Prozessor 900 verbunden.
- Fig. 20 zeigt ein anderes Beispiel einer Konfigurationsanzeige. Zusätzlich zu zwei Prozessoren 2010a, 2010b, acht Steuereinheiten 1020a bis h und sechs Einheiten 2040a bis f zeigt die Anzeige außerdem zwei Schalter 2020a und 2020b. Die hier dargestellten Schalter sind ESCON- Steuerdirektoren (ESCON control directors), wie durch ihren Modultyp 9032 gezeigt wird. Zur Erzeugung der Konfigurationsanzeige von Fig. 20 ist es notwendig, den zum Erzeugen der Konfigurationsanzeige verwendeten Prozess zu verändern. Der Konfigurationsanzeige-Speicherbereich 90 der Fig. 6A bis 6D wird logisch in vier Blöcke unterteilt (anstelle der in Verbindung mit dem Datenverarbeitungssystem 5 beschriebenen drei Blöcke). Die die Schalter 2020a, 2020b darstellenden grafischen Symbole werden sodann in einen Teil zwischen dem obersten Teil 610 und dem mittleren Teil 620 platziert. Außer dieser leichten Änderung bleibt der Prozess zum Zeichnen der Verbindungen zwischen den grafischen Symbolen im Diagramm ansonsten unverändert.
- Fig. 20 zeigt außerdem eine weitere Ausführungsform der Erfindung. Es sei darauf hingewiesen, dass der Prozessor 2010a mit A und der Prozessor 2010b mit B bezeichnet wird. Bezeichnungen, die an den Linien angebracht sind, die die Steuereinheiten 2030a bis h mit den Schaltern 2020a bis b und/oder den Prozessoren 2010a bis b verbinden, werden daher nicht nur mit der Kanalnummer des Prozessors 2010a bis b, sondern auch mit dem den Prozessor kennzeichnenden Buchstaben gekennzeichnet. Daher kann der Betrachter des Konfigurationsdiagramms von Fig. 10 beispielsweise sofort erkennen, dass die 3480-Steuereinheit 2030c mit der Kanalnummer AC des Prozessors B und außerdem mit der Kanalnummer AC des Prozessors A verbunden ist.
- In allen dargestellten Konfigurationsdiagrammen werden einfache rechteckige Blöcke als grafische Symbole verwendet. Für Fachleute ist es jedoch klar, dass verschiedene grafische Symbole für unterschiedliche Typen von Anzeigeobjekten verwendet werden könnten.
Claims (12)
1. Vorrichtung zur Erzeugung einer Anzeige der
Hardwarekonfiguration eines Datenverarbeitungssystems,
wobei das System (15) einen zentralen Prozessor (40, P)
mit einem zugeordneten Speicher und einer oder mehreren
mit dem Prozessor verbundenen peripheren Einheiten (50, D)
umfasst, wobei die Vorrichtung Folgendes umfasst:
Mittel zum Erzeugen einer Konfigurationstabelle (60, 70)
im Speicher des zentralen Prozessors, wobei die
Konfigurationstabelle Konfigurationsdaten enthält, die
eine aktuelle Hardwarekonfiguration des zentralen
Prozessors beschreiben, wobei die Konfigurationsdaten
logische Verbindungen zwischen der einen oder den mehreren
peripheren Einheiten (50, D) und dem zentralen Prozessor
(40, P) definieren;
Mittel zum Erzeugen eines Konfigurationsanzeige-
Speicherbereichs (90) im Speicher des zentralen
Prozessors, um eine Anzeige der logischen Verbindungen
zwischen der einen oder den mehreren peripheren Einheiten
(50, D) und dem zentralen Prozessor (40, P) zu Erstellen,
indem die die aktuelle Hardwarekonfiguration des zentralen
Prozessors beschreibenden Konfigurationsdaten verwendet
werden; und
Mittel (95) zum Ausgeben des Inhaltes des
Konfigurationsanzeige-Speicherbereichs (90) an eine
Ausgabeeinheit, um die Konfiguration des System
anzuzeigen.
2. Vorrichtung nach Anspruch 1, in der das System eine
Vielzahl von zentralen Prozessoren (40, P) umfasst, wobei
die Vorrichtung Folgendes umfasst:
Mittel zum Erzeugen einer ersten Konfigurationstabelle
(60) zum Definieren logischer Verbindungen zwischen der
Vielzahl von zentralen Prozessoren (40, P), wobei die
erste Konfigurationstabelle zum Erstellen einer Anzeige
der logischen Verbindungen zwischen der Vielzahl von
zentralen Prozessoren im Konfigurationsanzeige-
Speicherbereich verwendet werden kann.
3. Vorrichtung nach Anspruch 2, in der mit jedem aus der
Vielzahl von zentralen Prozessoren eine oder mehrere
periphere Einheiten verbunden sind, wobei die Vorrichtung
Folgendes umfasst:
Mittel zum Erzeugen einer Vielzahl von zweiten
Konfigurationstabellen (70), von denen jede logische
Verbindungen zwischen einem aus der Vielzahl von zentralen
Prozessoren (40, P) und der einen oder den mehreren mit
diesem verbundenen peripheren Einheiten definiert.
4. Vorrichtung nach Anspruch 1, in der das System eine
Vielzahl von mit dem zentralen Prozessor (40) verbundenen
peripheren Einheiten (50, D) umfasst, wobei die
Konfigurationstabelle logische Verbindungen zwischen der
Vielzahl von peripheren Einheiten und dem zentralen
Prozessor definiert.
5. Vorrichtung nach Anspruch 1, in der das System eine
Steuereinheit (45, CU) umfasst, die zwischen den zentralen
Prozessor (40, P) und die eine oder mehreren peripheren
Einheiten (50, D) geschaltet wird, wobei die
Konfigurationstabelle logische Verbindungen zwischen der
Steuereinheit, der einen oder den mehreren peripheren
Einheiten und dem zentralen Prozessor definiert.
6. Vorrichtung nach Anspruch 1, wobei die
Konfigurationstabelle Folgendes enthält:
eine Liste (200 bis 270) von logischen Verbindungen
zwischen dem zentralen Prozessor und der einen oder den
mehreren peripheren Einheiten (50, D)
einen Zeiger (150) auf eine Liste mit mindestens einem
zentralen Prozessor (40, P); und
einen Zeiger (170) auf eine Liste von peripheren Einheiten
(50, D).
7. Vorrichtung nach Anspruch 1, in der die Ausgabeeinheit
(95) eine Anzeigeeinheit oder ein Drucker ist.
8. Verfahren zum Anzeigen der Hardwarekonfiguration eines
Datenverarbeitungssystems auf einer Ausgabeeinheit (95),
wobei das Datenverarbeitungssystem (40, P) eine Vielzahl
von peripheren Einheiten mit einer festgelegten Topologie
umfasst, wobei die peripheren Einheiten einen zentralen
Prozessor mit einem zugeordneten Speicher enthalten, wobei
das Verfahren die folgenden Schritte umfasst:
Definieren von anzeigbaren Informationen;
Erzeugen von Konfigurationsdaten, die logische
Verbindungen zwischen den peripheren Einheiten betreffen,
aus einer im Speicher (10) des zentralen Prozessors (40,
P) gespeicherten Konfigurationstabelle, wobei die
Konfigurationstabelle Konfigurationsdaten enthält, die
eine aktuelle Hardwarekonfiguration des zentralen
Prozessors beschreiben;
Feststellen der Topologie der peripheren Einheiten;
Platzieren von Einträgen zur Darstellung der peripheren
Einheiten in einen Konfigurationsanzeige-Speicherbereich
(90) des zentralen Prozessors;
Entnehmen von Verbindungsdaten zwischen den peripheren
Einheiten aus den gelesenen Konfigurationsdaten;
Erzeugen von Verbindungen zwischen den peripheren
Einheiten im Konfigurationsanzeige-Speicherbereich (90)
unter Verwendung der entnommenen Verbindungsdaten; und
Ausgeben der Konfiguration des Datenverarbeitungssystems
auf der Ausgabeeinheit (95) unter Verwendung des
Konfigurationsanzeige-Speicherbereichs (90).
9. Verfahren nach Anspruch 8, wobei die Vielzahl von
peripheren Einheiten eine oder mehrere Gruppen von
peripheren Einheiten eines ähnlichen Typs umfasst, wobei
der Schritt des Platzierens den folgenden Schritt umfasst:
Platzieren aller Elemente derselben Gruppe von peripheren
Einheiten eines ähnlichen Typs in denselben Bereich des
Konfigurationsanzeige-Speicherbereichs.
10. Verfahren nach Anspruch 8, das außerdem den folgenden
Schritt umfasst:
Optimieren der Anordnung der peripheren Einheiten und
Verbindungen im Konfigurationsanzeige-Speicherbereich (90)
zum Empfangen einer kurzen anzeigbaren Anordnung der
Konfiguration.
11. Verfahren nach Anspruch 8, wobei der Schritt des Erzeugens
außerdem die folgenden Schritte umfasst:
Feststellen von Kreuzungen von Verbindungen; und
Platzieren eines bestimmten Symbols an die Position der
Kreuzungen.
12. Verfahren nach Anspruch 8, wobei der Schritt des Erzeugens
außerdem die folgenden Schritte umfasst:
Feststellen von Schnittpunkten von Linien, die vertikale
und horizontale Verbindungen darstellen, und
Beseitigen der Schnittpunkte.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP94105160A EP0675453B1 (de) | 1994-03-31 | 1994-03-31 | Verfahren und Gerät zur Erzeugung der Anzeige einer Hardware-Konfiguration |
Publications (2)
Publication Number | Publication Date |
---|---|
DE69428681D1 DE69428681D1 (de) | 2001-11-22 |
DE69428681T2 true DE69428681T2 (de) | 2002-08-01 |
Family
ID=8215830
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE69428681T Expired - Fee Related DE69428681T2 (de) | 1994-03-31 | 1994-03-31 | Verfahren und Gerät zur Erzeugung der Anzeige einer Hardware-Konfiguration |
Country Status (4)
Country | Link |
---|---|
US (1) | US5627955A (de) |
EP (1) | EP0675453B1 (de) |
JP (1) | JPH07271708A (de) |
DE (1) | DE69428681T2 (de) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3499619B2 (ja) * | 1994-12-06 | 2004-02-23 | 東芝マイクロエレクトロニクス株式会社 | 半導体集積回路のインターフェース回路 |
DE69800039T2 (de) * | 1998-03-04 | 2000-03-16 | Hewlett-Packard Co. | Abbildung einer Netzwerktopologie |
US6141767A (en) * | 1998-04-03 | 2000-10-31 | Sony Corporation | Method of and apparatus for verifying reliability of contents within the configuration ROM of IEEE 1394-1995 devices |
US6717594B1 (en) * | 2000-09-25 | 2004-04-06 | International Business Machines Corporation | Data processing system and method for displaying a graphical depiction of system configuration |
JP2004070886A (ja) * | 2002-08-09 | 2004-03-04 | Hitachi Ltd | ディスクアレイ装置の設定方法、プログラム、情報処理装置、及びディスクアレイ装置 |
US8161390B2 (en) * | 2004-03-09 | 2012-04-17 | Yamaha Corporation | Apparatus for displaying formation of network |
JP4471102B2 (ja) | 2004-08-03 | 2010-06-02 | ヤマハ株式会社 | ミキサおよびプログラム |
US9081535B2 (en) | 2012-09-03 | 2015-07-14 | Nvidia Corporation | Automatic topology configuration through automatic hardware profiles across multiple display units |
US9086838B2 (en) | 2012-09-03 | 2015-07-21 | Nvidia Corporation | Synchronous media display through automatic hardware profiles across multiple display units |
FR3041197B1 (fr) * | 2015-09-11 | 2018-08-31 | Thales | Calculateur avionique avec module de routage integre, reseau de communication et installation de communication associes, et aeronef comprenant une telle installation de communication |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS53124943A (en) * | 1977-04-08 | 1978-10-31 | Agency Of Ind Science & Technol | Composite information processor |
DE2931567C2 (de) * | 1979-08-03 | 1989-11-23 | Schubert & Salzer Maschinenfabrik Ag, 8070 Ingolstadt | Offenend-Spinnvorrichtung |
JPS62159260A (ja) * | 1986-01-08 | 1987-07-15 | Canon Inc | 周辺機器の監視装置 |
JP2535976B2 (ja) * | 1987-11-17 | 1996-09-18 | 株式会社日立製作所 | 形態接続構成自動作成システム |
US5390138A (en) * | 1993-09-13 | 1995-02-14 | Taligent, Inc. | Object-oriented audio system |
-
1994
- 1994-03-31 DE DE69428681T patent/DE69428681T2/de not_active Expired - Fee Related
- 1994-03-31 EP EP94105160A patent/EP0675453B1/de not_active Expired - Lifetime
- 1994-12-22 JP JP6319906A patent/JPH07271708A/ja active Pending
-
1995
- 1995-03-29 US US08/412,809 patent/US5627955A/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
US5627955A (en) | 1997-05-06 |
JPH07271708A (ja) | 1995-10-20 |
EP0675453A1 (de) | 1995-10-04 |
DE69428681D1 (de) | 2001-11-22 |
EP0675453B1 (de) | 2001-10-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE3346816C2 (de) | ||
DE69807483T2 (de) | Verfahren zum darstellen von glyphen unter verwendung einer bibliothek von gestaltungsdiensten | |
DE69131251T2 (de) | System und Verfahren zur Verarbeitung von gespeicherte Bilder darstellenden Daten | |
DE69122975T2 (de) | Verfahren und Vorrichtung zum Anzeigen und Editieren von mathematischen Ausdrücken in Textformat | |
DE3587996T2 (de) | Verfahren zur Bereitstellung einer "On-line"-Hilfestellung für interaktive Datenverarbeitungsanlagen. | |
DE4334524C2 (de) | Dokumentverarbeitungsvorrichtung | |
DE69030550T2 (de) | Verfahren und System zur Erzeugung von Plänen für einen Herstellungsprozess | |
DE69023386T2 (de) | Dynamisches, den Fortgang anzeigendes Ikon. | |
DE69432388T2 (de) | Vorrichtung zur Informationsbeschaffung zum Anzeigen von Dokumenten | |
DE602005002473T2 (de) | Verfahren zum Erkennen von semantischen Einheiten in einem elektronischen Dokument | |
DE3855677T2 (de) | Datenbehandlungssystem | |
DE69323966T2 (de) | Verfahren zur Ausführung eines Kopierverfahrens und Vorrichtung zur Durchführung des Verfahrens | |
DE69429853T2 (de) | Verfahren zur Analyse ein Bild definierender Daten | |
DE3688191T2 (de) | Editor für virtuelle Maschinen. | |
DE3503119A1 (de) | Verfahren zum automatischen erzeugen eines quellenprogramms | |
DE69023420T2 (de) | Dienstprozessorprüfer. | |
DE3885780T2 (de) | Adressierung in einer Computer-Anordnung. | |
DE19706512A1 (de) | Echtzeit-Ereignisanordnung in einem elektronischen Ablaufdiagramm | |
DE69428681T2 (de) | Verfahren und Gerät zur Erzeugung der Anzeige einer Hardware-Konfiguration | |
DE19615177C2 (de) | Verfahren zum Ändern einer Funktion eines Druckertreibers | |
DE3718218A1 (de) | Bilddaten-verarbeitungsgeraet mit aufbereitungsfunktion | |
DE2801610A1 (de) | Verfahren zum definieren von anfangswerten fuer die textverarbeitung | |
DE2912073C2 (de) | ||
EP1211099A2 (de) | Verfahren zum digitalen Drucken von zusammengesetzten Dokumenten | |
DE3485760T2 (de) | Nachrichtenanzeigegeraet. |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8364 | No opposition during term of opposition | ||
8320 | Willingness to grant licences declared (paragraph 23) | ||
8328 | Change in the person/name/address of the agent |
Representative=s name: DUSCHER, R., DIPL.-PHYS. DR.RER.NAT., PAT.-ANW., 7 |
|
8339 | Ceased/non-payment of the annual fee |