DE69521549T2 - Verfahren zur Verwaltung gemeinsamer Mittel mehrerer Verarbeitungseinheiten - Google Patents

Verfahren zur Verwaltung gemeinsamer Mittel mehrerer Verarbeitungseinheiten

Info

Publication number
DE69521549T2
DE69521549T2 DE69521549T DE69521549T DE69521549T2 DE 69521549 T2 DE69521549 T2 DE 69521549T2 DE 69521549 T DE69521549 T DE 69521549T DE 69521549 T DE69521549 T DE 69521549T DE 69521549 T2 DE69521549 T2 DE 69521549T2
Authority
DE
Germany
Prior art keywords
request
entry
resources
age
entries
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
DE69521549T
Other languages
English (en)
Other versions
DE69521549D1 (de
Inventor
Rodney A. Dekoning
Timothy E. Hoglund
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.)
MagnaChip Semiconductor Ltd
Original Assignee
Hyundai Electronics America Inc
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 Hyundai Electronics America Inc filed Critical Hyundai Electronics America Inc
Application granted granted Critical
Publication of DE69521549D1 publication Critical patent/DE69521549D1/de
Publication of DE69521549T2 publication Critical patent/DE69521549T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • 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/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • 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/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/18Handling requests for interconnection or transfer for access to memory bus based on priority control
    • 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/14Handling requests for interconnection or transfer
    • G06F13/36Handling requests for interconnection or transfer for access to common bus or bus system
    • 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
    • G06F9/524Deadlock detection or avoidance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/503Resource availability

Landscapes

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

