DE2314070C3 - Verfahren und Schaltungsanordnung zum Erstellen der Einträge eines Kettungslistenspeichers in einem Verfahren und einer Schaltungsanordnung zum Durchfuhren von sequentiell ablaufenden Eingabe-/Ausgabeoperationen bei einer mit virtueller Adressierung arbeitenden Datenverarbeitungsanlage - Google Patents

Verfahren und Schaltungsanordnung zum Erstellen der Einträge eines Kettungslistenspeichers in einem Verfahren und einer Schaltungsanordnung zum Durchfuhren von sequentiell ablaufenden Eingabe-/Ausgabeoperationen bei einer mit virtueller Adressierung arbeitenden Datenverarbeitungsanlage

Info

Publication number
DE2314070C3
DE2314070C3 DE19732314070 DE2314070A DE2314070C3 DE 2314070 C3 DE2314070 C3 DE 2314070C3 DE 19732314070 DE19732314070 DE 19732314070 DE 2314070 A DE2314070 A DE 2314070A DE 2314070 C3 DE2314070 C3 DE 2314070C3
Authority
DE
Germany
Prior art keywords
memory
page number
address
linked list
physical
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
Application number
DE19732314070
Other languages
English (en)
Other versions
DE2314070A1 (de
DE2314070B2 (de
Inventor
Albrecht Dipl.-Ing. 8124 Seeshaupt Baer
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.)
Siemens AG
Original Assignee
Siemens AG
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
Priority to FR108891D priority Critical patent/FR108891A/fr
Priority to DE19732302379 priority patent/DE2302379C3/de
Application filed by Siemens AG filed Critical Siemens AG
Priority to DE19732314070 priority patent/DE2314070C3/de
Priority to GB5705473A priority patent/GB1447680A/en
Priority to FR7401140A priority patent/FR2214923B1/fr
Priority to LU69174D priority patent/LU69174A1/xx
Priority to NL7400649A priority patent/NL7400649A/xx
Priority to BE139975A priority patent/BE809930A/xx
Priority to GB691174A priority patent/GB1454357A/en
Priority to ZA00741249A priority patent/ZA741249B/xx
Priority to IT4931174A priority patent/IT1047014B/it
Priority to NL7403609A priority patent/NL7403609A/xx
Priority to FR7409060A priority patent/FR2222696B2/fr
Priority to LU69663A priority patent/LU69663A1/xx
Priority to BR211774A priority patent/BR7402117D0/pt
Priority to BR217774A priority patent/BR7402177A/pt
Priority to BE142284A priority patent/BE812640R/xx
Priority to ES424482A priority patent/ES424482A2/es
Priority to DE19742444406 priority patent/DE2444406A1/de
Publication of DE2314070A1 publication Critical patent/DE2314070A1/de
Priority to NL7510623A priority patent/NL7510623A/xx
Priority to FR7527583A priority patent/FR2285658A2/fr
Priority to BE160129A priority patent/BE833520R/xx
Publication of DE2314070B2 publication Critical patent/DE2314070B2/de
Application granted granted Critical
Publication of DE2314070C3 publication Critical patent/DE2314070C3/de
Expired legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/10Address translation
    • G06F12/1081Address translation for peripheral access to main memory, e.g. direct memory access [DMA]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Bus Control (AREA)

Description

Speicherplatzes im Arbeitsspeicher.
Die Schaltungsanordnung zur Durchführung des neuen Verfahrens gemäß der Erfindung ist dadurch gekennzeichnet, daß dem die Seitentafel enthaltenden Adreßübersetzungs-Speicher als Auswahlanordnung ein erster Decodierer zugeordnet ist, dessen Eingänge an ein Übersetzungstafel-Basisregister und wahlweise entweder zum Auswählen des vorhergehenden Seitentafeleintfages Über einen »1 «-Addierer an ein erstes Arbeitsregister angeschlossen sind, in dem die jeweils laufende virtuelle Seitennummer gespeichert ist, daß einem Kettungslisten-Speicher als Auswahlanordnung ein zweiter Decodierer zugeordnet ist, dessen Eingänge an ein Kettungslisten-Basisregister und wahlweise entweder zum Auswählen des vorhergehenden Kettungslisteneintrages an die Informationsausgänge des Adreßübersetzungs-Speichers oder zum Auswählen des laufenden Kettungslisteneintrages an die Ausgänge eines rweiten Arbeitsregisters angeschlossen sind, in dem die der laufenden virtuellen Seitennummer zugeordnete physikalische Seitennummer gespeichert ist, und daß die Ausgänge des zweiten Arbeitsregisters zum Zeitpunkt der Auswahl des laufenden Seitentafeleintrages mit den Informationseingängen des Adreßübersetzungs-Speichers und zum Zeitpunkt der Auswahl des vorhergehenden Kettungslisteneintrages mit den Informationseingängen des Kettungslisten-Speichers verbunden sind, die ihrerseits zum Zeitpunkt der Auswahl des laufenden Kettungslisteneintrages an die Informationsausgänge des Adreßübersetzungs-Speichers angeschlossen sind, in dem zu diesem Zeitpunkt der der vorangehenden virtuellen Seitennummer zugeordnete Seitentafeleintrag ausgewählt ist.
Die neue Schaltungsanordnung benötigt somit nur einige wenige Bausteine, die aber entsprechend den einzelnen Phasen der Präparierung der Kettungsliste in unterschiedlicher Weise zusammenarbeiten.
Ein Ausführungsbeispiel der Erfindung wird im folgenden an Hand der Zeichnunger näher erläutert. Es zeigen
Fiο 1 und Fiο 9 ipu/ptk pin vprfinfarhte«; Rlnck-
schaltbild einer Schaltungsanordnung zum Präparieren der Einträge im Kettungslisten-Speicher in zwei nacheinander ablaufenden Phasen, und
Fig. 3 zur Erläuterung der Wirkungsweise der in Fig. 1 und 2 dargestellten Schaltungsanordnung ein auf die wesentlichen Verfahrensschritte bei der Präparierung des Kettungslisten-Speichers reduziertes Ablaufschema.
Bevor im folgenden das Ausführungsbeispiel näher beschrieben wird, sei zunächst kurz darauf hingewiesen, daß die beiden in Fig. 1 und Fig. 2 dargestellten Schaltungsanordnungen im Grunde lediglich zwei verschiedene Darstellungen ein und derselben Schaltungsanordnung sind. Wie im folgenden deutlich werden wird, hat diese Darstellung den Vorteil, daß in den auf die wesentlichen Merkmale reduzierten Blockschaltbildern auch die Funktion deutlicher erkennbar wird. Wegen dieser Besonderheit sollen die beiden in den Fig. 1 und 2 dargestellten Schaltungsanordnungen auch gemeinsam beschrieben werden.
Beide Figuren enthalten einen Adreßübersetzungs-Speicher AUT. In diesem ist eine Seitentafel mit einer Reihe von virtuellen Seitennummern zeilenweise aufgelistet. Die Eintragszeilen sind in konsekutiver Folge jeweils einer virtuellen Seitennummer VSN zugeordnet. Die virtuellen Seitennummern bilden daher einen Teil der Adresse für eine Eintragszeile des Adreßübersetzungs-Speichers A UT. Diese Seitentafeln sind benutzerindividuell, da jeder Benut-
zer einer virtuell adressierenden Datenverarbeitungsanlage von einem eigenen virtuellen Speicher ausgeht. Daher müssen solche Seitentafeln auch bei der Präparierung eines jeden Benutzerprogramms entweder neu eingeführt oder geändert werden.
ίο DafUr ist dem Adreßübersetzungs-Speicher AUT eine Auswahleinrichtung, def erste Decodierer DECi, zugeordnet. Zur Präparierung eines Benutzerprogramms werden die Seitennummern VSN der dabei verwendeten virtuellen Speicherseiten nachein-
i) ander in einem ersten allgemeinen Arbeitsregister GPRl gespeichert, dessen Ausgänge mit einem ersten Decodierer DECi parallel über ein Leitungsvielfach verbunden sind. Dieses Leitungsvielfach ist wie andere in den SuiiaiiuiigSdiiurdrrüngen dargestellte Lei
tungsvielfache aufgespalten dargestellt, um die Zusammensetzung der benötigten Speicheradressen bzw. den Datenfluß deutlicher werden zu lassen.
Da der Adreßübersetzungs-Speicher AUT ein Teil des physikalischen Arbeitsspeichers ist, genügt die im
gewählten Beispiel 12stellige virtuelle Seitennummer VNN allein nicht, um eine Eintragszeile des Adreßübersetzungs-Speichers AUT auszuwählen. Aus diesem Grvwide ist ein weiteres Register, das sogenannte Übersetzungstafel-Basisregister UBR vorgesehen.
jo Dieses Register enthält eine 12stellige Fußpunktadresse des Adreßübersetzungs-Speichers AUT. Seine Ausgänge sind ebenfalls parallel mit dem ersten Decodierer DECl verbunden.
In der Schaltungsanordnung nach Fig. 1 ist zwi-
sehen das erste Arbeitsregister GPRl und den ersten Decodierer DECl zusätzlich noch ein Addierer ADD eingeschaltet. Wie in der Zeichnung angedeutet, vermindert dieser Addierer ,4DD die in dem ersten Arbeitsregister GPRl enthaltene virtuelle Seitennum- mer VSN um den Wert »1«, d. h. daß in diesem Falle mit dieser Adresse über den ersten Decodierer DECl eine Eintraeszeile im Adreßübersetzungs-Speicher AUT auswählbar ist, die der im Laufe der Präparierung vorhergegangenen virtuellen Seitennummer
VSNv = VSN-I zugeordnet ist.
Beide Schaltungsanordnungen gemäß Fig. 1 und Fig. 2 enthalten weiterhin einen Kettungslisten-Speicher KSP, dem als Auswahlanordnung ein weiterer Decodierer DEC2 zugeordnet ist. An diesen ist ein dem Übersetzungstafel-Basisregister UBR vergleichbares Kettungslisten-Basisregister KBR überei-τ Leitungsvielfach angeschlossen. Dieses Register enthält die Fußpunktadresse für den Kettungslisten-Speicher KSP, die in diesem Beispiel ebenfalls durch eine 12stellige Binärziffer ausgedruckt ist. Weiterhin ist ein zweites allgemeines Arbeitsregister GPR2 vorgesehen, in dem jeweils eine physikalische Seitennummer PSN gespeichert ist, die von der Speicherverwaltung — als einem Teil des Betriebssystems der datenverar beitenden Anlage - derjenigen virtuellen Seitennum mer VSN zugeordnet wird, die gerade in dem ersten Arbeitsregister GPRl gespeichert ist.
In dem weiteren Verbindungsaufbau unterscheiden sich nun die beiden Schaltungsanordnungen nach Fig. 1 bzw. Fig. 2. Wie bereits oben angedeutet, ist in Fig. i der Verbindungsaufbau der Schaltangsanordnung für eine Phase während der Präparierung der Kettungslisten dargestellt, in der im Adreßüberset-
zungs-Speicher AUT eine Eintragszeile ausgewählt ist, die der im Ablauf der Präparierung vorangegangenen virtuellen Seitennummer VSNv zugeordnet ist. Aus dieser Eintragszeile ist dann eine physikalische Seitennummer PSNx auslesbaf, die die reelle Über- s setzung der im Programmablauf vorangegangenen visuellen Speieherseite VSNv bedeutet. Setzt man diese vorangehende physikalische Seitennummer PSNx mit der im Kettungslisten-Basisregister KBR enthaltenen Fußpunktadresse für dien Kettutigsllsten-Speicher KSP zu einer Adresse KZA für eine Eintragszeile im Kettungslisten-Speicher KSP zusammen, dann ist damit eine Eintragszeile des Kettungslisten-Speichers adressierbar, die der im Programmablauf vorhergehenden physikalischen Seitennummer PSN zugeordnet ist. Nach dem Aufbau des Kettungslisten-Speichers bzw. der Zusammenset-
tennummer der im Programmablauf folgenden physikalischen Speicherseite einzutragen. Diese ist derzeit im zweiten allgemeinen Arbeitsregister GPRl gespeichert. Bei der in Fig. 1 dargestellten Anordnung sind daher die parallelen Ausgänge des zweiten Arbeitsregisters GPRl mit Informationseingängen des Kettungslisten-Speichers verbunden, so daß in den Kettungslisten-Speicher KSP eine Folgeseitennummer einspeicherbar ist.
In Fig. 2 ist die bei der Präparierung der Einträge in den Kettungslisten-Speicher folgende Phase darges" ^Ht. Die parallelen Ausgänge des zweiten Arbeitsregisters GPRl sind gemeinsam mit den Ausgängen des Kettungslisten-Basisregisters KBR an den zweiten Decodierer DECl geführt. Damit ist im Kettungslisten-Speicher KSP eine Eintragszeile adressierbar, die der gegenwärtig im zweiten Arbeitsregister GPRl gespeicherten physikalischen Seitennummer PSN zugeordnet ist. In diese Eintragszeile muß nun nach dem organisatorischen Aufbau des Kettungslisten-Speichers KSP die im Programmablauf vorhergehende physikalische Seitennummer PSNx abgelegt werden. Die Informationseingänge des Kettungslisten-Speicners KSP sind daher, wie in Mg. 2 angedeutet, in diesem Fall mit dem an den Adreßübersetzungs-Speicher AUT angeschlossenen Leitungsvielfach verbunden.
Da weiterhin in Fig. 2 durch den Inhalt des Übersetzungstafel-Basisregisters UBR und des ersten Arbeitsregisters GPRl die Adresse einer Eintragszeile des Adreßübersetzungs-Speichers AUT auswählbar ist, die der gegenwärtig zu übersetzenden virtuellen Seitennummer VSN zugeordnet ist, sind die Ausgänge des zweiten Arbeitsregisters GPR auch mit Informationseingängen des Adreßübersetzungs-Speichers A UT verbunden. Damit kann in der ausgewählten Eintragszeile dieses Speichers die laufende physikalisehe Seitennummer PSN abgelegt werden.
Vorstehende Erläuterungen haben wohl gezeigt, daß in den einzelnen Phasen der Präparierung der Kettungsliste immer wieder dieselben Bausteine, wenn auch in anderer Konfiguration, verwendet werden. Dem Fachmann ist klar, daß sich derartige Umschaltungen des Verbindungsaufbaus durch elektronische Schalter verwirklichen lassen, die allseits bekannt und daher hier in die Darstellung der Schaltungsanordnung nicht eingefügt sind. Es sei hier nur kurz darauf hingewiesen, daß mit entsprechenden Takten und z. B. einfachen UND-Schaltungen die einzelnen Leitungsvielfache derart umschaltbar ausgelegt werden können, daß sie entsprechend der fester Folge der Präparierungsphasen durehgeschaltet werden.
Die Wirkungsweise der erläuterten Schaltungsanordnung soll im folgenden zusammengefaßt an Hanc des in Fig. 3 dargestellten Ablauf Schemas erläuter werden. In seiner äußeren form und auch in der Sym bolik entspricht dieses Ablaufschema eitler Darstel lung, die sonst üblicherweise für Programmabläufe verwendet wird. Wegen ihrer Einprägsamkeit und dei allen Fachleuten auf dem Gebiet der Datenverarbeitung geläufigen Darstellungsweise sei sie jedoch aucl· hier zur Darstellung der Funktion einer Schaltungsan Ordnung verwendet.
Bevor die Präparierung der Einträge in den Ket tungslisten-Speicher KSP beginnen kann, wird in den· ersten allgemeinen Arbeitsregister GPRl eine virtiipllp ^pitpnnummpr l/\*^' itnH in ripm Tuspitpn allop.
meinen Arbeitsregister GPRl die dieser zugeordnete physikalische Seitennummer PSN durch das Betriebssystem gespeichert. Mit dem Inhalt des Übersetzungstafel-Basisregisters UBR und der virtuellen Seitennummer VSN wird dann durch die in den Fig. 1 und 2 dargestellte Schaltungsanordnung die Adresse AZA einer Eintragszeile des Adreßübersetzungs-Speichers A UT gebildet. In den durch diese Adresse AZA bezeichneten Speicherplatz des Adressenübersetzungs-Speichers A UT wird die physikalische Seitennummer PSN übertragen.
In der anschließenden zweiten Phase des Präparierungszyklus wird die im Programmablauf vorausgehende virtuelle Seitennummer VSNv nachgebildei und dann die laufende virtuelle Seitennummer um der Wert »1« vermindert. Diese und der Inhalt des Übersetzungstafel-Basisregisters UBR ergeben eine Adresse AZAv, mit der die der vorhergehenden virtuellen Seitennummer VSNv zugeordnete Eintragszeile des Adreßübersetzungs-Speichers A UT auswählbar ist.
Nun ist, wie vorausgesetzt, der Kettungslisten-Speicher KSP derart organisiert, daß er in konsekutiver Foige iur jede Seitennummer des physikalischer Speichers eine Eintragszeile enthält. Jede Eintragszeile kann zwei wesentliche Einträge aufnehmen nämlich einen Eintrag für die im Programmablaui vorhergehende Speicherseite an einem durch eine erste Adresse KZAl bezeichneten Speicherplatz unc einen weiteren Eintrag für die im Programmablaui folgende physikalische Speicherseite mit an einem Speicherplatz einer zweiten Adresse KZAl. Die Adresse KZA einer Eintragszeile im Kettungslisten-Speicher KSP wird aus dem Inhalt des Kettungslisten-Basisregisters KBR und dem Inhalt der irr Adreßübersetzungs-Speicher ausgewählten Eintragszeile AZAv gebildet. Der Inhalt dieser Eintragszeile ist mit der der vorhergehenden virtuellen Seitennummer VSNv zuzordnenden physikalischen Seitennummer PSNx identisch. In den zweiten Eintrag mit dei Adresse KZAZ der so ausgewählten Eintragszeile des Kettungslisten-Speichers wird der Inhalt des zweiter Arbeitsregisters GPR2, d. h. die laufende physikalische Seitennummer PSN übertragen.
In der nächsten Phase des Präparieningszyklus wire nun mit dem Inhalt des Kettungslistenbasisregisten KBR und der im zweiten Arbertsxegister GPR2 abgelegten physikalischen Seitennummer PSN die Adresse KZA einer neuen Eintragszeile im Kettungslisten-Speicher gebildet, die der laufenden physikalischer
Seitennummer PSN zugeordnet ist. In den ersten Ein· trag mit der Adresse KZAi ist der Inhalt der durch die vorhergehende virtuelle Seitennummer VSNv ausgewählten Eintragszeile des Adreßübersetzungs-Speichers AUT niederzulegen.
Im vorstehend geschilderten Ausfühmngsbeispiel sind die wesentlicheir Merkmale des Verfahrens und der zur Durchführung dieses Verfahrens erforderlichen Schaltungsanordnung ausführlich erläutert, Dabei wurde auch deutlich, daß selbst diese Darstellung noch auf ihre prinzipielle Struktur vereinfacht ist. Jedoch ist dies kein Mangel, da die Technik der virtuellen Adressierung einer datenverarbeitenden Anlage und die dafür notwendige Übersetzung virtueller in reelle Adressen bereits allgemein bekannt ist. Deshalb wurde unter anderem auch darauf verzichtet, noch näher zu erläutern, in welcher Weise auch die neben
10
den physikalischen Seitennummern in einer Eintragszeile des Adreßübersetzungs-Speichers einzutragenden Steuerbits parallel dazu in den Kettungslisten-Speicher übertragen werden können, Für die Verwendung solcher in den Kettungslisten*Speicher übernommener Steuerbits sei hier nur kurz eine Möglichkeit angedeutet. Bei einer Seitengrenzüberschreitung während einer Eingabe-/Ausgabeoperation kann der Fall eintreten, daß def Zugriff zu der nächsten physikalischen Speicherseite im Ablauf dieses Programms nicht oder nur unter gewissen Voraussetzungen erlaubt sein soll. Enthalten nun Einträge im Kettungslisten-Speicher u. a. auch solche Steuerbits, die eine Speicherschutzroutine zulassen, dann läßt sich ein derartiger Speicherschutz auch ohne weiteres allein mit den Einträgen aus dem Kettungslisten-Speicher verwirklichen.
Hierzu 2 Blatt Zeichnungen

