DE2523686A1 - Einrichtung und verfahren zur adressuebersetzung in einem multiprozessorsystem mit virtueller adressierung - Google Patents
Einrichtung und verfahren zur adressuebersetzung in einem multiprozessorsystem mit virtueller adressierungInfo
- Publication number
- DE2523686A1 DE2523686A1 DE19752523686 DE2523686A DE2523686A1 DE 2523686 A1 DE2523686 A1 DE 2523686A1 DE 19752523686 DE19752523686 DE 19752523686 DE 2523686 A DE2523686 A DE 2523686A DE 2523686 A1 DE2523686 A1 DE 2523686A1
- Authority
- DE
- Germany
- Prior art keywords
- address
- translation
- main memory
- virtual
- access
- 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.)
- Withdrawn
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/52—Program synchronisation; Mutual exclusion, e.g. by means of semaphores
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/10—Address translation
- G06F12/1072—Decentralised address translation, e.g. in distributed shared memory systems
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Description
Einrichtlang und Verfahren zur Adreßübersetzung in einem Multiprozessorsystem
mit virtueller Adressierung.
Die Erfindung bezieht sich auf eine Einrichtung zur Adreßübersetzung
in einem Multiprozessorsystem mit virtueller Adressierung
gemäß dem Oberbegriff des Hauptanspruches und auf ein Verfahren
zur Adreßübersetzung mit Hilfe dieser Einrichtung.
Virtuell adressierende datenverarbeitende Systeme gehen von einem theoretisch beliebig großen Arbeitsspeicher, einem virtuellen
Speicher aus. Der virtuelle Speicher wird in gleich große Bereiche, sogenannte Seiten, unterteilt. Der Inhalt des gesamten virtuellen
Speichers befindet sich auf einem äußeren Speicher der Datenverarbeitungsanlage.
In den physikalischen Arbeitsspeicher, ebenfalls mit Seitenstruktur, werden jeweils nur diejenigen Seiten des
virtuellen Speichers übertragen, die gerade benötigte Befehle oder Operanden eines laufenden Programms enthalten.
Die virtuelle Adressierung ist voi* allem dann sinnvoll einzusetzen,
wenn in einem Datenverarbeitungssystem gleichzeitig eine Vielzahl
von Programmen verarbeitet werden soll. Jeder Benutzer bzw. jedes Programm hat dann seinen eigenen virtuellen Speicher, jedoch sind
die von den verschiedenen Programmen benötigten Seiten eines virtuellen Speichers den Seiten des physikalischen Arbeitsspeichers
nicht fest zugeordnet, da der Inhalt einer virtuellen Speicherseite nur bei Bedarf in eine gerade freie Seite des physikalischen
Arbeitsspeichers transferiert wird. Die virtuelle* Adressen von Befehlen oder Operanden werden daher den physikalischen Arbeitsspeicheradressen
über Adreßtabellen, die sogenannten Übersetzungstafeln, zugeordnet, die für jeden Programmablauf neu präpariert
werden.
Der große Vorteil einer virtuellen Adressierung besteht darin, daß jedes der simultan ablaufenden Programme seinen gesamten
YPA 9/210/4002 Qo/FdI
609849/0552
ORIG.NAL INSPECTED
virtuellsn Speicher- und Adressenraum scheinbar uneingeschränkt
benutzen kann. Der Programmwechsel von Benutzerprogrammen und Adrcßabersctzun^srcutin-an bleiben für den Benutzer unsichtbar,
d. h. sie "brauchen in den Benutzerprogrammen nicht berücksichtigt
zu werden.
Allerdings nuß in einer virtuell adressierenden Datenverarbeitungsanlage
bei jedem Zugriff zum- physikalischen Arbeitsspeicher eine unter Umständen sehr zeitraubende Übersetzungsroutine durchlaufen
werden, die je nach der Größe des physikalischen Arbeitsspeichers
mit geketteten Übersetzungstafeln auch mehrstufig sein kann. Dabei benutzt jede Adreßübersetzung bei einem großen
Speicherausbau stufenweise eine Mehrzahl von Übersetzungstafeln
und erfordert eine Anzahl von HilfsZugriffen zum Arbeitsspeicher,
die den eigentlichen Zugriff zum physikalischen Arbeitsspeicher verzögern und erschweren.
Bei Kiiltiprozessorsysteinen konkurrieren&ie einzelnen, selbständig
verschiedene Programme verarbeitenden Prozessoren miteinander um Zugriff^ dem gemeinsamen Arbeitsspeicher. Ist bei solchen
Systemen die Möglichkeit virtueller Adressierung vorgesehen, so ist es üblich, jedem Prozessor eine fest verdrahtete Adreßübersetzung
ssteuerung zuzuordnen, die Auszüge aus den momentan benutzten Übersetzungstafeln enthält. Das schränkt die Anzahl der
Speicherjiilfszugriffe der einzelnen Prozessoren ein und ent- '
lastet damit die Arbeitsspeicherschnittstelle.
Aus dieser Struktur der Adreßübersetzung ergeben sich jedoch folgende
Probleme:
Während ein Prozessor eine Üb ersetzungstafel ändert, kann ein
anderer Prozessor deren noch nicht geänderten Auszug in seiner eigenen Adreßübersetzungssteuerung im Laufe einer Übersetzungsroutine benutzen. Die Folge ist dann eine falsch übersetzte
virtuelle Adresse.
VPA 9/210/4002
60 9 849/055 2
Darüber hinaus kann ein Prozessor eine Übersetzungstafel im Arbeitsspeicher
inspizieren, um einen Auszug für seine eigene Adreßübersetzungssteuerung zu überprüfen. Wird diese Übersetzungstafel in
diesem Zeitraum durch einen anderen Prozessor im Zuge einer Adreßübersetzung
verändert, so läßt sich nicht ausschließen, daß der erste Prozessor einen dann nicht mehr gültigen Tafeleintrag als
Auszug zwischenspeichert.
Diese Problematik in der Verwaltung der Übersetzungstafeln bei Multiprozessorsystemen ist bekannt. Man hat daher Programmierungskonventionen
mit "Belegen" und "Freigeben" von Übersetzungstafeln festgelegt und spezielle Befehle eingeführt, die einerseits bestimmte
Fehlerursachen ausschalten und andererseits aufgetretene Fehler als solche erkennen lassen, so daß sie berichtigt werden
können. Programmierungsvorschriften jedoch schränken die Flexibilität eines Systems ein und eine Behebung aufgetretener Fehler
erfordert leistungsmindernde Tests und Fehlerroutinen.
Der Erfindung liegt daher die Aufgabe zugrunde, eine Einrichtung
und ein Verfahren zur Adreßübersetzung in einem Multiprozessorsystem
mit virtueller Adressierung der eingangs genannten Art zu schaffen, die eine vereinfachte Verwaltung und Handhabung der
Übersetzungstafeln bei Adreßübersetzungsroutinen ohne einschränkende Vorschrift ermöglicht und zugleich weitere FehlerurSachen ausschaltet,
so daß sieh die Häufigkeit von Fehlerroutinen vermindert.
Bei einer Einrichtung der eingangs genannten Art wird diese Aufgabe
erfindungsgemäß gelöst durch die im Kennzeichen des Hauptanspruchs
genannten Merkmale. Bei einer derartigen Lösung wird die Adreßübersetzung nicht individuell in den Prozessoren, sondern zentral
im Arbeitsspeicher vorgenommen. Hierzu ist dem Arbeitsspeicher eine zentrale Steuereinrichtung zur Adreßübersetzung zugeordnet,
die ohne Mitwirken eines Prozessors mit den Übersetzungstafeln arbeitet und häufig benutzte Auszüge daraus selbst speichert.
Die Prozessoren adressieren dann die Arbeitsspeicher unmittelbar mit virtuellen Adressen. Alle Prozessoren
VPA 9/210/4002
609849/0552
konkurrieren - wie bekannt - um Zugriffe zum Arbeitsspeicher, hier aber bereits um dessen zentrale AdreßüberSetzungseinrichtung. Diese ist für die Dauer einer AdreßüberSetzung durch
einen bestimmten anfordernden Prozessor belegt und für Zugriffe durch alle anderen Prozessoren gesperrt.Bei dieser Integration
der Adreßübersetzung in den Bereich des Arbeitsspeichers können die obengenannten Probleme nicht auftreten, so daß einschränkende
Programmierungskonventionen und spezielle Befehle nicht erforderlich
sind, die bisher notwendig waren, diese Probleme zu lösen.
Eine Weiterbildung der Erfindung gemäß dem Patentanspruch 2 offenbart
den mit einer solchen Einrichtung möglichen Verfahrensablauf zur AdreßütErsetzung in einem Multiprozessorsystem mit virtueller
Adressierung. Diese Lösung berücksichtigt insbesondere, die im Arbeitsspeicher zentralisierte Adreßübersetzungseinrichtung von
mehreren Programmen zu benutzen, die eigene Sätze von Übersetzungstafeln besitzen. Diese dabei auftretende Schwierigkeit
läßt sich auf elegante Weise ausräumen, indem jede- dem Arbeitsspeicher
übergebene virtuelle Adresse von einem Programmkennzeichen begleitet wird, das als Zeiger oder Fußpunktadresse zu
den programmindiviuellen Übersetzungstafeln entwickelt werden
kann.
Eine vorteilhafte Weiterbildung der Erfindung ergibt sich aus dem Inhalt des Patentanspruches 3. Diese berücksichtigt insbesondere,
daß eine Adreßübersetzung meist mindestens zwei aufeinanderfolgende Zugriffe zu miteinander verketteten Übersetzungstafeln
erfordert. Bei einer Adreßübersetzung im Arbeitsspeicher entfallen dann die sonst notwendigen langen Übertragung
szei ten für die Zugriffsparameter und die gelesenen Tafeleinträge auf dem Wege zwischen Prozessor und Arbeitsspeicher,
d. h. die Arbeitsspeicherschnittstelle ist geringer belastet.
Auch die erfindungsgemäße Organisation der Adreßübersetzung kann insbesondere nicht systematische Fehlerursachen nicht vollkommen
VPA 9/210/4002
609849/0552
ausschließen. Diese Fehler werden erst im Laufe der Adreßübersetzung
offenbar und erfordern zur Beseitigung zunächst den Ablauf
einer Betriebssystemroutine und dann die Wiederholung des vorher fehlerhaft abgelaufenen Befehls. Heute werden deshalb in
den prozessorindividuellen Adreßübersetun gseinrichtungen vorsorglich Adreßübersetzungen ohne Arbeitsspeieherzugriff mit
der übersetzten Adresse ausgeführt, so daß Programmfehler früher
erkannt werden können und dann der Befehl vor dem Entstehen sichtbarer Ergebnisse abgebrochen werden kann. Dadurch bleibt er bei
bekannten Datenverarbeitungssystemen wiederholbar.
Eine gemäß der Erfindung in den Arbeitsspeicher verlagerte Adreßübersetzung
einfordert jedoch eine allgemeinere Sicherstellung der Wiederholbarkeit eines Befehls, als es bei bekannten Systemen
mit prozessorindividuellen Adreßübersetzungseinrichtungen der Fall ist. Daß eine solche allgemeinere Sicherstellung der Widerholbarkeit
von Befehlen möglich ist, ergibt sich aus der parallel laufenden deutschen Patentanmeldung P .., in der ein Verfahren
zum wiederholten Ausführen von Befehlen in einer Verarbeitungseinheit einer Datenverarbeitungsanlage im Fehlerfall beschrieben
ist. Dieses sichert eine uneingeschränkte Widerholbarkeit von Befehlen, da Parameter und Operanden eines Befehls so
lange verfügbar bleiben, bis das Resultat fehlerfrei ist.
Zur näheren Erläuterung der Erfindung wird im folgenden ein Ausführung
sbei spiel anhand der Zeichnung beschrieben. Es zeigt:
Fig. 1 ein im Hinblick auf die hier nur zu erläuternde Adreßübersetzur-gsroutine
schematisch vereinfachtes Blockschaltbild eines Multiprozessorsystems mit einer zentralen
Adre&bersetzungssteuerung und einer Zugriffssteuerung,
die beide unmittelbar dem Arbeitsspeicher zugeordnet sind,
Fig. 2 scheraatisch die über die Speicherschnittstelle bei einem Speicherzugriff eines Prozessors übertragenen Daten und
Steuerinformationen,
Fig. 3 ein zeitorientiertes Ablaufschema bei Adreßübersetzungen
Fig. 3 ein zeitorientiertes Ablaufschema bei Adreßübersetzungen
VPA 9/210/4002
6 0 9849/0552
mit zwei anfordernden Prozessoren und
Fig. 4 ein funktioneiles Ablaufdiagramm einer Adreßübersetzung
im Zusammenhang mit einem Speicherzugriff "Lesen".
In dem in Fig. 1 dargestellten Blockschaltbild eines Multiprozessorsysteins
konkurrieren mehrere Prozessoren P1 bis PN um Zugriff zu einem gemeinsamen Arbeitsspeicher ASP. Dieser ist
modular aufgebaut und enthält in seinem für den Benutzer unsichtbaren Teil u. a. für jedes der laufenden Programme in beliebiger
Anordnung einen Satz/ron rein schematisch mit AT1, ATN angedeuteten
Übersetzungstafeln.Die eine dieser Übersetzungstafeln AT1 sei
dabei dem ersten Prozessor P1 und die andere, ATN dem n-ten Prozessor /zugeordnet. Lokalisiert werden die Übersetzungstafeln
AT1 und ATN durch Zeiger Z1 bzw. ZN, die auf Fußpunktadressen dieser Übersetzungstafeln hinweisen.
Da die Prozessoren P1 bis PN mit virtuellen Adressen zu dem Arbeitsspeicher ASP zugreifen sollen, ist diesem unmittelbar
eine zentrale Adreßübersetzungssteuerung AST zugeordnet, in der ohne Mitwirken eines anfordernden Prozessors die gesamte Adreßübersetzungsroutine
abläuft. Dieser Steuereinrichtung ist eine Zugriffssteuerung
ZST vorangeschaltet, die einen der miteinander konkurrierenden Prozessoren P1 bis PN die Adreßübersetzungssteuerung
freigibt und Anforderungen aller anderen Prozessoren für die Dauer dieser Adreßübersetzung sperrt* Da Steuereinrichtungen
für die Adreßübersetzung und für Zugriffe miteinander konkurrierender Prozessoren zu einer bestimmten gemeinsamen Einheit an sich
bekannt sind, erübrigt es sich im vorliegenden Fall, sowohl die Adreßübersetzungssteuerung AST als auch die Zugriffssteuerung
ZST im einzelnen näher zu erläutern.
Es genügt vielmehr, hier nur auf die Daten und Steuerinforaationen
hinzuweisen, die diese beiden Steuereinrichtungen benötigen. Dazu dient die Darstellung in Fig. 2. Sie zeigt im wesentlichen die
einzelnen Daten- und Informations gruppen, die über die Speicher«
schnittstelle bei einem Zugriff eines Prozessors PN zum Arbeitsspeicher ASP in einer oder in beiden Richtungen übertragen
VPA 9/210/4002
609849/0552
werden müssen. An den Arbeitsspeicher übergibt der anfordernde
Prozessor neben der Speicheradresse ADR und einem Kommando COM, das die Art des SpeicherZugriffs, d. h. "Lesen" oder "Schreiben"
festlegt, ein Programmkennzeichen PRZ, das das auf dem anfordernden
Prozessor laufende Programm definiert und damit auf eine bestimmte Übersetzungstafel, z.B. ATN hinweist. Dieses
Programmkennzeichen PRZ ist wie einer der in Fig. 1 dargestellten Zeiger, z, B. ZN, zu interpretieren, d. h. aus ihm ist eine Fußpunktadresse
für eine bestimmte Übersetzungstafel, im gewählten
Beispiel die Ubersetzungstafel ATN, ableitbar.
Neben weiteren Steuerinformationen STI und Fehlermeldungen FM, die üblicherweise immer über Schnittstellen in beiden Richtungen
übertragen werden, laufen noch die eigentlichen Speicherdaten über die Schnittstelle, entweder als Schreibdaten SD in Richtung
des Arbeitsspeichers ASP oder als Lesedaten LD in Richtung des anfordernden Prozessors PN.
In Fig. 3 ist eine Übersicht über die Zeitverhältnisse bei
konkurrierenden Speicherzugriffen durch anfordernde Prozessoren anhand eines zeitlichen Ablaufdiagrammes dargestellt. Vereinfacht
sind der Belegung des Arbeitsspeichers ASP Anforderungen von zwei Prozessoren P1 bzw. P2 gegenübergestellt. In dem durch die Zeitachse
t vorgegebenen zeitlichen Ablauf von oben nach unten wird zunächst die Anforderung des ersten Prozessors P1 auf einen
Arbeitsspeicherzugriff im Zeitabschnitt P11 bedient. Innerhalb dieses Zeitabschnittes wird im Arbeitsspeicher im Zeitabschnitt
A1 zunächst die Zugriffssteuerung belegt und damit eine mögliche Anforderung eines anderen Prozessors, z. B. des Prozessors P2,
blockiert. Im Arbeitsspeicher ASP wird im darauffolgenden Zeitabschnitt
A2 die AdreßüberSetzung durchgeführt. Daran schließt sich
im Zeitabschnitt A3 der eigentliche Speicherzugriff an, worauf im Zeitabschnitt A4 die Zugriffssteuerung ZST wieder freigegeben
wird.
Im angenommenen Beispiel wartet der zweite Prozessor P2 bereits während des gesamten Zeitabschnittes P20 auf die Freigabe der
VPA 9/210/4002
.'6 09849/0552
Zugriffssteuerung ZST und belegt diese zu Beginn des Zeitabschnittes
P21. Danach laufen nun analog wie oben im Arbeitsspeicher ASP dieselben Vorgänge ab, so daß nach Freigabe der Zugriffs
steuerung ZST im Zeitabschnitt A4 nunmehr wieder der auf einen Speicherzugriff im Zeitabschnitt P10 bereits wartende
erste Prozessor P1 bedient werden kann.
Nach dieser Darstellung des zeitlichen Ablaufes von Prozessoranforderungen
auf Speicherzugriffe soll anhand eines in Fig. 4 dargestellten funktionellen Ablaufdiagramms eine Adreßiibersetzung
.für eine "Lese"-Operation in einzelnen Schritten erläutert werden.
Dieses Ablaufdiagramm ist in zwei Spalten unterteilt. In
der rechten Spalte sind alle Verfahrensschritte dargestellt, an
denen ein einen Speicherzugriff anfordernder Prozessor PN beteiligt
ist. In der linken Spalte sind alle ' jene Vorgänge dargestellt, die innerhalb des Arbeitsspeichers ASP und der ihm zugeordneten
Zugriffssteuerung ZST und Adreßübersetzungssteuerung AST ablaufen.
über eine der in Fig. 2 dargestellten Steuerinformationen STI
fordert der Prozessor PN einen Speicherzugriff an, der durch die
Zugriffssteuerung ZST freigegeben oder blockiert wird. Erkennt die Zugriffssteuerung ZST die Anforderung an, so wird sie dadurch
belegt und der Prozessor übergibt an den Arbeitsspeicher ASP ein Programmkennzeichen PRZ , das das auf ihm ablaufende
Programm definiert, ein Kommando COM, im Beispiel ein Lesekommando
und bezeichnet damit die durchzuführende Speicheroperation, sowie
die virtuelle Adresse ADRV des Speicherplatzes, an dem diese Operation durchzuführen ist.
In der Adreßübersetzungssteuerung AST wird zunächst aufgrund
des Programmkennzeichens PRZ diejenige Übersetzungstafel, hier ATN, über eine Fußpunktadresse ermittelt, die dem im anfordernden
Prozessor PN ablaufenden Programm zugeordnet ist. Im nächsten Verfahrensschritt wird dieser Fußpunktadresse mit Hilfe eines
VPA 9/210/4002
609849/0 552
Teiles der virtuellen Adresse ADRV eine bestimmte Distanzadresse
hinzuaddiert und damit eine bestimmte Eintragszeile ATNX dieser Übersetzungstafel ermittelt. Dieser Eintrag wird dann ausgelesen
und anschließend getestet. Ergibt dieser Test einen offensichtlichen Programmfehler, so erfolgt eine Rückmeldung an den
anfordernden Prozessor PN. Nicht mehr dargestellt ist, daß sich daraus weitere ITehlerroutinen ergeben können, die zum Abbruch
des Speicherzugriffes führen und nach Ermittlung und Behebung des
Fehlers eine Wiederholung der Speicheroperation erfordern.
Bei mehrstufigen Adreßübersetzungen, d. h. miteinander verketteten
Übersetzungstafeln weist der Inhalt der Eintragszeile ATNX auf ■
die Fußpunktadresse einer nachgeordneten Übersetzungstafel hin* In diesem Fall wird» wie oben beschrieben, wiederum aus einem
Teil der virtuellen Adresse ADRV eine bestimmte Eintragszeile der nachgeordneten Übersetzungstafel bestimmt, deren Inhalt gelesen
und getestet. Je nach der Größe der Adreßübersetzungsstufen
muß diese Schleife mehrmals durchlaufen werden. In der Darstellung des funktioneilen Ablaufes in Fig. 4 ist dies durch eine mit
Pfeilen gekennzeichnete gestrichelte Linie angedeutet.
Am Ende der AdreßüberSetzungsroutine ergibt sich aus dem Inhalt
der zuletzt ermittelten Eintragszeile, hier mit ATNX bezeichnet,
und einem weiteren Teil der virtuellen Adresse ADRV die reelle Adresse ADRR eines .bestimmten Speicherplatzes im physikalischen
Arbeitsspeicher ASP. Damit ist nun der eigentliche Zugriff zum Arbeitsspeicher ASP möglich. Auch hier wird wiederum getestet,
ob ein Zugriffsfehler vorliegt und der Fehlerfall an den anfordernden Prozessor PN rückgemeldet.
Bei einwandfreiem Zugriff zum Arbeitsspeicher ASP wird nunmehr aufgrund des vom anfordernden Prozessor PN übergebenen Kommandos
COM die Art der Speicheroperation ermittelt. Bei einer Leseoperation
wird der Inhalt des Speicherplatzes mit der ermittelten reellen
VPA 9/210/4002
6098A9/0552
Adresse ADRR ausgelesen, bereitgestellt und an den Prozessor PN übertragen. Damit ist der Speicherzugriff abgeschlossen, die
Zugrifffssteuerung ZST wird freigegeben, so daß der Arbeitsspeicher
ASP mit den ihm zugeordneten Steuerungen ZST bzw. AST für einen weiteren Zugriff zur Verfugung steht.
3 Patentansprüche
4 Figuren
VPA 9/210/4002
60 96 49/0552
Claims (3)
- -11-Patentansprüche(T) Einrichtung zur Adreßübersetzung in einem Multiprozessorsystem mit virtueller Adressierung mit äußeren Speichern für die einzelnen virtuell adressierten Programme und im Arbeitsspeicher niedergelegten Übersetzungstafeln, in denen für jedes laufende Programm eine Zuordnung der verwendeten virtuellen Adresssen zu reellen Arbeitsspeicheradressen festgelegt ist und mit Steueranordnungen zum Übersetzen von virtuellen in reelle Adressen, mit denen zum Arbeitsspeicher zum Einschreiben bzw. Auslesen von Adresseninhalten zugegriffen wird, dadurch gekennzeichnet, daß dem Arbeitsspeicher (ASP) unmittelbar eine einzige, zentrale Adreßübersetzungssteuerung (AST) zugeordnet ist, mit der selbständig ohne Mitwirken eines einen Speicherzugriff fordernden Prozessors (PN) virtuelle in reelle Adressen übersetzbar sind und in der dazu häufig benutzte Auszüge aus den Übersetzungstafeln gespeichert sind, und daß weiterhin eine zentrale Zugriffssteuerung (ZST) vorgesehen ist, die bei Zugriff eines Prozessors zur Adreßübersetzungssteuerung den Zugriff aller anderen Prozessoren für die Dauer dieses Zugriffs sperrt.
- 2. Verfahren zur Adreßübersetzung in einem Multiprozessorsystem mit virtueller Adressierung mit Hilfe einer Einrichtung nach Anspruch 1, dadurch gekennzeichnet, daß ein einen Speicherzugriff anfordernder Prozessor (PN) die Zugriffssteuerung (ZST) belegt, sobald sie für ihn frei ist und an den Arbeitsspeicher (ASP) ein Programmkennzeichen (PRZ) als Unter^- scheidungskriterium für die verschiedenen laufenden Programme, eine virtuelle Adresse (ADRV) und ein Schreib- bzw. Lesekommando (COM) übergibt, daß dann die Adreßübersetzungssteuerung (AST) mit dem Programmkennzeichen eine Anfangsadresse der diesem Programm zugeordneten Übersetzungstafel (ATN) bildet und aufgrund einer .der virtuellen Adresse entnommenen Distanzadresse ein Eintrag in dieser Tafel ermittelt wird, aus dessen^Inhalt und einem weiteren Teil der virtuellen Adresse eine reelle Adresse (ADRR) gebildet wirdVPA 9/21Ό/4002€09849/0552und daß mit dieser Adresse der Zugriff zum Arbeitsspeicher durchgeführt wird.
- 3. Verfahren nach Anspruch 2, dadurch gekennzeichnet, daß ein Teilablauf, bei dem aus der ermittelten Anfangadresse einer Übersetzungstafel (ATN) und einem Teil der virtuellen Adresse (ADRV) eine Tafeleintragsadresse (ATNX) gebildet, dieser Tafeleintrag gelesen, soweit erforderlich, modifiziert und das Ergebnis im Hinblick auf einen an den anfordernden Prozessor (PN) rückzumeldenden Zugriffsfehler getestet wird, im Falle einer mehrstufigen Adreßübersetzung mit hierarchisch geordneten Übersetzungstafeln mehrmals durchlaufen wird, daß erst bei fehlerfreier Adreßübersetzung aus dem Inhalt des zuletzt ermittelten Tafeleintrags und dem verbliebenen Teil der virtuellen Adresse eine reelle Adresse (ADRR) im Arbeitsspeicher (ASP) gebildet und aufgrund dieser Adresse die Speicheroperation durchgeführt, d. h. aus dem Arbeitsspeicher ein Datenwort gelesen und in den anfordernden Prozessor übertragen bzw. aus dem Prozessor in den Arbeitsspeicher übertragen und eingeschrieben wird und daß anschließend die Zugriffssteuerung (ZST) freigegeben wird.VPA 9/210/4002609&49/QS52
Priority Applications (8)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19752523686 DE2523686A1 (de) | 1975-05-28 | 1975-05-28 | Einrichtung und verfahren zur adressuebersetzung in einem multiprozessorsystem mit virtueller adressierung |
CH422676A CH601858A5 (de) | 1975-05-28 | 1976-04-05 | |
AT332776A AT360254B (de) | 1975-05-28 | 1976-05-06 | Einrichtung und verfahren zur adressuebersetzung in einem multiprozessorsystem mit virtueller adressierung |
GB2084076A GB1567772A (en) | 1975-05-28 | 1976-05-20 | Data processing systems utilising virtual addressing |
FR7615636A FR2312820A1 (fr) | 1975-05-28 | 1976-05-24 | Procede et dispositif pour la traduction d'adresses dans un multiprocesseur a adressage virtuel |
NL7605610A NL7605610A (nl) | 1975-05-28 | 1976-05-25 | Inrichting en werkwijze voor de adresvertaling in een computersysteem met multiverwerking en met virtuele adressering. |
IT2366276A IT1081081B (it) | 1975-05-28 | 1976-05-26 | Dispositivo per tradurre gli indirizzi in un sistema a piu elaboratori con formazione di indirizzi virtuali |
BE167414A BE842320A (fr) | 1975-05-28 | 1976-05-28 | Procede et dispositif pour la traduction d'adresses dans un multiprocesseur a adressage virtuel |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19752523686 DE2523686A1 (de) | 1975-05-28 | 1975-05-28 | Einrichtung und verfahren zur adressuebersetzung in einem multiprozessorsystem mit virtueller adressierung |
Publications (1)
Publication Number | Publication Date |
---|---|
DE2523686A1 true DE2523686A1 (de) | 1976-12-02 |
Family
ID=5947671
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19752523686 Withdrawn DE2523686A1 (de) | 1975-05-28 | 1975-05-28 | Einrichtung und verfahren zur adressuebersetzung in einem multiprozessorsystem mit virtueller adressierung |
Country Status (8)
Country | Link |
---|---|
AT (1) | AT360254B (de) |
BE (1) | BE842320A (de) |
CH (1) | CH601858A5 (de) |
DE (1) | DE2523686A1 (de) |
FR (1) | FR2312820A1 (de) |
GB (1) | GB1567772A (de) |
IT (1) | IT1081081B (de) |
NL (1) | NL7605610A (de) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0006485A1 (de) * | 1978-06-23 | 1980-01-09 | International Business Machines Corporation | Seiten-Adressiervorrichtung in einem Datenverarbeitungssystem |
EP0007001A1 (de) * | 1978-07-17 | 1980-01-23 | International Business Machines Corporation | Datenverarbeitungseinrichtung mit beschränktem Paging |
EP0166268A2 (de) * | 1984-06-29 | 1986-01-02 | International Business Machines Corporation | Zugriff zu gemeinschaftlichem Speicher für Datenverarbeitungssystem |
-
1975
- 1975-05-28 DE DE19752523686 patent/DE2523686A1/de not_active Withdrawn
-
1976
- 1976-04-05 CH CH422676A patent/CH601858A5/xx not_active IP Right Cessation
- 1976-05-06 AT AT332776A patent/AT360254B/de not_active IP Right Cessation
- 1976-05-20 GB GB2084076A patent/GB1567772A/en not_active Expired
- 1976-05-24 FR FR7615636A patent/FR2312820A1/fr active Granted
- 1976-05-25 NL NL7605610A patent/NL7605610A/xx not_active Application Discontinuation
- 1976-05-26 IT IT2366276A patent/IT1081081B/it active
- 1976-05-28 BE BE167414A patent/BE842320A/xx unknown
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0006485A1 (de) * | 1978-06-23 | 1980-01-09 | International Business Machines Corporation | Seiten-Adressiervorrichtung in einem Datenverarbeitungssystem |
EP0007001A1 (de) * | 1978-07-17 | 1980-01-23 | International Business Machines Corporation | Datenverarbeitungseinrichtung mit beschränktem Paging |
EP0166268A2 (de) * | 1984-06-29 | 1986-01-02 | International Business Machines Corporation | Zugriff zu gemeinschaftlichem Speicher für Datenverarbeitungssystem |
EP0166268B1 (de) * | 1984-06-29 | 1990-05-16 | International Business Machines Corporation | Zugriff zu gemeinschaftlichem Speicher für Datenverarbeitungssystem |
Also Published As
Publication number | Publication date |
---|---|
CH601858A5 (de) | 1978-07-14 |
ATA332776A (de) | 1980-05-15 |
NL7605610A (nl) | 1976-11-30 |
FR2312820A1 (fr) | 1976-12-24 |
GB1567772A (en) | 1980-05-21 |
BE842320A (fr) | 1976-11-29 |
FR2312820B3 (de) | 1979-02-16 |
IT1081081B (it) | 1985-05-16 |
AT360254B (de) | 1980-12-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE2350884C2 (de) | Adreßumsetzungseinheit | |
EP0013737B1 (de) | Mehrstufige Speicherhierarchie für ein Datenverarbeitungssystem | |
DE3854481T2 (de) | Datenverarbeitungsverfahren in einem dezentralisierten Verarbeitungssystem. | |
DE68916167T2 (de) | Adressenspeichersperrung mit priorität für einen gemeinsamen speicher. | |
DE3803759C2 (de) | ||
DE2637054C3 (de) | Steuervorrichtung für einen Pufferspeicher | |
DE3508291A1 (de) | Realzeit-datenverarbeitungssystem | |
DE3439302A1 (de) | Speichersteuerungsvorrichtung | |
DE1499607C2 (de) | Zugriffschaltung für Umlaufspeicher in einer Datenverarbeitungsanlage | |
DE2101949A1 (de) | Verfahren zum Schutz von Datengruppen in einer Multiprocessing-Datenverarbeitungsanlage | |
DE3046912C2 (de) | Schaltungsanordnung zum selektiven Löschen von Cachespeichern in einer Multiprozessor-Datenverarbeitungsanlage | |
DE2063195C2 (de) | Verfahren und Einrichtung zur Operationssteuerung einer Anzahl von externen Datenspeichern | |
EP0062141B1 (de) | Schaltungsanordnung zur Eingabe von Steuerbefehlen in ein Mikrocomputersystem | |
DE2350229A1 (de) | Datenverarbeitungsanlage, insbesondere als steuereinrichtung fuer fernsprechvermittlungsanlagen | |
DE2710477C2 (de) | ||
DE69031529T2 (de) | Speichersteuerungssystem | |
EP0265636A1 (de) | Multiprozessor mit mehreren mit Cache-Speichern ausgerüsteten Prozessoren und einem gemeinsamen Speicher | |
DE2523686A1 (de) | Einrichtung und verfahren zur adressuebersetzung in einem multiprozessorsystem mit virtueller adressierung | |
CH495584A (de) | Datenverarbeitungsanlage | |
DE1774421B1 (de) | Mehrprogramm datenverarbeitungsanlage | |
DE2404887C2 (de) | Schaltungsanordnung für den Informationsaustausch mit einem Rechner | |
DE2034423B2 (de) | Verfahren zur Fehlersuche in einem programmgesteuerten Vermittlungssystem | |
DE3235264C2 (de) | ||
DE2355814C2 (de) | Kanalzugriffseinrichtung für eine hierarchische Speicheranordnung | |
EP0525214A1 (de) | Verfahren zum Betreiben eines Automatisierungsgeräts |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8139 | Disposal/non-payment of the annual fee | ||
8130 | Withdrawal | ||
8180 | Miscellaneous part 1 |
Free format text: DIE VEROEFFENTLICHUNG IST ZU STREICHEN |