Description

  • Die vorliegende Erfindung betrifft ein Verfahren zum Verwalten von Ressourcen, die von mehreren Verarbeitungseinheiten gemeinsam genutzt werden.
  • Die vorliegende Erfindung stellt insbesondere ein Verfahren zum Verwalten der Vorgänge von mehreren Plattenanordnungscontrollern bereit, die sich den Zugang zu den Plattenlaufwerkseinheiten in der Anordnung teilen.
  • Plattenanordnungsspeichergeräte, die eine Vielzahl parallel geschalteter, kleiner, kostenarmer Plattenlaufwerke wie z. B. die 5¹/&sub4; oder 3¹/&sub2; Zoll Diskettenlaufwerke umfassen, die derzeit in Personal Computern und Workstations zum Einsatz kommen, werden in zunehmendem Maße für die nichtflüchtige Speicherung von Informationen in Computersystemen verwendet. Die Plattenanordnung erscheint dem Host-System wie eine einzelne große und schnelle Platte, bietet jedoch Verbesserungen im Hinblick auf Leistung, Zuverlässigkeit, Leistungsaufnahme und Skalierbarkeit gegenüber einer einzelnen großen Magnetplatte.
  • Die meisten gängigen RAID-Plattenanordnungsspeichersysteme beinhalten mehrere Platten für die Speicherung von Daten und zusätzlich ein Plattenlaufwerk für die Speicherung von Paritätsinformationen. Wenn also eines der Daten- oder Paritätslaufwerke ausfällt, können die verlorenen Daten oder die verlorene Parität rekonstruiert werden. Um den Betrieb der Mehrzahl von Laufwerken so zu koordinieren, dass Lese- und Schreibfunktionen, Paritätserzeugung und - prüfung sowie Datenwiederherstellung und -rekonstruktion ausgeführt werden können, beinhalten viele RAID-Plattenanordnungsspeichersysteme einen dedizierten Hardware-Controller, so dass das Host-System von der Verwaltung von Anordnungsvorgängen entlastet wird. Ein zusätzlicher oder redundanter Plattenlaufwerkscontroller (RDAC) kann bereitgestellt werden, um die Möglichkeit des Verlustes des Zugangs auf Daten aufgrund eines Controllerausfalls zu reduzieren.
  • Die GB-A-2,017,363 offenbart eine Stapelvorrichtung in einem Speichercontroller, die ein Verfahren zum Koordinieren der Ausführung von Ein-/Ausgabeanforderungen bereitstellt, die von Anforderungsmitteln in einem Computersystem empfangen werden. Die EP-A-0,476,252 offenbart eine Vorrichtung zum Austauschen von Kanaladapter-Statusinformationen zwischen mehreren Kanaladaptern, und offenbart einen ähnlichen Gegenstand wie die GB-A-2,017,363. Es wird auch die Möglichkeit der Speicherung so genannter verfügbarer Informationen in einem Statusregister in Verbindung mit einem Ein-/Ausgangsbus bereitgestellt. Die EP-A-0,426,184, schließlich, offenbart ein Busmaster-Befehlsprotokoll für die Verwendung mit einer Mehrzahl von Bussen und Plattenlaufwerken.
  • Es ist Aufgabe der vorliegenden Erfindung, Vorteile in Bezug auf die Verwaltung von gemeinsam genutzten Ressourcen wie z. B. Plattenanordnungen bereitzustellen.
  • Die Erfindung stellt ein Verfahren zum Koordinieren der Ausführung von E/A- Anforderungen bereit, die von Anforderungsmitteln in einem Computersystem eingegangen sind, in dem sich die genannten Anforderungsmittel den Zugriff auf und die Kontrolle über eine Mehrzahl von Ressourcen teilen, wobei das Verfahren die folgenden Schritte umfasst:
  • (A) Erstellen einer Anforderungswarteschlange, die einen Eintrag beinhaltet, der jeder E/A- Anforderung entspricht, die von den genannten Anforderungsmitteln empfangen wurde, wobei jeder Eintrag eine Kennung für Ressourcen beinhaltet, die von der entsprechenden E/A Anforderung des genannten Eintrags benötigt werden, wobei jeder Eintrag in der genannten Anforderungswarteschlange ferner ein Anforderungsalter beinhaltet, das das relative Alter jedes Eintrags in der genannten Anforderungswarteschlange in Bezug auf andere Einträge in der Anforderungswarteschlange anzeigt;
  • (B) Führen einer Verfügbare-Ressourcen-Statusanordnung, die einen Eintrag für jede Ressource beinhaltet, die derzeit von keinem anderen Anforderungsmittel verwendet wird und nicht für die zukünftige Verwendung durch ein anderes Anforderungsmittel reserviert ist;
  • (C) Untersuchen der genannten Anforderungsalter, um jeden Eintrag mit einem Anforderungsalter zu identifizieren, das einen vorbestimmten Anforderungsalterswert überschreitet; und gekennzeichnet durch die folgenden Schritte:
  • (D) Entfernen der Einträge aus der genannten Verfügbare-Ressourcen-Statusanordnung für jede Ressource, die mit dem genannten Eintrag mit einem Anforderungsalter assoziiert ist, das den genannten vorbestimmten Anforderungsalterswert überschreitet, Reservieren der Ressourcen für die Verwendung mit dem Anforderungsmittel und der Anforderung in Verbindung mit dem Eintrag mit einem Anforderungsalter, das den genannten vorbestimmten Anforderungsalterswert überschreitet;
  • (E) systematisches Vergleichen jedes Eintrags in der genannten
  • Anforderungswarteschlange mit den Einträgen in der genannten Verfügbare-Ressourcen- Statusanordnung, um einen Eintrag in der genannten Anforderungswarteschlange zu erkennen, der Ressourcen benötigt, die sich alle in der genannten Verfügbare-Ressourcen-Statusanordnung befinden;
  • (F) Übertragen der Steuerung der Ressourcen in Verbindung mit dem genannten, in Schritt E erfassten Eintrag auf das Anforderungsmittel, das die E/A-Anforderung ausgegeben hat, die dem in Schritt E erfassten Eintrag entspricht; und
  • (G) Ausführen der E/A-Anforderung, die dem in Schritt E identifizierten Eintrag entspricht.
  • Die vorliegende Erfindung ist besonders dahingehend vorteilhaft, dass sie ein neues und nützliches Verfahren und eine solche Struktur zum Koordinieren des Betriebs mehrerer Controller bereitstellt, die sich den Zugriff auf und die Kontrolle über gemeinsame Ressourcen teilen.
  • Die vorliegende Erfindung stellt insbesondere vorteilhafterweise ein solches Verfahren bereit, das die Ineffizienzen und Blockierungssituationen des Teilens von Ressourcen reduziert oder eliminiert, die bei Systemen entstehen, die gemeinsam benutzte Ressourcen aufweisen.
  • Die vorliegende Erfindung stellt ferner ein Verfahren zum Koordinieren des Betriebs mehrerer aktiver Controller innerhalb einer Plattenanordnung bereit, die den Zugriff auf und die Kontrolle über gemeinsame Ressourcen teilen.
  • Gemäß einem besonderen Merkmal stellt die vorliegende Erfindung ein neues und nützliches Verfahren zum Vermeiden von Konkurrenz zwischen Controllern in einem Plattenanordnungssystem mit mehreren aktiven Controllern bereit.
  • Eine besondere Ausgestaltung kann in einem Plattenanordnungs-Subsystem mit mehreren Anordnungscontrollern ausgeführt werden, die sich den Zugriff auf und die Kontrolle über mehrere Plattenlaufwerke sowie Steuer-, Adressier- und Datenbusse innerhalb der Plattenanordnung teilen.
  • Eine Anforderungswarteschlange, die Einträge für E/A-Anforderungen enthält, die vom Host- Computersystem empfangen werden, wird für jeden Anordnungscontroller geführt, wobei das Verfahren der vorliegenden Erfindung abwechselnd Einträge in jeder Anforderungswarteschlange untersucht, um einen Eintrag in einer der Anforderungswarteschlangen zu erkennen, die Ressourcen hat, die sich alle in der Verfügbare-Ressourcen-Statusanordnung befinden. Außerdem enthält jede Anforderungswarteschlange ein Listenalter, das das relative Alter jeder Anforderungswarteschlange in Bezug auf die anderen Anforderungswarteschlangen angibt, und jeder Eintrag in den Anforderungswarteschlangen beinhaltet ein Anforderungsalter, das das relative Alter jedes Eintrags in einer Anforderungswarteschlange in Bezug auf andere Einträge in der Anforderungswarteschlange angibt. Bei der Untersuchung der Anforderungswarteschlangen zum Identifizieren von E/A-Anforderungen zur Ausführung erhalten Einträge auf der Basis der relativen Alter der Anforderungswarteschlangen und Anforderungswarteschlangeneinträge Priorität.
  • Die Erfindung wird nachfolgend, jedoch nur beispielhaft, unter Bezugnahme auf die Begleitzeichnungen ausführlicher beschrieben. Dabei zeigt:
  • Fig. 1 ein Blockdiagramm eines Plattenanordnungssystems mit zwei SCSI-Hostbussen, Dual-Plattenanordnungscontrollern und zehn Plattenlaufwerken, auf die fünf SCSI-Busse zugreifen, die sich die beiden Controller teilen;
  • Fig. 2 ein Blockdiagramm eines Plattenanordnungssystems mit zwei Plattenanordnungscontrollern, die mit einem gemeinsamen SCSI-Host-Bus und zehn Plattenlaufwerken verbunden sind, auf die fünf SCSI-Busse zugreifen, die sich die zwei Controller teilen;
  • Fig. 3 ein Blockdiagramm eines Plattenanordnungssystems mit zwei aktiven Controllern und einer Kommunikationsverbindung zwischen den Controllern für Kommunikationen und zum Koordinieren der Ressourcenarbitration und der Zuweisung zwischen den zwei aktiven Plattenanordnungscontrollern; und
  • Fig. 4 ein Blockdiagramm, umfassend Fig. 4A, 4B und 4C des ICON (Inter-Controller Communication Chip) ASIC (anwendungsspezifische integrierte Schaltung), die in jeden Plattenanordnungscontroller von Fig. 3 eingebaut sind, um Kommunikationen bereitzustellen und Ressourcenarbitration und Zuweisung zwischen den beiden aktiven Plattenanordnungscontrollern zu koordinieren.
  • Fig. 1 zeigt ein Blockdiagramm eines Plattenanordnungsspeichersystems mit zwei Plattenanordnungscontrollern 11 und 13. Der Anordnungscontroller 11 ist über einen SCSI-Hostbus 15 mit dem Hostsystem 17 verbunden. Der Anordnungscontroller 13 ist ebenfalls über einen SCSI- Hostbus 19 mit einem Hostsystem 21 verbunden. Die Hostsysteme 17 und 21 können verschiedene Prozessoren in einem Computersystem mit mehreren Prozessoren sein. Jeder Anordnungscontroller hat über fünf SCSI-Busse 51 bis 55 Zugang zu zehn Plattenlaufwerken, die mit den Bezugsziffern 31 bis 35 sowie 41 bis 45 bezeichnet sind. Auf jedem der Busse 51 bis 55 befinden sich zwei Plattenlaufwerke. Plattenanordnungscontroller 11 und 13 können in einer der folgenden Konfigurationen arbeiten:
  • (1) Aktiver/Passiver RDAC
  • Alle Anordnungsvorgänge werden von einem Anordnungscontroller gesteuert, der als der aktive Controller bezeichnet wird. Der zweite, oder passive, Controller gilt als heiße Reserve, der die Abläufe in der Anordnung im Falle eines Ausfalls des ersten Controllers übernimmt.
  • (2) Aktiver/Aktiver RDAC - Nicht gleichzeitiger Zugriff von Anordnungslaufwerken. Ein Controller hat die primäre Verantwortung für eine erste Gruppe von gemeinsam genutzten Ressourcen (Plattenlaufwerke, geteilte Busse), und die Reserveverantwortung für eine zweite Gruppe von Ressourcen. Der zweite Controller hat die primäre Verantwortung für die zweite Gruppe von Ressourcen und die Reserveverantwortung für die erste Gruppe von Ressourcen. So könnte beispielsweise der Plattenanordnungscontroller 11 die primäre Verantwortung für die Plattenlaufwerke 31 bis 35 haben, während der Plattenanordnungscontroller die primäre Verantwortung für die Plattenlaufwerke 41 bis 45 hat.
  • (3) Aktiver/Aktiver RDAC - Gleichzeitiger Zugriff von Anordnungslaufwerken. Jeder Anordnungscontroller hat gleichberechtigte(n) Zugang zu und Kontrolle über alle Ressourcen in der Anordnung.
  • Wenn jeder Anordnungscontroller gleichberechtigte(n) Zugang zu und Kontrolle über geteilte Ressourcen hat, dann kann dies zu Ineffizienzen oder Blockierungssituationen bei der Ressourcenteilung führen. So können es beispielsweise bestimmte Betriebsarten erfordern, dass sich Untergruppen der Kanalressourcen im Besitz eines der Anordnungscontroller befinden. Wenn der Controller nicht alle benötigten Ressourcen gleichzeitig besitzt, führt dies zu einer Blockade des Controllers, bis alle Ressourcen vorhanden sind. In einer Umgebung mit mehreren Controllern, die einige, aber nicht alle benötigten Ressourcen für eine bestimmte Transaktion haben, kann dies zu Ressourcenineffizienzen oder Blockierungen bei der Beschaffung gemeinsam genutzter Ressourcen führen.
  • Ebenso erfordert ein Anordnungscontroller, der Hardware-Assistenz bei der Erzeugung von Datenredundanz leistet, gleichzeitige Datenübertragung von mehr als einem Laufwerk gleichzeitig. Wenn Daten von den Laufwerken oder vom Host empfangen werden, dann werden sie durch eine RAID-Striping-ASIC geleitet, um Datenredundanzinformationen zu generieren, die entweder in Controller-Puffern gespeichert oder unmittelbar zu einem Laufwerk zur Speicherung geleitet werden. Jeder Controller braucht Zugang zu mehreren gewählten Laufwerkskanälen gleichzeitig, so dass die Daten durch die RAID-Striping-ASIC gleichzeitig von den mehreren Datenquellen geleitet werden können. Zu einer Blockierung kann es kommen, wenn kein Mittel zum Koordinieren des Zugangs zu den Laufwerkskanälen vorhanden ist.
  • Es folgen zwei Beispiele, um die Blockierungssituation in einer Umgebung mit zwei Plattenlaufwerkscontrollern zu illustrieren.
  • Blockierungssituation 1:
  • Gemäß Fig. 1 teilen sich die Plattenanordnungscontroller 11 und 13 fünf SCSI-Busse 51 bis 55 und die zehn Laufwerke, die mit den SCSI-Bussen verbunden sind.
  • Plattenanordnungscontroller 11 wird aufgefordert, einen E/A-Vorgang zur Übertragung von Daten von den Plattenlaufwerken 31 und 33 auszuführen. Gleichzeitig erhält Plattenanordnungscontroller 13 die Aufforderung, einen E/A-Vorgang zur Übertragung von Daten von Plattenlaufwerken 41 und 43 durchzuführen. Beide Plattencontroller versuchen wie folgt, gleichzeitig auf die benötigten Laufwerke zuzugreifen:
  • Anordnungscontroller 11 greift auf Bus 51 und Plattenlaufwerk 31 zu, ein Zugriff auf Bus 53 und Plattenlaufwerk 33 wird blockiert.
  • Anordnungscontroller 13 greift auf Bus 53 und Plattenlaufwerk 43 zu und setzt die Arbitrierung für Bus 51 und Plattenlaufwerk 41 fort.
  • Controller 11 hat jetzt SCSI-Bus 51 in Betrieb und wartet auf Plattenlaufwerk 33 auf SCSI- Bus 53 (im Besitz von Controller 13). Controller 13 hat jetzt einen SCSI-Bus 53 in Betrieb und wartet auf Plattenlaufwerk 41 auf dem SCSI-Bus 51 (im Besitz von Controller 11).
  • Blockierungssituation 2:
  • Zu einer Blockierung kann es dann kommen, wenn mehrere Controller am selben Hostbus angeschlossen sind. Dies kann dann der Fall sein, wenn Host-SCSI-Bus 15 oder Host-SCSI-Bus 19 derselbe physikalische SCSI-Bus sind, in Fig. 2 als Bus 27 bezeichnet. Der Controller 11 wird aufgefordert, einen E/A-Vorgang durchzuführen, der eine Übertragung von Daten vom Plattenlaufwerk 31 auf dem SCSI-Bus 51 zum Host 17 erfordert. Gleichzeitig wird der Controller 13 aufgefordert, einen E/A-Vorgang durchzuführen, der eine Übertragung von Daten vom Plattenlaufwerk 41 auf dem SCSI-Bus 51 zum Host 21 erfordert. Beide Controller versuchen wie folgt, gleichzeitig auf die benötigten Ressourcen zuzugreifen:
  • Der Anordnungscontroller 11 greift auf den einzelnen Host-SCSI-Bus zu, der mit der Bezugsziffer 27 bezeichnet ist, und wird daran gehindert, auf den SCSI-Bus 51 und das Plattenlaufwerk 31 zuzugreifen.
  • Der Anordnungscontroller 13 greift auf den SCSI-Bus 51 und das Plattenlaufwerk 41 zu und wird daran gehindert, auf den Host-SCSI-Bus 15 zuzugreifen.
  • Jetzt hat der Controller 11 den Host-SCSI-Bus 27 im Betrieb und wartet auf den Zugang zum SCSI-Bus 51 (im Besitz von Controller 13), um eine Verbindung mit dem Plattenlaufwerk 31 zu erhalten. Der Controller 13 hat jetzt den SCSI-Bus 51 in Betrieb und wartet auf den Zugang zum Host-SCSI-Bus 27 (im Besitz von Controller 11).
  • Es wird ein Verfahren und eine Struktur zum Koordinieren des Betriebs mehrerer Controller benötigt, die sich den Zugang zu und die Kontrolle über gemeinsame Ressourcen teilen, um Ineffizienzen und Blockierungssituationen bei der Ressourcenteilung zu eliminieren. Ein Plattenanordnungssystem mit zwei aktiven Controllern, das gemäß einer bevorzugten Ausgestaltung der vorliegenden Erfindung konstruiert wurde, ist als Blockdiagramm in Fig. 3 dargestellt. Außer der im Plattenanordnungssystem von Fig. 1 gezeigten Struktur beinhaltet das System von Fig. 3 eine dedizierte Kommunikationsverbindung 57, die zwischen den Anordnungscontrollern 11 und 13 geschaltet ist, sowie eine ICON-ASIC, die in beide Controller eingebaut ist und jeweils mit den Bezugsziffern 61 und 63 bezeichnet ist.
  • Kommunikationsverbindung 57 und ICON-Chip ermöglichen Kommunikation zwischen den sowie Ressourcenarbitration und -zuweisung für die zwei Plattenanordnungscontroller(n).
  • Fig. 4 ist ein Blockdiagramm des ICON-Chips, der in die zwei aktiven Anordnungscontroller 11 und 13 eingebaut ist, die in dem in Fig. 3 gezeigten Plattenanordnungssystem enthalten sind.
  • Der ICON-Chip enthält alle Funktionen, die zur Bereitstellung einer seriellen Hochgeschwindigkeitskommunikation und Arbitration/Zuweisung von Ressourcen zwischen zwei Plattenanordnungscontrollern benötigt werden. Die Hauptanwendung für den ICON-Chip ist in Plattenanordnungssystemen die Nutzung redundanter Plattenanordnungscontroller. Da die redundante Controllerkonfiguration Ressourcen (Plattenlaufwerke und SCSI-Busse) zwischen zwei Controllern gemeinsam nutzt, ist ein Verfahren für eine Entscheidung über diese gemeinsamen Ressourcen notwendig, um Blockierungen zu vermeiden und die Systemleistung zu maximieren. Der ICON-Chip enthält eine Hardware-Implementation eines Ressourcenzuweisungsalgorithmus, der Blockierungen verhindert und zum Ziel hat, die Systemleistung zu maximieren. Über die Arbitration/Zuweisung von Ressourcen hinaus stellt der ICON-Chip auch ein Mittel zum Senden/Empfangen von generischen Mehrbyte-Meldungen zwischen Plattenanordnungscontrollern dar. Der ICON-Chip beinhaltet die folgenden Logikmodule:
  • Mikroprozessorschnittstellen-Steuerlogik 100
  • Der Mikroprozessor-Schnittstellenblock 100 lässt es zu, dass ein externer Mikroprozessor den Zustand des ICON-Chips konfiguriert und überwacht. Konfigurations- und Statusinformationen werden in Registern im ICON-Chip gehalten. Die Konfigurations-, Steuer- und Statusregister sind so ausgelegt, dass sie Betriebssoftware mit einer großen Palette von Funktionen und Diagnostikvorgängen bereitstellen. Interrupt-Maskierung und -Steuerung sind ebenfalls Teil dieses Funktionsblocks.
  • Inter-Controller-Konimunikationslogik 200
  • Der Inter-Controller-Kommunikationsblock 200 enthält sämtliche Strukturen und Logik, die zur Implementation der Inter-Controller-Kommunikationsschnittstelle notwendig sind. Dieser Block beinhaltet die folgende(n) Strukturen/Logik: Sendestatus-Sequenzierer 201, Empfangsstatus- Sequenzierer 203, Meldungssendepuffer 205, Meldungsempfangspuffer 207, Statussenderegister 209 und Statusempfangspuffer 211. Diese Module arbeiten zusammen und bilden so zwei unabhängige, unidirektionale Kommunikationskanäle. Serialisierung und Deserialisierung von Datenpaketen erfolgen in einem Sendestatus-Sequenzierermodul 201 und einem Empfangsstatus- Sequenzierermodul 203. Der serielle Datenausgang von Sendestatus-Sequenzierer kann für eine umfassende Diagnostikdatenumsetzung in das Empfangsstatus-Sequenzierermodul gespeist werden.
  • Der Inter-Controller-Kommunikationsblock dient zum Senden generischer Meldungen und Statusdaten oder zum Senden spezifischer Meldungen in Bezug auf die Anforderung/Zuteilung/Freigabe von Ressourcen zwischen zwei Plattenanordnungscontrollern.
  • Die Kommunikation zwischen Paaren von ICON-Chips erfolgt über sechs Signale. Diese Signale sind wie folgt definiert: Tabelle 1 Kommunikationssignalbeschreibungen
  • Der Ressourcenzuweisungsblock 300 enthält alle Strukturen und sämtliche Logik, die zum Verwalten von bis zu acht gemeinsam genutzten Ressourcen zwischen zwei Plattenanordnungscontrollern benötigt werden, die als Master- und Slave- Plattenanordnungscontroller bezeichnet werden. Zu diesen Strukturen und dieser Logik gehören der Ressourcenzuweiser 301, zwei Sätze von Ressourcenanforderungslisten (Master/Slave) 303 und 305, zwei Sätze von Freigaberessourcen-FIFOs (Master/Slave) 307 und 309, zwei Sätze von Zugeteilte-Ressourcen-FIFOs (Master/Slave) 311 und 313 sowie das Ressourcen-Scoreboard, das jeweils Zugewiesene-Ressourcen- und Verfügbare-Ressourcen-Blöcke 315 und 317 aufweist.
  • Das Hauptelement in diesem Block ist der Ressourcenzuweiser 301. Dieser Block besteht aus einer Hardware-Implementation eines intelligenten Ressourcen-Zuweisungsalgorithmus. Alle anderen Datenstrukturen in diesem Block werden direkt von dem Ressourcenzuweiser gesteuert und überwacht. Der im ICON-Chip für den Master-Controller vorhandene Ressourcenzuweiser überwacht den Zustand der Ressourcenanforderungslisten, der Ressourcenfreigabe-FIFOs und des Ressourcen-Scoreboard, um zu ermitteln, wie und wann Ressourcen einem der Controller zugewiesen werden. Der im ICON-Chip für den Slave-Controller vorhandene Ressourcenzuweiser ist nicht aktiv, ausgenommen beim Diagnostiktesten.
  • Controllerfunktionen 400
  • Die Controllerfunktionslogik 400 stellt mehrere Logikfunktionen auf Platinenebene bereit, um den Integrationsgrad auf dem Plattenanordnungscontroller-Design zu erhöhen.
  • Die Erfindung umfasst vorteilhafterweise die Einrichtung einer einfachen Kommunikationsverbindung und eines Protokolls zwischen Geräten, die Ressourcen gemeinsam nutzen, und einen eindeutigen Arbitrationsalgorithmus, der für die Verwaltung der gemeinsam genutzten Ressourcen verwendet wird.
  • Kommunikationsverbindung und Protokoll werden zum Anfordern, Zuteilen und Freigeben von Ressourcen zu und von dem Ressourcenzuteiler verwendet. Das Protokoll erfordert die Einrichtung eines einzelnen Master-Gerätes zwischen den Ressourcen teilenden Geräten sowie eines oder mehrerer Slave-Geräte. Der Unterschied zwischen Master und Slave dient lediglich zum Ermitteln der aktiven Ressourcenzuweisungslogik 300. Es besitzt zwar jeder Controller Ressourcenzuweisungslogik, aber sie ist nur im Master-Controller aktiv. In der nachfolgenden Erörterung beziehen sich Verweise auf die Ressourcenzuweisungslogik 300 und ihre Komponenten auf die aktive Ressourcenzuweisungslogik und ihre Komponenten. Sowohl Master- als auch Slave-Geräte behalten ihre Peer-to-Peer-Beziehung für Systemvorgänge.
  • Der aktive Ressourcenzuweiser 300 wird im Master-Gerät ausgeführt. Ein Gerät formuliert eine Ressourcenanforderung durch Kompilieren einer Liste von Ressourcen, die für einen bestimmten Vorgang benötigt werden. Die Ressourcenanforderung wird dann zur Ressourcenzuweisungslogik 300 weitergeleitet. Die Ressourcenzuweisungslogik 300 führt eine Liste von Anforderungen für jedes Gerät in dem System und versucht, allen Anforderungen schnell und fair nachzukommen. Sobald die Zuweisungslogik eine bestimmte Anforderung erfüllen kann, signalisiert sie eine Freigabe der angeforderten Ressourcen zum anfordernden Gerät. Das Gerät mit den zugeteilten Ressourcenanforderungen hat Zugang zu den zugeteilten Ressourcen, bis es sie freigibt. Die Freigabe erfolgt dann durch Senden einer Freigabemeldung zum Ressourcenzuweiser, um die Ressourcen für die Belegung durch andere Ressourcenanforderungen freizugeben.
  • Sämtliche Ressourcenanforderungen, Anforderungsgewährungen und Anforderungsbefreiungen, die ein Slave-Gerät betreffen, erfolgen durch Senden von Inter-Geräte- Meldungen, die Meldungstyp und Datenfelder zwischen dem Master- (in dem sich die aktive Ressourcenzuweisungslogik befindet) und den Slave-Geräten mit der oben beschriebenen Schnittstelle beinhalten. Alte Ressourcenanforderungen, Anforderungsgewährungen und Anforderungsbefreiungen, die nur das Master-Gerät betreffen, können innerhalb des Ortes zum Master-Gerät erfolgen.
  • Die im arbiträr zugewiesenen Master-Gerät befindliche Ressourcenzuweisungslogik 300 beinhaltet einen Ressourcenzuweisungsalgorithmus und zugehörige Datenstrukturen für die Verwaltung einer arbiträren Zahl von gemeinsam genutzten Ressourcen zwischen einer arbiträren Zahl von Geräten. Datenstrukturen und Algorithmus für die gemeinsame Nutzung von Ressourcen werden nachfolgend erörtert.
  • Datenstrukturen
  • Für jedes Gerät, für das gemeinsam genutzte Ressourcen verwaltet werden müssen, wird eine Anforderungswarteschlange oder eine Liste von Ressourcenanforderungen mit Arbitrationstiefe vom Master-Gerät geführt (Master- und Slave-Anforderungslisten 303 und 305). Mit jeder der Geräteanforderungs-Warteschlangen sind zwei Zählwerte, ein Listenalter (das das relative Alter einer Geräteanforderungs-Warteschlange in Bezug auf die anderen Anforderungswarteschlangen anzeigt) und ein Anforderungsalter (das das relative Alter des ältesten Eintrags in einer Anforderungswarteschlange eines einzelnen Gerätes in Bezug auf andere Einträge in derselben Anforderungswarteschlange anzeigt), assoziiert. Außer den Zählwerten in Verbindung mit jeder Geräteanforderungs-Warteschlange werden auch zwei Boolesche Flags geführt: ein Anforderungsstagnations-Flag und ein Listenstagnations-Flag. Die Anforderungsstagnation WAHR zeigt an, dass das relative Alter der ältesten Ressourcenanforderung eines Gerätes einen programmierbaren Schwellenwert überschritten hat. Die Listenstagnation WAHR bedeutet, dass das relative Alter einer Anforderungswarteschlange eines Gerätes in Bezug auf die Anforderungswarteschlangen anderer Geräte einen programmierbaren Schwellenwert überschritten hat. Stagnationen (Anforderung oder Liste) schließen sich zwischen allen Geräten gegenseitig aus, es kann jeweils immer nur ein Gerät sich im Stagnationszustand befinden.
  • Das Master-Gerät führt auch den aktuellen Zustand von Ressourcenzuweisung und - reservierung durch Verfolgen von "Verfügbare Ressourcen" und "Reservierte Ressourcen". "Verfügbare Ressourcen" gibt dem Ressourcenzuweisungsalgorithmus an, welche Ressourcen derzeit nicht von einem Gerät verwendet werden und derzeit nicht für eine zukünftige Zuweisung reserviert sind. Ressourcen, die in der "Verfügbare Ressourcen" Struktur enthalten sind (Verfügbare-Ressourcen-Block 317) sind daher für eine Zuweisung verfügbar. "Reservierte Ressourcen" gibt dem Ressourcenzuweisungsalgorithmus an, welche Ressourcen für eine zukünftige Zuweisung reserviert sind, weil eines der Geräte in den Stagnationszustand getreten ist (Anforderungsstagnation oder Listenstagnation WAHR). Sobald ein Gerät in den Stagnationszustand geht, werden in der Stagnationsanforderung enthaltene Ressourcen in die "Reservierte Ressourcen" Struktur (Reservierte-Ressourcen-Block 315) gesetzt entweder durch eine sofortige Beseitigung aus der "Verfügbare Ressourcen" Struktur oder für derzeit zugewiesene Ressourcen, zu dem Zeitpunkt, zu dem sie freigegeben oder in den Ressourcen-Pool zurückgebracht werden) und dort so lange gehalten, bis alle in der Stagnationsanforderung enthaltenen Ressourcen für eine Zuteilung verfügbar sind. Stagnationen (Anforderung oder Liste) schließen sich zwischen allen Geräten gegenseitig aus; es kann sich zu einem bestimmten Zeitpunkt immer nur ein Gerät im Stagnationszustand befinden. Die letzten beiden Datenstrukturen, die vom Ressourcenzuweisungsalgorithmus verwendet werden, sind Zeiger auf das derzeit gewählte Gerät (allgemein mit TURN und LISTSELECT bezeichnet), dessen Ressourcenanforderungs-Warteschlange nach einer Übereinstimmung mit verfügbaren Ressourcen durchsucht wird.
  • Algorithmus
  • Ressourcenzuweisungsfairness ist dadurch gegeben, dass die oben definierten Datenstrukturen verwendet werden. Der oben beschriebene Anforderungsstagnations-Flag wird verwendet, um Fairness bei der Gewährung von Ressourcenanforderungen in einem einzigen Gerät zu gewährleisten. Wenn man beispielsweise von einer zufallsmäßigen Verfügbarkeit von Ressourcen ausgeht, dann könnte sich ein Gerät, das die meisten Ressourcen in Gruppierungen von zwei anfordert, selbst aushungern, wenn es Gruppierungen von fünf Ressourcen aus demselben Ressourcenpool anfordert, wenn kein Mechanismus zum Erkennen und Korrigieren dieser Situation vorhanden ist. Die Anforderungsalterungszahlen mit ihren zugehörigen Schwellenwerten gewährleisten, dass Ressourcenanforderungen in einem einzigen Gerät nicht zu Aushungerung oder Dauerblockierung führen.
  • Der Listenstagnations-Flag wird verwendet, um Fairness bei der Gewährung von Ressourcenanforderungen zwischen Geräten zu gewährleisten. So könnte beispielsweise ein Gerät, das Ressourcen in Gruppierungen von zwei anfordert, ein anderes Gerät in dem System aushungern, das Gruppierungen von fünf Ressourcen aus demselben Ressourcenpool anfordert. Die Listenalterzahlen mit den zugehörigen Schwellenwerten gewährleisten, dass alle Geräteanforderungen fairer bearbeitet werden und dass ein bestimmtes Gerät, das auf Ressourcenanforderungen wartet, nicht ausgehungert wird.
  • Es werden zwei Betriebsarten für den Ressourcenzuweisungsalgorithmus definiert: Normalmodus und Stagnationsmodus. Im normalen Betriebsmodus sind keine Geräte in den Stagnationszustand eingetreten, und der Algorithmus benutzt den TURN-Zeiger auf zyklische Weise, um systematisch jede der Anforderungswarteschlangen des Gerätes zu untersuchen, um nach Möglichkeit Ressourcen (auf der Basis der Ressourcenverfügbarkeit) mit einer Priorität innerhalb einer Geräteanforderungswarteschlange auf der Basis der relativen Alter der Anforderungseinträge zuzuteilen. Nach dem Übergang in den Stagnationsmodus (ein Gerät ist in den Stagnationszustand eingetreten) wird der TURN-Zeiger auf das Stagnationsgerät gesetzt, und der Ressourcenzuweisungsalgorithmus begünstigt die Gewährung der Anforderung, die den Stagnationszustand verursacht hat, indem die Ressourcen in der Stagnationsanforderung reserviert werden, so dass keinem anderen Gerät diese Ressourcen gewährt werden können. Der TURN-Zeiger wird zwar effektiv auf dem stagnierenden Gerät eingefroren, aber andere Geräteanforderungs-Warteschlangen und andere Einträge in der Anforderungswarteschlange des stagnierenden Gerätes werden weiter nach Ressourcenübereinstimmungen auf der Basis dessen fortfahren, was derzeit verfügbar und nicht mit dem sekundären Listenzeiger (LISTSELECT) reserviert ist.
  • Der eigentliche Ressourcenzuteilungsvorgang beinhaltet die Beseitigung zugeteilter Ressourcen aus der "Verfügbare Ressourcen" Struktur zusammen mit der Löschung der "Reservierte Ressourcen" Struktur (wenn die Ressourcenzuteilung für eine Stagnationsanforderung galt). Ressourcenbefreiungs- oder -freigabevorgänge erfolgen einfach durch Aktualisieren der "Verfügbare Ressourcen" Struktur.
  • Eine spezifische Implementation eines Ressourcenalgorithmus
  • Es folgt eine Implementation des Algorithmus mit der Programmiersprache "C" für einen Beispielfall eines Master- und eines einzelnen Slave-Gerätes mit den folgenden Eigenschaften:
  • - Ressourcenanforderungs-Warteschlangentiefe für beide Geräte = 4
  • - Anzahl gemeinsam genutzter Ressourcen zwischen den Geräten = 8
  • Wie zuvor erwähnt, sind die Zahl der Geräte, die Zahl der gemeinsam genutzten Ressourcen sowie die Warteschlangentiefe streng arbiträr. Die enthaltene und von diesem Algorithmus implizierte Funktionalität wird in dem die Ressourcen teilenden Gerät implementiert, das als Master bezeichnet wird. Es wird die Service-Abfrage zum Suchen nach einer Ressourcenanforderung beschrieben, die von irgendeinem Controller gewährt werden soll. Der Freigabevorgang erfolgt einfach dadurch, dass die freizugebenden Ressourcen der Verfügbare- Kanäle-Variablen zugewiesen werden.
  • Diese Beispielimplementation wurde zwar in "C"-Programmiersprache geschrieben, aber die Implementation kann jede beliebige Form haben, wie z. B. eine andere Programmiersprache, andere Implementationen von Hardware-Zustandsmaschinen usw.
  • Es folgen Erläuterungen und Definitionen für Begriffe, die in dem obigen Algorithmus verwendet werden:
  • service_loops - die Anzahl von Anforderungen, die zu einem bestimmten Zeitpunkt ausstehen können.
  • master_request_stagnation - der Zustand, in den eingetreten wird, wenn der Master-ICON- Chip dis Slave-Icon-Anforderungen zu oft bearbeitet hat, ohne eine Master-ICON-Anforderung bearbeitet zu haben (Inter-ICON-Fairnessparameter).
  • master_list_stagnation - der Zustand, in den eingetreten wird, wenn eine Anforderung auf der Master-ICON-Anforderungsliste über eine konfigurierbare Schwelle hinaus relativ zu anderen Anforderungen "gealtert" ist, die in der Master-ICON-Anforderungswarteschlange bedient werden. (Dies dient zum Fördern der Intra-ICON-Listenanforderungsfairness, um zu gewährleisten, dass ein Aushungern in der Master-ICON-Liste vermieden wird, weil eine Anforderung, die eine große Zahl von Ressourcen benötigt, hinter vielen Anforderungen wartet, die nur eine geringe Zahl von Ressourcen brauchen).
  • slave_request_stagnation - der Zustand, in den eingetreten wird, wenn der Master ICON- Chip die Master-ICON-Anforderungen zu oft bearbeitet hat, ohne eine Slave-ICON-Anforderung zu bearbeiten (Inter-ICON-Fairnessparameter).
  • slave_list_stagnation - der Zustand, in den eingetreten wird, wenn eine Anforderung auf der Slave-ICON-Anforderungsliste über eine konfigurierbare Schwelle hinaus relativ zu anderen Anforderungen "gealtert" ist, die in der Slave-ICON-Anforderungswarteschlange bedient werden. (Dient zum Fördern von Intra-ICON-Listenanforderungsfairness, um zu gewährleisten, dass Aushungern in der Slave-ICON-Anforderungsliste vermieden wird, weil eine Anforderung eine große Zahl von Ressourcen benötigt, die hinter vielen Anforderungen warten, die nur eine geringe Zahl von Ressourcen benötigen.)
  • last_serviced - ein Mechanismus zur Gewährleistung von Fairness bei der Bedienung des vor längster Zeit bedienten Controllers.
  • turn - zeigt an, welche Liste bei der Bearbeitung von Anforderungen als erstes betrachtet wird.
  • master_list_age - das relative Alter der Anforderungsliste für den Master im Vergleich zur Anzahl von Anforderungen, die aus der Slave-Liste bearbeitet werden. Hiermit soll gewährleistet werden, dass der Master im ungünstigsten Fall dann bedient wird, wenn ein paar Anforderungen vom Slave bedient wurden. Wenn das Master-Listenalter eine Schwelle überschreitet, wird in den master_request_stagnation Zustand eingetreten.
  • master_request_age - das relative Alter des ältesten Mitglieds der Master-Liste im Vergleich zu der Zahl von Anforderungen, die von der Master-Liste bearbeitet wurden. Hiermit soll gewährleistet werden, dass die älteste Anforderung auf der Master-Liste im ungünstigsten Fall nach einigen anderen Anforderungen bearbeitet wird, die in der Master-Liste bearbeitet wurden. Wenn das Master-Anforderungsalter eine Schwelle überschreitet, wird in den Zustand master_list_stagnation eingetreten.
  • slave_lista_age - das relative Alter der Anforderungsliste für den Slave im Vergleich zur Anzahl von Anforderungen, die aus der Master-Liste bearbeitet wurden. Hiermit soll gewährleistet werden, dass der Slave im ungünstigsten Fall dann bedient wird, wenn einige Anforderungen vom Master bearbeitet wurden. Wenn das Slave-Listenalter eine Schwelle überschreitet, wird in den Zustand slave request stagnation eingetreten.
  • slave_request_age - das relative Alter des ältesten Mitglieds der Stave-Liste im Vergleich zur Zahl von Anforderungen, die aus der Slave-Liste bearbeitet wurden. Hiermit soll gewährleistet werden, dass die älteste Anforderung auf der Slave-Liste im ungünstigsten Fall dann bearbeitet wird, wenn einige andere Anforderungen in der Slave-Liste bearbeitet wurden. Wenn das Slave- Anforderungsalter eine Schwelle überschreitet, wird in den Zustand slave list stagnation eingetreten.
  • Der oben vorgestellte Algorithmus sollte, in Verbindung mit der obigen Beschreibung der Erfindung, für die Fachperson leicht verständlich sein und dieser somit ein Verfahren zum Verwalten der Vorgänge von mehreren Plattenanordnungscontrollern an die Hand geben, die sich den Zugang zu den Plattenlaufwerkseinheiten, Bussen und anderen Ressourcen in der Anordnung teilen.
  • Es wurde zwar die derzeit bevorzugte Ausgestaltung der Erfindung beschrieben, aber es ist zu verstehen, dass verschiedene Änderungen innerhalb des Umfangs der beiliegenden Ansprüche möglich sind.