Claims (3)

  1. Patentansprüche;
    1, Verfahren zum Erstellen der Einträge eines Kettungslisten-Speichers in einer Schaltungsan-Ordnung zum Durchführen von sequentiellen Eingabe-Ausgabe-Operationen einer mit virtueller Adressierung arbeitenden Datenverarbeitungsanlage mit einer Vielzahl von über einen Eingabe-Ausgabe-Kanal angeschlossenen peripheren ι ο Geräten, gesteuert durch ursprünglich virtuell oder reell adressierte, jedoch stets reell adressiert ablaufende Kanalprogramme, bei denen während des Ablaufes eines reell adressierten Kanalbefehles durch ihn festgelegte und in einem Daten- is adreß-Speicher als Adresse eines Datenbytes gespeicherte, physikalische Datenadressen gelesen und decodiert werden und damit jeweils ein Speicherplatz in einem Datenspeicher ausgewählt wird, der einen Teil des Arbeitsspeichers bildet und zwischen dem und einem der angeschlossenen peripheren Geräte ein Datenbyte transferiert wird, wobei für das Verarbeiten von Eingabe-Ausgabe-Operationen mit einer Seitengrenzüberschreitung im Datenspeicher, die auf Grund einer 2s einen Teil der physikalischen Datenadresse bildenden Bytenummer feststellbar ist, der KettungsIisten-Speicher vorgesehen ist, in dem jeder physikalischen Seite des Arbeitsspeichers in konsekutiver Folge eine Eintragszeile zugeordnet ist, die mit einer den anderen Teil der physikalischen Datenadresse bildenden physikalischen Seitennummer adressierbar ist una in der die physikalische Seitennumrner der i/n Programmablauf folgenden virtuellen SpeicherseiU. gespeichert ist, die zusammen mit der gültigen Bytenummer die neue physikalische Datenadresse anch einer Seitengrenzüberschreitung darstellt, gemäß Patent 2302379, gekennzeichnet durch die Kombination folgender Merkmale: *o
    a) Grundsätzlich wird eine physikalische Seitennummer (PSN), die als Distanzadresse für einen neuen Eintrag im Kettungslisten-Speicher (KSP) bzw. aber auch als Teileintrag selbst verwendet wird, aus einem der vom Betriebssystem ständig aktualisierten Einträge von benutzerindividuellen Seitentafeln gewonnen, die beim Verarbeiten eines Benutzerprogrammes zum Übersetzen der virtuellen in reelle Adressen dienen, und dazu wird mit der zugehörigen virtuellen Seitennummer (IkWAO eine Distanzadresse für einen Eintrag in einer in einem Adreßübersetzungs-Speicher (AUT) niedergelegten Seitentafel gebildet und die in diesem adressier- ten Eintrag der Seitentafel enthaltene physikalische Seitennummer ausgelesen;
    b) nach der Vergabe eines Seitenrahmens im physikalischen Arbeitsspeicher an eine neue virtuelle Speicherseite mit der aktuellen virtuetlen Seitennummer (VSN) wird zunächst mit der im Programmablauf vorhergehenden, also bei Ein-/Ausgabeoperationen mit fort' laufender Adreßerhöhung um den Wert»1« niedrigeren, virtuellen Seitennummer (VSN-I) nach Maßgabe des Merkmals a) die letzterer zugeordnete physikalische Seiten' nummer (PSNx mit z. B. x- n) ermittelt;
    c) mit dieser physikalischen Seitenmwnmer (PSNn) als Distanzadresse wird eine Eintragszeile (n) im Kettungslisten-Speicher (KSP) ausgewählt und dort an den Speicherplatz, der bei Ein-Ausgabeoperationen mit fortlaufender Adreßerhöhung für die Folgeseitennummer vorgesehen ist, die ebenso nach Maßgabe des Merkmals a) mit der aktuellen virtuellen Seitennummer ( VSN) erhaltene physikalische Seitennummer (PSNy mit z. B. y=k) eingespeichert;
    d) im Kettungslisten-Speicher (KSP) wird weiterhin mit dieser, der aktuellen virtuellen Seitennummer (VSN) zugeordneten physikalischen Seitennummer (PSNk) als Distanzadresse eine zweite Eintragszeile (k) ausgewählt und dort am Speicherplatz für die Seitennummer einer bei Ein-/Ausgabe-Operationen mit fortlaufender Adreßerhöhung im Programmablauf vorhergehenden Speicherseite die der vorhergehenden virtuellen Seitennummer ( VSN-I) zugeordnete physikalische Seitennummer (PSNn) gespeichert.
  2. 2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß den laufenden physikalischen Seitennummern (PSN) zugeordnet in weitere Speicherplätze der Eintragszeilen des Kettungslisten-Speichers (KSP) aus der Seitentafel im Adreßübersetzungs-Speicher (AUT) auch dort noch enthaltene Steuerbits übertragen werden.
  3. 3. Schaltungsanordnung zur Durchführung eines Verfahrens nach einem der Ansprüche 1 oder 2, dadurch gekennzeichnet, daß dem die Seitentafel enthaltenden Adreßübersetzungs-Speicher (AUT) als Auswahlanordnung ein erster Decodierer (DECl) zugeordnet ist, dessen Eingänge an ein Übersetzungstafel-Basisregister (UBR) und wahlweise entweder zum Auswählen des laufenden Seitentafeleintrages direkt oder zum Auswählen des vorhergehenden Seitentafeleintrages über einen »1 «-Addierer (ADD) an ein erstes Arbeitsregister (GPRl) angeschlossen sind, in dem die jeweils laufende virtuelle Seitennummer (VSN) gespeichert ist, daß einem Kettungslisten-Speicher (KSP) als Auswahlanordnung ein zweiter Decodierer (DECl) zugeordnet ist, dessen Eingänge an ein Kettungslisten-Basisregister (KBR) und wahlweise entweder zum Auswählen des vorhergehenden Kettungslisteneintrages an die Informationsausgänge des Adreßübersetzungs-Speichers oder zum Auwählen des laufenden Kettungslisteneintrages an die Ausgänge eines zweiten Arbeitsregisters (GPRl) angeschlossen sind, in dem die der laufenden virtuellen Seitennummer zugeordnete physikalische Seitennummer (PSN) gespeichert ist, und daß die Ausgänge des zweiten Arbeitsregisters zum Zeitpunkt der Auswahl des laufenden Seitentafeleintrages mit den Informationseingängen des Adreßübersetzungs-Speichers und zum Zeitpunkt der Auswahl des vorhergehenden Kettungslisteneintrages mit den Informationseingängen des Kettungslisten-Speichers verbunden sind, die ihrerseits zum Zeitpunkt der Auswahl des laufenden Kettungslisteneintrages an die Informationsausgänge des AdreßübersetzungS'Speichers angeschlossen sind, in dem zu diesem Zeitpunkt der der vorangehen-
    den virtuellen SeitennUmmer (VSNn) zugeordnete Sejtentafeleintrag ausgewählt ist.
    Das Hauptpatent 2302379 betrifft ein Verfahren zum Durchfühlen von sequentiellen Eingabe-Ausgabe-Operationen einer mit virtueller Adressierung ι ο arbeitenden Datenverarbeitungsanlage mit einer Vielzafü von über eine» Eingabe-Ausgabe-Kanal angeschlossenen peripheren Geräten, gesteuert durch ursprünglich virtuell oder rell adressierte, jedoch stets reell adressiert ablaufende Kanalprogramme, bei denen während des Ablaufes eines reeli adressierten Kanalbefehles durch ihn festgelegte und in einem Datenadreß-Speicher als Adresse eines Datenbytes gespeicherte, physikalische Datenadressen gelesen und decodiert werden und damit jeweils ein Speicherplatz in einem Datenspeicher ausgewählt wird, der einen Teil des Arbeitsspeichers bildet und zwischen dem und einem der angeschlossenen peripheren Geräte ein Datenbyte transferiert wird, wobei für das Verarbeiten von Eingabe-Ausgabe-Operationen mit einer Seitengrenzüberschreitung im Datenspeicher, die auf Grund einer einen Teil der physikalischen Datenadresse bildenden Bytenummer feststellbar ist, der Kettungslisten-Speicher vorgesehen ist, in dem jeder physikalischen Seite des Arbeitsspeichers in konsekutiver Folge eine Eintragszeile zugeordnet ist, die mit einer den anderen Teil der physikalischen Datenadresse bildenden physikalischen Seitennummer addressierbar ist und in der die physikalische Seitennummer der im Programmablauf folgenden virtuellen Speicherseite gespeichert ist, die zusammen mit der gültigen Bytenummer die neue physikalische Datenadresse nach einer Seitengrenzüberschreitung darstellt.
    Die Erfiri Jung betrifft nun eine Weiterbildung dieses Verfahrens und eine Schaltungsanordnung zur Durchführung des neuen Verfahrens. Bei den vorgenannten Verfahren lassen sich nämlich die Vorteile des Kettungslisten-Speichers bei Eingabe-/Ausgabeoperationen nur dann voll ausnutzen, wenn es möglich ist, seine Einträge jeweils auf einfache Weise zu präparieren.
    Die Aufgabe der Erfindung besteht daher in der Schaffung eines Verfahrens zum Erstellen der Einträge für den Kettungsl^ten-Speicher in einer nach so dem Verfahren des Patentes 23023379 arbeitenden Schaltungsanordnung, das möglichst einfach ist und sich in bestehende Eingabe-/Ausgabesysteme organisch einfügen läßt, sowie in der Schaffung einer entsprechend arbeitenden Schaltungsanordnung.
    Diese Aufgabe wird einerseits dadurch gelöst, daß folgende Merkmale kombiniert werden:
    a) Grundsätzlich wird eine physikalische Seitennummer, die als Distanzadresse für einen neuen Eintrag im Kettungslisten-Speicher bzw. aber auch als Teileintrag selbst verwendet wird, aus einem der vom Betriebssystem ständig aktualisierten Einträge von benutzerindividuellen Seitentafeln gewonnen, die beim Verarbeiten eines Benutzerprngramms zum Übersetzen der virtuellen in reelle Adressen dienen, und dazu wird mit der zugehörigen virtuellen Seitennummer eine Distanzadressß für einen Eintrag in einer in einem Adreßübersetzungs-Spejcher niedergelegten Seitentafel gebildet und die in diesem adressierten Eintrag der Seitentafel enthaltene physikalische Seitennummer ausgelesen;
    b) nach der Vergabe eines SeitenrahnW.E im physikalischen Arbeitsspeicher an eine neue virtuelle Speicherseite mit der aktuellen virtuellen Seitennummer wird zunächst mit der im Programmablauf vorhergehenden, also bei Ein-/ Ausgabeoperationen mit fortlaufender Adreßerhöhung um den Wert »1« niedrigeren, virtuellen Seitennummer nach Maßgabe des Merkmals a) die letzterer zugeordnete physikalische Seitennummer ermittelt;
    c) mit dieser physikalischen Seitennummer als Distanzadresse wird eine Eintragszeile im Kettungslisten-Speicher ausgewählt und dort an den Speicherplatz, der bei Ein-Ausgabeoperationen mit fortlaufender Adreßerhöhung für die Folgeseitennummer vorgesehen ist, »He ebenso nach Maßgabe des Merkmales a) mit 3er aktuellen virtuellen Seitennummer erhaltene physikalische Seitennummer eingespeichert;
    d) im Kettungslisten-Speicher wird weiterhin mit dieser, der aktuellen virtuellen Seitennummer zugeordneten physikalischen Seitennummer als Distanzadresse eine zweite Eintragszeile ausgewählt und dort am Speicherplatz für die Seitennummer einer bei Ein-/Ausgabe-Operationen mit fortlaufender Adreßerhöhung im Programmablauf vorhergehenden Speicherseite die der vorhergehenden virtuellen Seitennummer zugeordnete physikalische Seitennummer gespeichert.
    Dieses Verfahren hat den Vorteil, daß sich der Inhalt des Kettungslisten-Speichers jeweils bei einer Einführung bzw. einer Änderung einer benutzerindividuellen Seitentafel allein auf Grund der dort notwendigen Daten erstellen läßt und somit ohne weiteres als eine bloße Erweiterung der Adreßübersetzurigsroutine in bestehende Datenverarbeitungssysteme mit virtueller Adressierung einzusetzen ist. Das läßt sich ohne weiteres durch einen privilegierten Befehl »Schreiben in Seitentafel« bewerkstelligen, mit dem eine Adreßübersetzungsroutine und darüber hinaus eine Präparierung der Einträge des Kettungslisten-Speichers auslösbar ist. Mit einem derartigen Befehl ist zu erreichen, daß die Kettungsliste und auch ihre Präparierung für das Betriebssystem unsichtbar bleiben.
    Eine Weiterbildung der Erfindung besteht darin, daß den laufenden physikalischen Seitennummern zugeordnet in weitere Speicherplätze der Eintragszeilen des Kettungslisten-Speichers aus der Seitentafel im Adreßübersetzungs-Speicher auch dort enthaltene Steuerbits übertragen werden. In diesem Fall können auch das Betriebssystem und die normalen Benutzerprogramme Nutzen aus den Einträgen in dem Kettungslisten-Speicl:jr ziehen. Das gilt z. B. bei sequentiell arbeitenden Benutzerdatenbefehlen und einer Kettung der Befehlsadresse bei Seitengrenzüberschreitungen. Weiterhin gilt auch allgemein, daß die Seitentafel während des Ablaufes von Eingabe-/Aus* gabeoperationen im Arbeitsspeicher nicht mehr resident zu sein braucht, da zu einer Seitentafel nur während des Ablaufes eines normalen Benutzerprogramms zugegriffen werden muß. Das bedeutet eine Entlastung des für das Betriebssystem vorgesehenen
DE19732314070 1973-01-18 1973-03-21 Verfahren und Schaltungsanordnung zum Erstellen der Einträge eines Kettungslistenspeichers in einem Verfahren und einer Schaltungsanordnung zum Durchfuhren von sequentiell ablaufenden Eingabe-/Ausgabeoperationen bei einer mit virtueller Adressierung arbeitenden Datenverarbeitungsanlage Expired DE2314070C3 (de)

Priority Applications (22)

Application Number Priority Date Filing Date Title
FR108891D FR108891A (de) 1973-01-18
DE19732302379 DE2302379C3 (de) 1973-01-18 1973-01-18 Schaltungsanordnung zum Durchführen von sequentiell ablaufenden Eingabe/Ausgabeoperationen bei einer mit virtueller Adressierung arbeitenden Datenverarbeitungsanlage
DE19732314070 DE2314070C3 (de) 1973-01-18 1973-03-21 Verfahren und Schaltungsanordnung zum Erstellen der Einträge eines Kettungslistenspeichers in einem Verfahren und einer Schaltungsanordnung zum Durchfuhren von sequentiell ablaufenden Eingabe-/Ausgabeoperationen bei einer mit virtueller Adressierung arbeitenden Datenverarbeitungsanlage
GB5705473A GB1447680A (en) 1973-01-18 1973-12-10 Data processing systems
FR7401140A FR2214923B1 (de) 1973-01-18 1974-01-14
LU69174D LU69174A1 (de) 1973-01-18 1974-01-16
NL7400649A NL7400649A (de) 1973-01-18 1974-01-17
BE139975A BE809930A (fr) 1973-01-18 1974-01-18 Procede et circuit pour l'execution d'operations d'entree/sortie se deroulant en sequence dans une installation de traitement des donnees
GB691174A GB1454357A (en) 1973-01-18 1974-02-15 Data processing systems
ZA00741249A ZA741249B (en) 1973-03-21 1974-02-26 Data processing system
IT4931174A IT1047014B (it) 1973-03-21 1974-03-15 Sistema e disposizione circuitale per esequire operazioni di immissione od emissione con decorso sequenziale in un impianto elaboratore di dati che lavora con formulazione di indirizzi virtuali
FR7409060A FR2222696B2 (de) 1973-01-18 1974-03-18
NL7403609A NL7403609A (de) 1973-01-18 1974-03-18
LU69663A LU69663A1 (de) 1973-01-18 1974-03-19
BR217774A BR7402177A (pt) 1973-03-21 1974-03-20 Aperfeicoamentos em sistemas de processamento de dados
BR211774A BR7402117D0 (pt) 1973-03-21 1974-03-20 Aperfeicoamentos em sistemas de processamento de dados
ES424482A ES424482A2 (es) 1973-03-21 1974-03-21 Procedimiento y disposicion de circuito para realizar opera-ciones de entrada-salida discurrentes de manera secuente en un sistema de tratamiento de datos operante con direcciona- miento virtual.
BE142284A BE812640R (fr) 1973-01-18 1974-03-21 Procede et circuit pour l'execution d'operations d'entree/sortie se deroulant en sequence dans une installation de traitement des donnees
DE19742444406 DE2444406A1 (de) 1973-01-18 1974-09-17 Verfahren zum durchfuehren von eingabe-/ausgabeoperationen bei einer mit virtueller adressierung arbeitenden datenverarbeitungsanlage
NL7510623A NL7510623A (nl) 1973-01-18 1975-09-09 Werkwijze voor het uitvoeren van invoer-/uit- voerhandelingen bij een informatieverwerkings- inrichting, die werkt met virtuele adressering.
FR7527583A FR2285658A2 (fr) 1973-01-18 1975-09-09 Procede et circuit pour l'execution d'operations d'entree/sortie se deroulant en sequence dans une installation de traitement des donnees qui fonctionne avec adressage virtuel
BE160129A BE833520R (fr) 1973-01-18 1975-09-17 Procede et circuit pour l'execution d'operations d'entree/sortie se deroulant en sequence dans une installation de traitement des donnees

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
DE19732302379 DE2302379C3 (de) 1973-01-18 1973-01-18 Schaltungsanordnung zum Durchführen von sequentiell ablaufenden Eingabe/Ausgabeoperationen bei einer mit virtueller Adressierung arbeitenden Datenverarbeitungsanlage
DE19732314070 DE2314070C3 (de) 1973-01-18 1973-03-21 Verfahren und Schaltungsanordnung zum Erstellen der Einträge eines Kettungslistenspeichers in einem Verfahren und einer Schaltungsanordnung zum Durchfuhren von sequentiell ablaufenden Eingabe-/Ausgabeoperationen bei einer mit virtueller Adressierung arbeitenden Datenverarbeitungsanlage
DE19742444406 DE2444406A1 (de) 1973-01-18 1974-09-17 Verfahren zum durchfuehren von eingabe-/ausgabeoperationen bei einer mit virtueller adressierung arbeitenden datenverarbeitungsanlage