Claims (7)

1. Verfahren zum Koordinieren der Ausführung von E/A-Anforderungen, die von Anforderungsmitteln (11, 17; 13, 21) in einem Computersystem eingegangen sind, in dem sich die genannten Anforderungsmittel den Zugriff auf und die Kontrolle über eine Mehrzahl von Ressourcen (31-35; 41-45; 51-55) teilen, wobei das Verfahren die folgenden Schritte umfasst;
(A) Erstellen einer Anforderungswarteschlange, die einen Eintrag beinhaltet, der jeder E/A-Anforderung entspricht, die von den genannten Anforderungsmitteln (11, 17; 13, 21) empfangen wurde, wobei jeder Eintrag eine Kennung für Ressourcen beinhaltet, die von der entsprechenden E/A-Anforderung des genannten Eintrags benötigt werden, wobei jeder Eintrag in der genannten Anforderungswarteschlange ferner ein Anforderungsalter beinhaltet, das das relative Alter jedes Eintrags in der genannten Anforderungswarteschlange in Bezug auf andere Einträge in der Anforderungswarteschlange anzeigt;
(B) Führen einer Verfügbare-Ressourcen-Statusanordnung, die einen Eintrag für jede Ressource (31-35; 41-45; 51-55) beinhaltet, die derzeit von keinem anderen Anforderungsmittel verwendet wird und nicht für die zukünftige Verwendung durch ein anderes Anforderungsmittel (11, 17; 13, 21) reserviert ist;
(C) Untersuchen der genannten Anforderungsalter, um jeden Eintrag mit einem Anforderungsalter zu identifizieren, das einen vorbestimmten Anforderungsalterswert überschreitet; und gekennzeichnet durch die folgenden Schritte:
(D) Entfernen der Einträge aus der genannten Verfügbare-Ressourcen- Statusanordnung für jede Ressource, die mit dem genannten Eintrag mit einem Anforderungsalter assoziiert ist, das den genannten vorbestimmten Anforderungsalterswert überschreitet, Reservieren der Ressourcen für die Verwendung mit dem Anforderungsmittel und der Anforderung in Verbindung mit dem Eintrag mit einem Anforderungsalter, das den genannten vorbestimmten Anforderungsalterswert überschreitet;
(E) systematisches Vergleichen jedes Eintrags in der genannten Anforderungswarteschlange mit den Einträgen in der genannten Verfügbare-Ressourcen- Statusanordnung, um einen Eintrag in der genannten Anforderungswarteschlange zu erkennen, der Ressourcen benötigt, die sich alle in der genannten Verfügbare-Ressourcen- Statusanordnung befinden;
(F) Übertragen der Steuerung der Ressourcen in Verbindung mit dem genannten, in Schritt E erfassten Eintrag auf das Anforderungsmittel, das die E/A-Anforderung ausgegeben hat, die dem in Schritt E erfassten Eintrag entspricht; und
(G) Ausführen der E/A-Anforderung, die dem in Schritt E identifizierten Eintrag entspricht.
2. Verfahren nach Anspruch 1, ferner umfassend den folgenden Schritt: Entfernen der Einträge für jede Ressource aus der Verfügbare-Ressourcen- Statusanordnung, die mit dem genannten, in Schritt E erfassten Eintrag assoziiert ist, nach Beendigung von Schritt E.
3. Verfahren nach Anspruch 2, ferner umfassend den folgenden Schritt: Zurückgeben der Einträge für jede Ressource an die genannte Verfügbare- Ressourcen-Statusanordnung, die mit dem genannten, in Schritt E erfassten Eintrag assoziiert ist, nach Beendigung von Schritt G.
4. Verfahren nach Anspruch 1, 2 oder 3, bei dem jeder Eintrag in der genannten Anforderungswarteschlange ein Anforderungsalter beinhaltet, das das relative Alter jedes Eintrags in der Anforderungswarteschlange in Bezug auf andere Einträge in der Anforderungswarteschlange anzeigt, wobei das genannte Verfahren ferner den folgenden Schritt umfasst:
Gewährung von Priorität für einen Eintrag in der Anforderungswarteschlange auf der Basis der relativen Alter.
5. Verfahren nach einem der vorherigen Ansprüche, bei dem:
die genannten Ressourcen Plattenlaufwerke (31-35, 41-45) in einer Plattenanordnung umfassen; und
die genannten Anforderungsmittel (11, 17; 13, 21) Plattenanordnungssteuerungen (11, 13) beinhalten, die sich den Zugang zu und die Kontrolle über die genannten Plattenlaufwerke (31-35, 41-45) teilen.
6. Verfahren nach einem der Ansprüche 1 bis 4, bei dem:
die genannten Anforderungsmittel eine Plattenanordnungssteuerung (11, 13) in einem Plattenanordnungssubsystem in dem genannten Computersystem beinhalten; und
die genannten Ressourcen Plattenlaufwerke (31-35, 41-45) und Busse (51-55) in dem genannten Plattenanordnungssubsystem umfassen.
7. Verfahren nach einem der Ansprüche 1-4, bei dem: die genannten Ressourcen Busse (51-55) in dem genannten Computersystem beinhalten.
6. Verfahren nach einem der vorherigen Ansprüche, bei dem:
eine Anforderungswarteschlange für jedes Anforderungsmittel in dem genannten Computersystem geführt wird; und
der genannte Schritt des systematischen Vergleichens jedes Eintrags in der genannten Anforderungswarteschlange mit den Einträgen in der genannten Verfügbare- Ressourcen-Statusanordnung den Schritt des abwechselnden Untersuchens der Einträge in jeder Anforderungswarteschlange beinhaltet, um einen Eintrag in den genannten Anforderungswarteschlangen zu erfassen, die Ressourcen anzeigen, die sich alle in der genannten Verfügbare-Ressourcen-Statusanordnung befinden.
DE69521549T 1994-04-04 1995-03-24 Verfahren zur Verwaltung gemeinsamer Mittel mehrerer Verarbeitungseinheiten Expired - Lifetime DE69521549T2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US22340594A 1994-04-04 1994-04-04