Publications (3)

Publication Number Publication Date
DE2314070A1 DE2314070A1 (de) 1974-10-10
DE2314070B2 DE2314070B2 (de) 1979-11-29
DE2314070C3 true DE2314070C3 (de) 1980-08-07

Family

ID=27184986

Family Applications (3)

Application Number Title Priority Date Filing Date
DE19732302379 Expired DE2302379C3 (de) 1973-01-18 1973-01-18 Schaltungsanordnung zum Durchführen von sequentiell ablaufenden Eingabe/Ausgabeoperationen bei einer mit virtueller Adressierung arbeitenden Datenverarbeitungsanlage
DE19732314070 Expired DE2314070C3 (de) 1973-01-18 1973-03-21 Verfahren und Schaltungsanordnung zum Erstellen der Einträge eines Kettungslistenspeichers in einem Verfahren und einer Schaltungsanordnung zum Durchfuhren von sequentiell ablaufenden Eingabe-/Ausgabeoperationen bei einer mit virtueller Adressierung arbeitenden Datenverarbeitungsanlage
DE19742444406 Pending DE2444406A1 (de) 1973-01-18 1974-09-17 Verfahren zum durchfuehren von eingabe-/ausgabeoperationen bei einer mit virtueller adressierung arbeitenden datenverarbeitungsanlage