Publications (2)

Publication Number Publication Date
DE69521549D1 DE69521549D1 (de) 2001-08-09
DE69521549T2 true DE69521549T2 (de) 2001-10-25

Family

ID=22836356

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69521549T Expired - Lifetime DE69521549T2 (de) 1994-04-04 1995-03-24 Verfahren zur Verwaltung gemeinsamer Mittel mehrerer Verarbeitungseinheiten

Country Status (4)

Country Link
US (1) US6009275A (de)
EP (2) EP0676699B1 (de)
JP (1) JPH0844681A (de)
DE (1) DE69521549T2 (de)

Families Citing this family (118)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2769105B1 (fr) * 1997-09-30 1999-10-29 Bull Sa Dispositif et procede de prise en compte de l'execution d'une tache sur un systeme informatique
US6154787A (en) * 1998-01-21 2000-11-28 Unisys Corporation Grouping shared resources into one or more pools and automatically re-assigning shared resources from where they are not currently needed to where they are needed
GB2336273B (en) * 1998-01-30 2003-05-21 * Sgs-Thomson Microelectronics Limited A system for accessing resources
GB2336274B (en) * 1998-01-30 2003-05-21 Sgs Thomson Microelectronics A hierarchical system for accessing resources
US6553420B1 (en) * 1998-03-13 2003-04-22 Massachusetts Institute Of Technology Method and apparatus for distributing requests among a plurality of resources
US6430618B1 (en) 1998-03-13 2002-08-06 Massachusetts Institute Of Technology Method and apparatus for distributing requests among a plurality of resources
US6601138B2 (en) 1998-06-05 2003-07-29 International Business Machines Corporation Apparatus system and method for N-way RAID controller having improved performance and fault tolerance
US6240476B1 (en) * 1998-08-21 2001-05-29 International Business Machines Corporation Dynamic allocation of bus master control lines to peripheral devices
US6976083B1 (en) 1999-02-19 2005-12-13 International Business Machines Corporation Apparatus for providing direct data processing access using a queued direct input-output device
US6332171B1 (en) * 1999-02-19 2001-12-18 International Business Machines Corporation Self-contained queues with associated control information for receipt and transfer of incoming and outgoing data using a queued direct input-output device
US6901456B1 (en) * 1999-06-18 2005-05-31 Lsi Logic Corporation Method and system for SCSI host bus interconnection
US6453376B1 (en) * 1999-10-21 2002-09-17 Sony Corporation Method for implementing scheduling mechanisms with selectable resource modes
JP2001318897A (ja) * 2000-05-02 2001-11-16 Nec Corp ユーザ認証方法、これに用いるネットワークシステム、及びその制御プログラムを記録した記録媒体
US20020103907A1 (en) * 2000-06-20 2002-08-01 Erik Petersen System and method of storing data to a recording medium
GB2367913A (en) * 2000-09-16 2002-04-17 Motorola Inc Processor resource scheduler
US6625709B2 (en) * 2000-10-30 2003-09-23 Microsoft Corporation Fair share dynamic resource allocation scheme with a safety buffer
US7124224B2 (en) * 2000-12-22 2006-10-17 Intel Corporation Method and apparatus for shared resource management in a multiprocessing system
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.
GB0118294D0 (en) * 2001-07-27 2001-09-19 Ibm Method and system for deadlock detection and avoidance
US7315911B2 (en) * 2005-01-20 2008-01-01 Dot Hill Systems Corporation Method for efficient inter-processor communication in an active-active RAID system using PCI-express links
US7340555B2 (en) 2001-09-28 2008-03-04 Dot Hill Systems Corporation RAID system for performing efficient mirrored posted-write operations
US7536495B2 (en) * 2001-09-28 2009-05-19 Dot Hill Systems Corporation Certified memory-to-memory data transfer between active-active raid controllers
US7146448B2 (en) * 2001-09-28 2006-12-05 Dot Hill Systems Corporation Apparatus and method for adopting an orphan I/O port in a redundant storage controller
US20030154271A1 (en) * 2001-10-05 2003-08-14 Baldwin Duane Mark Storage area network methods and apparatus with centralized management
US6848020B2 (en) 2001-11-27 2005-01-25 International Business Machines Corporation Command aging method for data storage devices
US7346135B1 (en) 2002-02-13 2008-03-18 Marvell International, Ltd. Compensation for residual frequency offset, phase noise and sampling phase offset in wireless networks
US7085764B2 (en) * 2002-05-13 2006-08-01 International Business Machines Corporation System, method and program product for centrally managing agents
US6898600B2 (en) * 2002-05-16 2005-05-24 International Business Machines Corporation Method, system, and program for managing database operations
US7865547B2 (en) * 2002-09-12 2011-01-04 Siemens Enterprise Communications, Inc. System and method for accessing busy IP network resources
US7263153B2 (en) 2002-10-09 2007-08-28 Marvell International, Ltd. Clock offset compensator
US7319705B1 (en) 2002-10-22 2008-01-15 Marvell International Ltd. Programmable pre-emphasis circuit for serial ATA
US7895328B2 (en) * 2002-12-13 2011-02-22 International Business Machines Corporation System and method for context-based serialization of messages in a parallel execution environment
US7246192B1 (en) 2003-01-10 2007-07-17 Marvell International Ltd. Serial/parallel ATA controller and converter
US7698483B2 (en) 2003-01-21 2010-04-13 Nextio, Inc. Switching apparatus and method for link initialization in a shared I/O environment
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
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
US8346884B2 (en) 2003-01-21 2013-01-01 Nextio Inc. Method and apparatus for a shared I/O network interface controller
US8032659B2 (en) 2003-01-21 2011-10-04 Nextio Inc. Method and apparatus for a shared I/O network interface controller
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
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
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
US7219183B2 (en) * 2003-01-21 2007-05-15 Nextio, Inc. Switching apparatus and method for providing shared I/O within a load-store fabric
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
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
US7457906B2 (en) * 2003-01-21 2008-11-25 Nextio, Inc. Method and apparatus for shared I/O in a load/store fabric
US7046668B2 (en) 2003-01-21 2006-05-16 Pettey Christopher J Method and apparatus for shared I/O in a load/store fabric
US7103064B2 (en) * 2003-01-21 2006-09-05 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
US7664909B2 (en) 2003-04-18 2010-02-16 Nextio, Inc. Method and apparatus for a shared I/O serial ATA controller
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
US7836211B2 (en) 2003-01-21 2010-11-16 Emulex Design And Manufacturing Corporation Shared input/output load-store architecture
US7134125B2 (en) * 2003-02-07 2006-11-07 Intel Corporation Method for firmware to provide seamless regulation of system resources and extend additional configuration methods for system resource management
US6941396B1 (en) * 2003-02-19 2005-09-06 Istor Networks, Inc. Storage controller redundancy using bi-directional reflective memory channel
US7290168B1 (en) 2003-02-28 2007-10-30 Sun Microsystems, Inc. Systems and methods for providing a multi-path network switch system
US7430568B1 (en) 2003-02-28 2008-09-30 Sun Microsystems, Inc. Systems and methods for providing snapshot capabilities in a storage virtualization environment
US7236987B1 (en) 2003-02-28 2007-06-26 Sun Microsystems Inc. Systems and methods for providing a storage virtualization environment
US7383381B1 (en) 2003-02-28 2008-06-03 Sun Microsystems, Inc. Systems and methods for configuring a storage virtualization environment
US8930583B1 (en) 2003-09-18 2015-01-06 Marvell Israel (M.I.S.L) Ltd. Method and apparatus for controlling data transfer in a serial-ATA system
CN1306407C (zh) * 2003-09-30 2007-03-21 国际商业机器公司 为动态提供而自主地自学习资源选择的方法和***
US7512948B2 (en) * 2003-11-20 2009-03-31 International Business Machines Corporation Method, system, and program for managing operation requests using different resources
US8584129B1 (en) * 2004-02-20 2013-11-12 Oracle America, Inc. Dispenser determines responses to resource requests for a single respective one of consumable resource using resource management policy
US7373448B2 (en) * 2004-03-29 2008-05-13 International Business Machines Corporation Method, system, and program for building a queue to test a device
US20050240934A1 (en) * 2004-04-21 2005-10-27 Hewlett-Packard Development Company, L.P. Task management based on system utilization
US7941799B2 (en) 2004-05-27 2011-05-10 International Business Machines Corporation Interpreting I/O operation requests from pageable guests without host intervention
US7958292B2 (en) 2004-06-23 2011-06-07 Marvell World Trade Ltd. Disk drive system on chip with integrated buffer memory and support for host memory access
JP4305378B2 (ja) * 2004-12-13 2009-07-29 ソニー株式会社 データ処理システム、アクセス制御方法、その装置およびそのプログラム
US7480781B2 (en) * 2004-12-30 2009-01-20 Intel Corporation Apparatus and method to merge and align data from distributed memory controllers
US7543096B2 (en) * 2005-01-20 2009-06-02 Dot Hill Systems Corporation Safe message transfers on PCI-Express link from RAID controller to receiver-programmable window of partner RAID controller CPU memory
US7957413B2 (en) * 2005-04-07 2011-06-07 International Business Machines Corporation Method, system and program product for outsourcing resources in a grid computing environment
US20060259733A1 (en) * 2005-05-13 2006-11-16 Sony Computer Entertainment Inc. Methods and apparatus for resource management in a logically partitioned processing environment
US8745326B2 (en) * 2005-06-02 2014-06-03 Seagate Technology Llc Request priority seek manager
US9183087B2 (en) * 2005-06-07 2015-11-10 Seagate Technology Llc Data storage subgroup with local and shared resources
US8086723B2 (en) * 2006-05-17 2011-12-27 Alcatel Lucent Apparatus and methods for managing communication system resources
JP4901310B2 (ja) * 2006-05-31 2012-03-21 株式会社日立製作所 記憶制御装置及び記憶制御装置のコマンド実行数制御方法
US7536508B2 (en) * 2006-06-30 2009-05-19 Dot Hill Systems Corporation System and method for sharing SATA drives in active-active RAID controller system
US20080059720A1 (en) * 2006-09-05 2008-03-06 Rothman Michael A System and method to enable prioritized sharing of devices in partitioned environments
US7681089B2 (en) * 2007-02-20 2010-03-16 Dot Hill Systems Corporation Redundant storage controller system with enhanced failure analysis capability
JP2008226040A (ja) * 2007-03-14 2008-09-25 Hitachi Ltd 情報処理装置及びコマンド多重度制御方法
US8068114B2 (en) * 2007-04-30 2011-11-29 Advanced Micro Devices, Inc. Mechanism for granting controlled access to a shared resource
US8700830B2 (en) * 2007-11-20 2014-04-15 Spansion Llc Memory buffering system that improves read/write performance and provides low latency for mobile systems
US8769048B2 (en) 2008-06-18 2014-07-01 Commvault Systems, Inc. Data protection scheduling, such as providing a flexible backup window in a data protection system
US9128883B2 (en) 2008-06-19 2015-09-08 Commvault Systems, Inc Data storage resource allocation by performing abbreviated resource checks based on relative chances of failure of the data storage resources to determine whether data storage requests would fail
US8352954B2 (en) 2008-06-19 2013-01-08 Commvault Systems, Inc. Data storage resource allocation by employing dynamic methods and blacklisting resource request pools
US8321869B1 (en) * 2008-08-01 2012-11-27 Marvell International Ltd. Synchronization using agent-based semaphores
US8725688B2 (en) 2008-09-05 2014-05-13 Commvault Systems, Inc. Image level copy or restore, such as image level restore without knowledge of data object metadata
US8676976B2 (en) 2009-02-25 2014-03-18 International Business Machines Corporation Microprocessor with software control over allocation of shared resources among multiple virtual servers
JP5035469B2 (ja) * 2009-03-31 2012-09-26 富士通株式会社 データ転送回路及びデータ転送方法
US8522250B2 (en) 2010-09-29 2013-08-27 International Business Machines Corporation Managing access to a shared resource in a data processing system
JP2013164820A (ja) * 2012-02-13 2013-08-22 Fujitsu Ltd 評価支援方法、評価支援プログラムおよび評価支援装置
JP5891890B2 (ja) * 2012-03-26 2016-03-23 富士通株式会社 ストレージシステム、ストレージ装置およびデータ復元方法
US9633216B2 (en) 2012-12-27 2017-04-25 Commvault Systems, Inc. Application of information management policies based on operation with a geographic entity
US20140258577A1 (en) * 2013-03-11 2014-09-11 Futurewei Technologies, Inc. Wire Level Virtualization Over PCI-Express
US9459968B2 (en) 2013-03-11 2016-10-04 Commvault Systems, Inc. Single index to query multiple backup formats
JP6079347B2 (ja) * 2013-03-21 2017-02-15 富士通株式会社 制御装置、ストレージシステム、及び制御プログラム
US9372642B2 (en) 2013-07-22 2016-06-21 International Business Machines Corporation RAID 10 reads optimized for solid state drives
US9798596B2 (en) 2014-02-27 2017-10-24 Commvault Systems, Inc. Automatic alert escalation for an information management system
US9740574B2 (en) 2014-05-09 2017-08-22 Commvault Systems, Inc. Load balancing across multiple data paths
US11249858B2 (en) 2014-08-06 2022-02-15 Commvault Systems, Inc. Point-in-time backups of a production application made accessible over fibre channel and/or ISCSI as data sources to a remote application by representing the backups as pseudo-disks operating apart from the production application and its host
US9852026B2 (en) 2014-08-06 2017-12-26 Commvault Systems, Inc. Efficient application recovery in an information management system based on a pseudo-storage-device driver
US9734098B2 (en) * 2015-03-31 2017-08-15 Sandisk Technologies Llc Memory bus management
US9766825B2 (en) 2015-07-22 2017-09-19 Commvault Systems, Inc. Browse and restore for block-level backups
US10521368B2 (en) * 2015-12-24 2019-12-31 Arm Limited Arbitration of requests requiring a variable number of resources
US10108456B2 (en) * 2016-02-02 2018-10-23 Western Digital Technologies, Inc. Accelerated atomic resource allocation on a multiprocessor platform
US10296368B2 (en) 2016-03-09 2019-05-21 Commvault Systems, Inc. Hypervisor-independent block-level live browse for access to backed up virtual machine (VM) data and hypervisor-free file-level recovery (block-level pseudo-mount)
US10838821B2 (en) 2017-02-08 2020-11-17 Commvault Systems, Inc. Migrating content and metadata from a backup system
US10740193B2 (en) 2017-02-27 2020-08-11 Commvault Systems, Inc. Hypervisor-independent reference copies of virtual machine payload data based on block-level pseudo-mount
US10891069B2 (en) 2017-03-27 2021-01-12 Commvault Systems, Inc. Creating local copies of data stored in online data repositories
US10776329B2 (en) 2017-03-28 2020-09-15 Commvault Systems, Inc. Migration of a database management system to cloud storage
US11074140B2 (en) 2017-03-29 2021-07-27 Commvault Systems, Inc. Live browsing of granular mailbox data
US10303373B2 (en) * 2017-06-12 2019-05-28 Seagate Technology Llc Prioritizing commands in a data storage device
US10664352B2 (en) 2017-06-14 2020-05-26 Commvault Systems, Inc. Live browsing of backed up data residing on cloned disks
US10795927B2 (en) 2018-02-05 2020-10-06 Commvault Systems, Inc. On-demand metadata extraction of clinical image data
US10761942B2 (en) 2018-03-12 2020-09-01 Commvault Systems, Inc. Recovery point objective (RPO) driven backup scheduling in a data storage management system using an enhanced data agent
US10789387B2 (en) 2018-03-13 2020-09-29 Commvault Systems, Inc. Graphical representation of an information management system
US10860443B2 (en) 2018-12-10 2020-12-08 Commvault Systems, Inc. Evaluation and reporting of recovery readiness in a data storage management system
FR3094810B1 (fr) * 2019-04-03 2023-01-13 Thales Sa Système sur puce comprenant une pluralité de ressources maitre
US11275616B2 (en) 2019-06-13 2022-03-15 Apple Inc. Resource access management
US11308034B2 (en) 2019-06-27 2022-04-19 Commvault Systems, Inc. Continuously run log backup with minimal configuration and resource usage from the source machine

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2017363B (en) * 1978-03-27 1982-06-30 Honeywell Inf Systems Stacking apparatus in memory controller
FR2617302B1 (fr) * 1987-06-26 1993-06-18 Servel Michel Circuit pour memoriser des etats de disponibilite de ressources logiques, telles que cellules de memoire, et etablir des adresses de ressources libres
US5193197A (en) * 1987-09-24 1993-03-09 Digital Equipment Corporation Apparatus and method for distributed dynamic priority arbitration for access to a shared resource
US5253347A (en) * 1988-11-18 1993-10-12 Bull Hn Information Systems Italia S.P.A. Centralized arbitration system using the status of target resources to selectively mask requests from master units
US5155854A (en) * 1989-02-03 1992-10-13 Digital Equipment Corporation System for arbitrating communication requests using multi-pass control unit based on availability of system resources
US5249279A (en) * 1989-11-03 1993-09-28 Compaq Computer Corporation Method for controlling disk array operations by receiving logical disk requests and translating the requests to multiple physical disk specific commands
US5235689A (en) * 1990-06-11 1993-08-10 Storage Technology Corporation Interface circuit for dual port disk drive systems
US5301333A (en) * 1990-06-14 1994-04-05 Bell Communications Research, Inc. Tree structured variable priority arbitration implementing a round-robin scheduling policy
US5265257A (en) * 1990-06-22 1993-11-23 Digital Equipment Corporation Fast arbiter having easy scaling for large numbers of requesters, large numbers of resource types with multiple instances of each type, and selectable queuing disciplines
US5206936A (en) * 1990-08-31 1993-04-27 International Business Machines Corporation Apparatus for exchanging channel adapter status among multiple channel adapters
US5220653A (en) * 1990-10-26 1993-06-15 International Business Machines Corporation Scheduling input/output operations in multitasking systems
JPH0675843A (ja) * 1992-08-25 1994-03-18 Nec Software Ltd ファイル制御方式
US5457735A (en) * 1994-02-01 1995-10-10 Motorola, Inc. Method and apparatus for queuing radio telephone service requests