Family Applications Before (1)

Application Number Title Priority Date Filing Date
DE19732302379 Expired DE2302379C3 (de) 1973-01-18 1973-01-18 Schaltungsanordnung zum Durchführen von sequentiell ablaufenden Eingabe/Ausgabeoperationen bei einer mit virtueller Adressierung arbeitenden Datenverarbeitungsanlage

Family Applications After (1)

Application Number Title Priority Date Filing Date
DE19742444406 Pending DE2444406A1 (de) 1973-01-18 1974-09-17 Verfahren zum durchfuehren von eingabe-/ausgabeoperationen bei einer mit virtueller adressierung arbeitenden datenverarbeitungsanlage

Country Status (6)

Country Link
BE (3) BE809930A (de)
DE (3) DE2302379C3 (de)
FR (4) FR2214923B1 (de)
GB (2) GB1447680A (de)
LU (2) LU69174A1 (de)
NL (3) NL7400649A (de)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2437300A1 (fr) * 1978-09-26 1980-04-25 Cii Honeywell Bull Procede de detection anticipee de franchissement de limite de page et dispositif comportant application de ce procede

Also Published As

Publication number Publication date
NL7403609A (de) 1974-09-24
NL7510623A (nl) 1976-03-19
DE2302379A1 (de) 1974-08-15
GB1447680A (en) 1976-08-25
FR108891A (de)
FR2222696A2 (de) 1974-10-18
BE809930A (fr) 1974-07-18
GB1454357A (en) 1976-11-03
LU69174A1 (de) 1974-04-08
FR2285658A2 (fr) 1976-04-16
FR2285658B2 (de) 1978-09-08
LU69663A1 (de) 1974-10-17
DE2444406A1 (de) 1976-03-25
DE2302379B2 (de) 1977-03-31
FR2222696B2 (de) 1978-09-08
FR2214923A1 (de) 1974-08-19
DE2302379C3 (de) 1978-12-07
FR2214923B1 (de) 1978-08-04
DE2314070A1 (de) 1974-10-10
NL7400649A (de) 1974-07-22
BE812640R (fr) 1974-09-23
BE833520R (fr) 1976-03-17
DE2314070B2 (de) 1979-11-29

Similar Documents

Publication Publication Date Title
DE2451982C2 (de)
DE2322674C3 (de) Mikroprogramm-Steuereinrichtung
DE2117936B2 (de) Mikroprogrammgesteuerte Zentraleinheit eines elektronischen Datenverarbeitungssystems
DE2339636A1 (de) Programmsteuereinrichtung
DE2364408A1 (de) System zur erstellung von schaltungsanordnungen aus hochintegrierten chips
DE2360303C2 (de) Datenverarbeitungsanlage mit Adreßübersetzung für Ein-/Ausgabekanäle
DE2556661A1 (de) Steuerschaltung mit adressenerweiterung
DE2717658A1 (de) Anordnung zur ansteuerung eines mikroprogrammspeichers
DE2364254B2 (de) Schaltungsanordnung fuer datenverarbeitende geraete
DE3043100C2 (de)
DE2063195C2 (de) Verfahren und Einrichtung zur Operationssteuerung einer Anzahl von externen Datenspeichern
DE2213953C3 (de) Schaltungsanordnung zum Darstellen von Zeichen auf dem Bildschirm eines Sichtgerätes
DE2458525B2 (de) Speicheranordnung mit Haupt- und Pufferspeicher
DE2245284A1 (de) Datenverarbeitungsanlage
DE2403039C2 (de) Einrichtung zur Befehlsausführung in einer adressenerweiterten elektronischen Datenverarbeitungsanlage
DE2314070C3 (de) Verfahren und Schaltungsanordnung zum Erstellen der Einträge eines Kettungslistenspeichers in einem Verfahren und einer Schaltungsanordnung zum Durchfuhren von sequentiell ablaufenden Eingabe-/Ausgabeoperationen bei einer mit virtueller Adressierung arbeitenden Datenverarbeitungsanlage
DE2847737C2 (de) Schaltung zur Umsetzung virtueller Adressen in eine reelle Adresse von größerer Länge
DE1774896C2 (de) Datenverarbeitungsanlage mit einem Rechenwerk, einem Hauptspeicher und einem Aktivspeicher
DE2349590A1 (de) Vorrichtung zur datenverarbeitung
DE2601379C3 (de) Schaltungsanordnung zum Umwandeln virtueller Adressen in reelle Adressen
DE1499284A1 (de) Datenbearbeitungsanlage
DE2234982A1 (de) Expanderschaltung fuer ein programmierbares steuergeraet
DE1524264C3 (de) Einrichtung zur Erzeugung einer Bildaufzeichnung
DE2150292C2 (de) Mikroprogrammgesteuerte Datenverarbeitungsanlage mit überlagerter Ausführung und Entnahme von Befehlen
DE2017879B2 (de) Speicheranordnung mit freiem Zugriff

Legal Events

Date Code Title Description
C3 Grant after two publication steps (3rd publication)
8340 Patent of addition ceased/non-payment of fee of main patent