Also Published As

Publication number Publication date
US6009275A (en) 1999-12-28
JPH0844681A (ja) 1996-02-16
EP1016957A2 (de) 2000-07-05
EP1016957B1 (de) 2011-08-10
EP0676699B1 (de) 2001-07-04
EP1016957A3 (de) 2007-08-29
EP0676699A3 (de) 1995-10-18
DE69521549D1 (de) 2001-08-09
EP0676699A2 (de) 1995-10-11

Similar Documents

Publication Publication Date Title
DE69521549T2 (de) Verfahren zur Verwaltung gemeinsamer Mittel mehrerer Verarbeitungseinheiten
DE69027515T2 (de) Vorrichtung für Prioritätsarbitrierungskonditionierung bei gepufferter Direktspeicheradressierung
DE69429279T2 (de) Multiprozessor-programmierbares unterbrechungskontrollersystem mit prozessor-integrierten unterbrechungskontrollern
DE69108434T2 (de) Mehrgruppen-Signalprozessor.
DE3689226T2 (de) Multiprozessorsystem mit multihierarchischen Ebenen.
EP0179936B1 (de) Verfahren und Einrichtung zur Steuerung einer Sammelleitung
DE69329904T2 (de) Echtzeitverarbeitungssystem
DE3688763T2 (de) Mehrfachport-Übertragungsadaptiervorrichtung.
DE3909948C2 (de)
DE3650036T2 (de) Mehrfachport-Diensterweiterungsadapter für Übertragungssteuerung.
DE69936060T2 (de) Verfahren und Vorrichtung für eine verbesserte Schnittstelle zwischen Computerkomponenten
DE69131548T2 (de) Schneller Arbitrierer mit einfacher Anpassung für eine grosse Anzahl von Anforderern mit grosser Anzahl von mehreren Betriebsmitteltypen und selektierbaren Methoden von Warteschleifen
DE69032614T2 (de) Verfahren zur Datenverteilung in einer Speicherplattenanordnung
DE69334172T2 (de) Verfahren und Vorrichtung zur Arbitrierung auf einen acyclischen gerichteten Graph
DE60034327T2 (de) Verfahren und systeme zur implementierung von verwaltungsfunktionen für gemeinsam genutzte plattenanordnungen
DE3853574T2 (de) Steuerung von Benutzerantworten in einem Übertragungsbus.
DE69128815T2 (de) Warteschlangen für gegenseitige Verriegelung
DE69529381T2 (de) Warteschlangen-Arbitrierungsmechanismus für Datenverarbeitungssystem
DE3783370T2 (de) Schaltung zur blockierungsverhinderung von hochprioritaetsanforderungen an eine systemsteuerung.
DE68915701T2 (de) Multiprozessorsystem mit verteilten gemeinsamen Betriebsmitteln und mit Verklemmungsverhinderung.
DE69222469T2 (de) Verfahren zur Verminderung der Restbandbreite eines Busses in einem Rechnersystem
DE3883532T2 (de) Knoten für die bedienung von unterbrechungsanforderungsnachrichten auf einem anstehenden bus.
DE3606211A1 (de) Multiprozessor-computersystem
DE3689198T2 (de) Systembus für Kommunikation zwischen Prozessoren.
DE3820544C2 (de) Ortsbereichsnetzsystem mit einem hiermit gekoppelten Mehrcomputersystem und Verfahren zur Steuerung hiervon

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: FIENER, J., PAT.-ANW., 87719 MINDELHEIM

8327 Change in the person/name/address of the patent owner

Owner name: HYNIX SEMICONDUCTOR INC., ICHON, KYONGGI, KR

8327 Change in the person/name/address of the patent owner

Owner name: MAGNACHIP SEMICONDUCTOR, LTD., CHEONGJU, KR