DE2948285A1 - Adressensteuersystem fuer softwaresimulation - Google Patents

Adressensteuersystem fuer softwaresimulation

Info

Publication number
DE2948285A1
DE2948285A1 DE19792948285 DE2948285A DE2948285A1 DE 2948285 A1 DE2948285 A1 DE 2948285A1 DE 19792948285 DE19792948285 DE 19792948285 DE 2948285 A DE2948285 A DE 2948285A DE 2948285 A1 DE2948285 A1 DE 2948285A1
Authority
DE
Germany
Prior art keywords
address
program
register
virtual machine
address translation
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.)
Granted
Application number
DE19792948285
Other languages
English (en)
Other versions
DE2948285C2 (de
Inventor
Fujio Ikegami
Sabzro Kaneda
Kazuyuki Shimizu
Takamitsu Tsuchimoto
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Publication of DE2948285A1 publication Critical patent/DE2948285A1/de
Application granted granted Critical
Publication of DE2948285C2 publication Critical patent/DE2948285C2/de
Expired legal-status Critical Current

Links

Classifications

    • 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/1027Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB]
    • G06F12/1036Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB] for multiple virtual address spaces, e.g. segmentation

Description

Adressensteuersystem für Softwaresimulation Priorität: 1. Dezember 1978 Japan 14883V1978
Die Erfindung betrifft ein Adressensteuersystem für Softwaresimulation und insbesondere ein Adressensteuersystem für Softwaresimulation in einem virtuellen Maschinensystem mit einer virtuellen Speicherfunktion.
Es sind Versuche unternommen worden, das Konzept einer virtuellen Maschine in die Praxis umzusetzen, siehe "IBM System Journal" 1972, Nr. 2. Die Nützlichkeit einer virtuellen Maschine kann wie folgt zusammengefaßt werden:
1) Es ist möglich, unter Ausnutzung einer Hardware eine solche Umgebung zu schaffen, daß jeder von mehreren sich an einem Rechnersystem beteiligenden Benutzern das gesamte System für sich selbst benutzt.
2) Es ist möglich, Rechnersysteme mit leicht unterschiedlichem Aufbau oder Systemkonfiguration virtuell zu schaffen. Die Verwendung einer virtuellen Maschine ermöglicht demgemäß einen simultanen Lauf von Programmen, die unter verschiedenen Betriebssystemen laufen, und erlaubt eine flexiblere Änderung der Systemkonfiguration. Der Betriebszustand des Systems kann des weiteren überwacht werden und jeder Benutzer ist frei, die Testfunktion der Maschine zu verwenden.
Fig. 1 zeigt schematisch das Konzept eines üblichen bisher verwendeten Rechnersystems. Fig. 2 zeigt schematisch das Konzept des virtuellen Maschinensystems. In Fig. 1 und 2 bedeutet die reale Maschine Rechnerhardware. Da mehrere Benutzerprogramme unter dem Betriebssystem (OS) laufen, wird ein Rechnersystemelement (ein zentraler Prozessor, ein Hauptspeicher, Kanäle, eine Ein/Ausgabe-Steuereinrichtung, eine Ein/Ausgabevorrichtung und ein Systembedienungsplatz) so geleitet,
030023/0878
daß die jeweiligen Programme daran Anteil haben. Zwischen dem Betriebssystem und der realen Maschine ist eine Begriffs-Schnittstelle, mit Hardware-Schnittstelle bezeichnet, vorgesehen und zwischen den Benutzerprogrammen und dem Betriebssystem ist eine Schnittstelle, die als Programm/Betriebssystem-Schnittstelle bezeichnet ist, vorgesehen. Bei dem virtuellen Maschinensystem steuert ein Programm, das mit virtuellem Maschinenmonitor (VMM) bezeichnet ist, mehrere Betriebssysteme, so daß das Systemelement unter den jeweiligen Programmen geteilt wird. In Fig. 2 entsprechen die Blöcke mit gestrichelten Linien jeweils einem üblichen Rechnersystem und beziehen sich jeweils auf eine virtuelle Maschine (VM). Unter dem virtuellen Maschinensystem können gleichzeitig mehrere virtuelle Maschinen laufen.
Die Mehrprogrammtechniken werden heute zum wirksamen Laufen eines Rechnersystems ausgenutzt und die Mehrprogrammtechniken erlauben eine Beteiligung an dem Systemelement durch die jeweiligen Programme. Das Systemelement wird durch das Betriebssystem gesteuert und kann durch einen Befehl Zugriff erhalten, der im allgemeinen als "privilegierter Befehl" bezeichnet wird, den nur das Betriebssystem ausgeben kann.
Jedes Benutzerprogramm ist einer "Problembetriebsart" zugewiesen. Wenn das Benutzerprogramm den vorstehend erwähnten privilegierten Befehl ausgibt, wird eine Programmunterbrechung, mit "privilegierte Betriebsausnähme" bezeichnet, aufgefunden.
Bei einer virtuellen Maschine können mehrere übliche Betriebssysteme gleichzeitig laufen. Polglich wird das Systemelement, das durch die Betriebssysteme in der Vergangenheit gesteuert worden ist, durch das Programm gesteuert, auf das sich der virtuelle Maschinenmonitor (VMM) bezieht. Die Benutzerprogramme einschließlich der
030023/0878
verwendeten Betriebssysteme werden alle der "Problembetriebsart" zugewiesen und nur der virtuelle Maschinenmonitor arbeitet in einer "privilegierten Betriebsart". Wenn das Betriebssystem jedes Benutzers bestrebt ist, den "privilegierten Befehl" auszuführen, wird demgemäß eine
Programmunterbrechung festgestellt und eine Ausführungssteuerung wird auf den virtuellen Maschinenmonitor übertragen, der diesen "privilegierten Befehl" simuliert.
Der virtuelle Maschinenmonitor hat die folgenden Funktionen: Der virtuelle Maschinenmonitor:
(1) steuert die Benutzerprogramme (einschließlich der Betriebssysteme), um das Systemelement wirksam aufzuteilen,
(2) simuliert den "privilegierten Befehl" von jedem Betriebssystem und
(3) empfängt alle Unterbrechungen (einschließlich einer Ein/Ausgabeunterbrechung, einer äußeren Unterbrechung und einer Unterbrechung, die mit einem virtuellen Speicher verbunden ist) und führt eine Verarbeitung entsprechend den Unterbrechungssystemselementen aus und sendet notwendigenfalls die Unterbrechung zu jedem Betriebssystem.
Die virtuelle Maschine hat die voranstehend erwähnten Vorteile, jedoch wird beim Lauf eines Programms unter der virtuellen Maschine eine Leistungsverschlechterung in gewissem Umfang aufgrund eines für die virtuelle Maschine besonderen organisatorischen Aufwands im Vergleich mit dem Lauf desselben Programms unter dem Betriebssystem eines üblichen, bisher verwendeten
Rechners verursacht. Der organisatorische Aufwand kann in direkten und indirekten organisatorischen Aufwand in folgender Weise geteilt werden:
030023/0878
(1) Direkter organisatorischer Aufwand.
Dieser tritt hauptsächlich im Verlauf der Verarbeitung durch Software des virtuellen Maschinenmonitors auf und diese Art des organisatorischen Aufwands ist wie folgt:
(a) Organisatorischer Aufwand durch Simulation des privilegierten Befehls.
Wie oben beschrieben wurde, ist jedes Benutzerprogramm einschließlich des dafür benutzten Betriebssystems der "Problembetriebsart" zugewiesen und die durch das Betriebssystem ausgegebenen privilegierten Befehle werden alle durch den virtuellen Maschinenmonitor simuliert.
(b) Organisatorischer Aufwand zum Schalten jedes Benutzerprogramms.
(c) Organisatorischer Aufwand zum Unterstützen einer virtuellen Speicherfunktion des Betriebssystems.
(d) Organisatorischer Aufwand zum Umsetzen eines Kanalprogramms.
Ein Kanalprogramm zum Starten einer Ein/Ausgabevorrichtung durch das Betriebssystem ist eine logische Adresse zu einem Hauptrechner. Der virtuelle Maschinenmonitor setzt deshalb die logische Adresse in eine reale Adresse des Hauptrechners um.
(e) Organisatorischer Aufwand zum Unterstützen von Unt erbrechungen.
Bei der virtuellen Maschine wird jede Unterbrechung durch den virtuellen Maschinenmonitor indiziert, so daß, falls diese Unterbrechung erforderlich ist, sie in das Betriebssystem reflektiert
werden muß. Diese Verarbeitung wird durch den virtuellen Maschinenmonitor ausgeführt, (f) Organisatorischer Aufwand zum Unterstützen der Bedienungsplatzfunktion.
Der virtuelle Maschinenmonitor unterstützt die Bedienungsplatzfunktion einschließlich der Testfunk tion.
030023/0878
(2) Indirekter organisatorischer Aufwand Bei dem bestehenden Betriebssystem werden verschiedene Algorithmen in das System der Zuweisung und Leitung des Systemelements eingefügt, so daß dessen Verfügbarkeit erhöht wird. Beim Lauf unter dem virtuellen
Maschinensystem können diese Algorithmen Jedoch in bestimmten Fällen ein entgegengesetztes Ergebnis erzeugen.
Nachfolgend wird der Stand der Technik in Verbindung mit der Simulation des privilegierten Befehls beschrieben.
Da jedes Benutzerprogramm einschließlich des dafür verwendeten Betriebssystems der "Problembetriebsart", wie oben beschrieben, zugewiesen ist, werden die durch das Betriebssystem verwendeten privilegierten Befehle alle als "privilegierte Betriebsausnahmen11 festgestellt und in dem virtuellen Maschinenmonitor (VMM) indiziert. Der virtuelle Maschinenmonitor (VMM) simuliert dann den privilegierten Befehl in der folgenden Weise. Wenn eine Programmunterbrechung der "privilegierten Betriebsausnahme" festgestellt wird, werden ein Wort des alten Programmzustands (PSW),ein Unterbrechnungskode usw. in einen Vorsatzbereich geladen. Nach dem Sicherstellen eines Universalregisters in einem Arbeitsbereich des virtuellen Maschinenmonitors (VMM) liest der virtuelle Maschinenmonitor (VMM) von einem Bereich einer virtuellen Maschine (VM) einen Operationskode eines Befehls, der die privilegierte Betriebsausnahme von dem Wort des alten Programmzustands ausgegeben hat, und überträgt nach einer Operandenadressenberechnung entsprechend dem Betriebskode von dem Inhalt eines Felds des Befehls und des sichergestellten Universalregisters eine Steuerung zu der Befehlsverarbeitungroutine entsprechend dem Betriebskode.
Beider Befehlsverarbeitungsroutine wird ein erforderlicher Operand ausgelesen oder eingeschrieben oder aus dem Bereich der virtuellen Maschine (VM) ausgelesen oder darin eingeschrieben.
030023/0878
Pig. 3 zeigt ein Prozeßdiagramm des virtuellen Maschinenmonitors (VMM). In dem Flußdiagramm der Fig. 3 ist die Verarbeitung der Schriftte Θ ,(2) und Q) von einem Lesen/Schreiben eines Operanden in dem Programmbereich der virtuellen Maschine (VM) begleitet. Das Programm des virtuellen Maschinenmonitors (VMM) arbeitet in der
realen Adressenbetriebsart zum Unterstützen eines virtuellen Speichers des Betriebssystems. Bei der Verarbeitung der Schritte (i) , © und (f) , wenn zu dem Programmbereich der virtuellen Maschine (VM) zugegriffen wird, wird demgemäß die logische Adresse des Operanden in eine reale Adresse unter Verwendung eines Befehls umgesetzt, der eine Adreßumsetzung (einen Lastbefehl der realen Adresse) explizit befiehlt, und dann erfolgt der Zugriff zu dem Hauptspeicher mit der auf diese Weise erhaltenen realen Adresse. Da der Lastbefehl der realen Adresse üblicherweise nicht ein Adreßumsetzregister (TLB) zum Laden eines Paars logischer realer Adressen verwendet, erfolgt zu einer Segmenttabelle und einer Seitentabelle in dem Hauptspeicher immer ein Zugriff für eine dynamische Adreßumsetzung (DAT), was zu einem erheblichen organisatorischen Aufwand führt.
Insbesondere im Falle eines Zugriffs mehrerer Operanden verschiedener Stellen durch einen Befehl wird der für die dynamische Adreßumsetzung (DAT) notwendige organisatorische Aufwand bemerkenswert.
Der Erfindung liegt die Aufgabe zugrunde, ein Adressensteuersystem für Softwaresimulation zu schaffen, durch das der organisatorische Aufwand aufgrund der Adreßumsetzung während der Simulation eines privilegierten Befehls verringert wird.
Diese Aufgabe wird durch die Merkmale des Kennzeichens des Anspruchs 1 gelöst. Weiterbildungen der Erfindung sind in den Unteransprüchen angegeben.
030023/0878
Die Erfindung wird beispielhaft anhand der Zeichnung beschrieben, in der sind
Fig. 1 eine Darstellung des Konzepts eines bisher verwendeten allgemeinen Maschinensystems, Fig. 2 eine Darstellung des Konzepts eines virtuellen
Maschinensystems,
Fig. 3 ein Flußdiagramm der Verarbeitung eines virtuellen Maschinenmonitors (VMM),
Fig. 4 ein Blockschaltbild des Aufbaus einer Adressensteuerschaltung einer ersten Ausführungsform der
Erfindung,
Fig. 5 ein Blockschaltbild des Aufbaus eines Adreßumsetzkreises nach der Erfindung,
Fig. 6 eine Darstellung einer Steuerinformation einer dynamischen Adreßumsetzung (DAT), die in ein Steuerregister geladen ist,
Fig. 7 eine Darstellung des Inhalts eines Vorsatzregisters, Fig. 8 ein Blockschaltbild eines Aufbaus einer Adressensteuerschaltung einer zweiten Ausführungsform der Erfindung und
Fig. 9 eine Darstellung eines Beispiels des Inhalts eines Registers während der Ausführung eines Ubertragungszeichenbefehls.
In Fig. 4 bezeichnet 1 ein erstes Wort eines Registers für ein Programmzustandswort (PSW), 2 ein zweites Wort des PSW-Registers, 3 ein Operanden- 1 -Adressenregister, 4- ein Operanden- 2 -Adressenregister, 5 eine Verriegelung einer dynamischen Adreßumsetzung einer virtuellen Maschine (VMDAT), 6 eine Statusanzeigeverriegelung, 7 bis 9 UND-Gates und 10 ein ODER-Gate. Nach dem Feststellen einer Programmausnahme während eines Benutzerprogramms (einschließlich eines Betriebssystems) tritt eine Unterbrechung auf und entsprechend der Adreßumsetzsteuerinformation in dem Programmzustandswort, das zu dieser Zeit die dynamische Adreßumsetzung (DAT) steuert, wird die VMDAT-Verriegelung 5 eingestellt. Während des Betriebs
030023/0878
- ίο -
jedes Benutzerprogramms, wenn ein Bit (EC-Bit), das eine erweiterte Steuerbetriebsart anzeigt, und ein Bit (T-Bit), das eine Adreßumsetzung anzeigt, beide "1" sind, wird die VMDAT-Verriegelung 5 zum Zeitpunkt des Auftretens eines Zustandsübergangs von dem Zustand der virtuellen Maschine (VM) zu dem Zustand des virtuellen Maschinenmonitors (VMM) eingestellt, d.h. zum Zeitpunkt des Auftretens einer Unterbrechung in dem VM-Zustand. Dann findet ein Austausch des Programmstatusworts statt, um ein Programmstatuswort des virtuellen Maschinenmonitors (VMM) in Jedes der PSW-Register 1 und 2 zu laden. Wenn die Programmausführung festgestellt ist, wird ein Unterbrechungs(INT)-Eingang der Zustandsanzeigevorrichtung "1" und die Zustandsanzeigeverriegelung 6 gibt "1" ab, was den Zustand des virtuellen Maschinenmonitors (VMM) anzeigt. Die Zustandsanzeigeverriegelung 6 ist in der Lage, "1" an der VM-Seite und "0" an der VMM-Seite durch einen Rückführbefehl (RTN) abzugeben, der für die Übertragung der Steuerung zu der virtuellen Maschine (VM) nach Beendigung der Simulation durch den virtuellen Maschinenmonitor (VMM) ausgegeben wird. Der virtuelle Maschinenmonitor (VMM) steuert das Bit 0 des Operandenadressenregisters und setzt, wenn eine Adreßumsetzung erforderlich ist, den Wert des Bits 0 auf "1". Durch diese Einstellung zeigt die Zustandsanzeigeverriegelung 6 den Zustand des virtuellen Maschinenmonitors (VMM) an, d.h. "1" am Ausgang der VMM-Seite. Wenn das Eit 0 des Operandenadressenregisters "1" ist, wird zu der Operandenadresse entsprechend
zugegriffen, wodurch das UND-Gate 8 oder 9 entsprechend der zugegriffenen Operandenadresse M1" abgibt, während von dem ODER-Gate 10 ein Signal Tx abgegeben wird, das die Ausführung einer Adreßumsetzung unter Verwendung einer Adreßumsetzinformation während des VM-Programmbetriebs anzeigt. Die Operandenadresse (logische Adresse) führt somit eine Adreßumsetzung durch Zugriff unter Ausnutzung der Adreßumsetzinformation der virtuellen Maschine, eines Adreßumsetzregisters (TCB) oder einer in der virtuellen Maschine verwendeten Umsetztabelle aus.
030023/0878
In Fig. 5 bezeichnet 11 ein Umsetzsteuerinformationsregister einer derzeitigen Adresse, 12 ein Umsetzsteuerinformationsregister einer vorangehenden Adresse, 13 einen Wähler für eine Segmenttabellenanfangsidentifizierung (STO-ID), 14- eine Adreßumsetzverarbeitungseinheit mit der DAT-Tabelle, 15 eine Vorsatzverarbeitungseinheit, 16 ein Absolutadressenregister, 17 einen Komparator, 18 eine Sammelschiene zum Übertragen des Ausgangssignals von einem später zu beschreibenden Identifizierungs(ID)-Register 28 zu dem Komparator 17 und einem später zu beschreibenden Adreßumsetzregister (TLB) 26, 19 eine Sammelschiene für eine reale Adresse, die durch die Adreßumsetzverarbeitungseinheit 14- umgesetzt wird, 20 einen Teil einer logischen Adresse, die umgesetzt werden soll und zum Adressieren des Adreßumsetzregisters 26 verwendet wird, 21 einen Teil der logischen Adresse, die umgesetzt werden soll und die mit Daten eines logischen Adressenfeldes verglichen wird, das von dem Adreßumsetzregister 26 gelesen wird, 22 ein Bit niederer Ordnung der logischen Adresse, 23 eine Sammelschiene zum übertragen eines logischen Adressenfeldes eines Einsprungs, der von dem Adreßumsetzregister 28 zu einem später zu beschreibenden Komparator 29 gelesen wird, 24 eine Sammelschiene zum Übertragen eines Identifizierungsfelds des Einsprungs, der von dem Adreßumsetzregister 26 zu dem Komparator 17 gelesen wird, 25 eine Sammelschiene zum übertragen eines realen Adressenfeldes des Einsprungs, der von dem Adreßumsetzregister 26 zu einem später zu beschreibenden Register 31 gelesen wird, 26 ein Adreß-Umsetzregister (TLB), das durch einen Speicher gebildet ist, der in einer zentralen Verarbeitungseinheit (CPU) zum Ausführen einer dynamischen Adreßumsetzung mit hoher Geschwindigkeit untergebracht ist, 27 ein Pufferregister zum Empfangen des von dem Adreßumsetzregister 26 gelesenen Einsprungs, 28 ein ID-Register, 29 einen Komparator, 30 einen UND-Kreis, 3I ein reales Adressenregister, 32 ein Gate, 33 ein Signal, das einen Fehler der Umsetzung durch das Adreßumsetzregister 26 anzeigt,
030023/0878
34 ein Signal, das einen Erfolg der Umsetzung durch das Adreßumsetzregister 26 anzeigt, 35 ein Adresseninformationsauswahlsignal, 36 einen Inverter, 37 den Ausgang des Inverters 36» 38 eine Sammelschiene zum Übertragen des Inhalts des Registers 11 zu dem Register 12, 39 einen Dekodierer, 40 eine Sammelschiene für eine Adressensteuerinformation, die durch ein Signal Tx ausgewählt ist, 41 eine Sammelschiene zum Übertragen des Ausgangssignals von dem realen Adressenregister zu der Vorsatzverarbeitungseinheit 15 und dem Adreßumsetzregister 26, 42 ein Register zum Halten eines Vorsat zwerts eines Programms während der Verarbeitung, ein Register zum Halten des Inhalts, der dorthin von dem Register 42 bei der Zustandsübertragung von der virtuellen Maschine (VM) zu dem virtuellen Maschinenmonitor (VMM) verschoben worden ist, 44 eine Sammelschiene zum übertragen eines Vorsatzwerts, der durch das Signal Tx 35 zu der Vorsatzverarbeitungseinheit I5 ausgewählt worden ist, 45 ein Gate, 46 ein Steuersignal, das "1" wird, wenn die Adreßumsetzung durch die dynamische Adreßumsetztabelle (DAT-Tabelle) fortschreitet, und 47 ein logisches Adressenregister.
Gemäß Fig. 5 speichert das Umsetzsteuerinformationsregister 11 der derzeitigen Adresse das Umsetzbit (T-Bit) und das EC-Bit des derzeitigen Programmzustandsworts und die dynamische Adreßumsetzsteuerinformation der Steuerregister CRO und CR1. Das Umsetzsteuerinformationsregister 12 der vorangehenden Adresse lädt den Inhalt des Umsetzsteuerinformationsregisters 11 beim Zustandsübergang von der virtuellen Maschine (VM) zu dem virtuellen Maschinenmonitor (VMM). Der ID-Wähler 13 besteht aus einem Segmenttabellen-Anfangsstapelkreis und einem Steuerkreis dafür und spricht auf die Adressensteuerinformation des Registers 2 an, um die dazu entsprechende ID-Information auszuwählen. Die Adreßumsetzverarbeitungseinheit 14 mit der DAT-Tabelle ist eine Verarbeitungssteuereinheit, die eine dynamische Adreßumsetzung unter
030023/0878
Verwendung der DAT-Tabelle in einem Hauptspeicher ausführt, wenn die Adreßumsetzung durch den Adreßumsetzspeicher 26 bei einem Fehler aufgehört hat. Als in diesem Fall verwendete Adreßumsetzinformation wird die Information des Registers 11 oder 12 verwendet, die durch das Signal Tx 35 ausgewählt ist. Die zum Zeitpunkt der Vervollständigung der Adreßumsetzung durch die DAT-Tabelle umgesetzte reale Adresse wird in das Adreßumsetzregister 26 zusammen mit einem Teil der logischen Adresse auf der Sammelschiene 21 und der Identifizierung auf der Sammelschiene 18 geschrieben.
Die Vorsatzverarbeitungseinheit 15 führt eine Vorsatzverarbeitung unter Verwendung des Werts eines Vorsatzregisters aus, das durch das Signal Tx 35 ausgewählt ist. Die durch die Vorsatzverarbeitungseinheit 15 umgesetzte Adresse wird in ein Bit hoher Ordnung des Registers 16 eingestellt und ein Bit niederer Ordnung der logischen Adresse 22 wird in ein Bit niederer Ordnung des Registers eingesetzt. Durch eine Adresse in dem Register 16 erfolgt der Zugriff zu dem Hauptspeicher.
Der Komparator 17 vergleicht die ID-Information, die von dem ID-Wähler 13 ausgelesen ist, mit einer Information, die von dem Adreßumsetzregister 26 ausgelesen ist, und gibt "1" im Falle der Übereinstimmung ab. Der Komparator vergleicht einen Teil der umzusetzenden logischen Adresse und des logischen Adressenfelds des Leseeinsprungs des Adreßumsetzregisters und gibt "1" im Falle der Überein-Stimmung ab.
Die Anordnung der Fig. 5 unterscheidet sich von der üblichen Anordnung dadurch, daß das Register zum Laden der Adreßumsetzsteuerinformation durch das Adreßinformationswählsignal Tx 35 ausgewählt wird. Wenn das Signal Tx "1" ist, werden eine Information des Umsetzsteuerinformationsregisters 12 der vorangehenden Adresse und eine Information
030023/Ü878
des Registers 43 zum Halten des vorangehenden Vorsatzwerts gewählt. Dies ermöglicht, daß der virtuelle Maschinenmonitor (VMM) eine Adreßumsetzung unter Verwendung einer Adresseninformation der virtuellen Maschine (VM) ausführt.
Wenn das Signal Tx "0" ist, werden die Information des Um3etzsteuerinformationsregisters 11 der derzeitigen Adresse und die Information des Registers 42 zum Halten des derzeitigen Vorsatzwerts gewählt. Die Adressierung beim Stand der Technik entspricht dem Fall, bei dem das Signal Tx "O" ist.
Wenn das Programm des virtuellen Maschinenmonitors (VMM) einen Operanden in dem Programm der virtuellen Maschine (VM), das unmittelbar davor ausgeführt worden ist, verwendet, kann die Adressenumsetzung entsprechend dem Operanden unter Verwendung des Adreßumsetzregisters ausgeführt werden.
20
Fig. 6 zeigt eine dynamische Adreßumsetzsteuerinformation, die in die Steuerregister CRO und CR1 des Umsetzsteuerinformationsregisters 11 der derzeitigen Adresse eingebracht ist. Wie Fig. 6 zeigt, belegt das Steuerregister CR1 die ST-Länge in Bits O bis 7 und die ST-Anfangsadresse in Bits 8 bis 25. Das Steuerregister CRO belegt die Seitenabmessung (PS) in Bits 8 und 9 und die Segmentabmessung (SS) in Bits 11 und 12.
JO Die Steuerung zum Erreichen der dynamischen Adreßumsetzung auf der Basis der in die Steuerregister eingesetzten Information wird nicht im einzelnen beschrieben, vielmehr ist diese bekannt aus "IBM System/370 Principles of Operation, GA 22-700, File No. S/370-01".
Fig. 7 zeigt den Inhalt des Vorsatzregisters 42. Wie Fig. zeigt, ist der Vorsatzwert des Programms in Bits 8 bis gehalten.
030023/0878
In Fig. 8 bezeichnen dieselben Bezugszeichen wie in Fig. 4 dieselben Teile und 50 bezeichnet ein Befehlsregister und 5^ und 52 Komparatoren. Bei dieser Ausführungsform wird bestimmt, ob eine reale Adressensteuerung halbfest oder eine Adreßumsetzsteuerung durch die VMDAT-Verriegelung 5 in Reaktion auf die Registerzahl, die in einem Registeranzeigefeld eines Befehls in dem Zustand des virtuellen Naschinenmonitors (VMM) aufgezeigt ist, ausgeführt wird.
Es wird beispielsweise angenommen, daß Universalregister 0 bis 3 der Adressensteuerung des derzeitigen Programmzustandsworts unterworfen sind und daß Universalregister 4 bis 15 der Adreßumsetzsteuerung durch die VMDAT-Verriegelung unterworfen sind.
Gemäß Fig. 8 wird durch den Komparator 51 geprüft, ob die durch einen Teil B1 des Befehlsregisters 50 angezeigte Registerzahl in den Zahlen 4 bis 15 des Universalregisters enthalten ist. Des weiteren wird durch den Komparator 52 geprüft, ob die durch einen Teil B2 des Befehlsregisters 50 angezeigte Registerzahl in den Zahlen 4 bis 15 des Universalregisters enthalten ist.
Wenn die Zustandsanzeigeverriegelung 6 den Zustand des virtuellen Maschinenmonitors (VMM) anzeigt ("1" am Ausgang der VMM-Seite) und die Operandenregisterzahl in den Zahlen 4 bis 15 des Universalregisters enthalten ist, wird zu der entsprechenden Operandenadresse zugegriffen, wodurch das Ausgangssignal von dem entsprechenden UND-Gate 8 oder 9 "1" wird, während das Adresseninformationsauswahlsignal Tx von dem ODER-Gate 10 abgeleitet wird. Der nachfolgende Betrieb ist derselbe wie bei der ersten Ausführungsform.
Gemäß Fig. 9 hat der Ubertragungszeichenbefehl (MVC) die Funktion, durch welche Daten eines Bereichs in einem
030023/0878
Hauptspeicher entsprechend der Bytezahl, die in einem Teil V unter Verwendung des Werts als Anfangsadresse, angezeigt ist, daß der Wert des Teils D2 zu dem Wert des Universalregisters addiert wird, das durch den Teil B2 (Operanden 2) angezeigt ist, zu einem Bereich des Hauptspeichers unter Verwendung des Werts als Anfangsadresse übertragen wird, daß der Wert des Teils D1 zu dem Wert des Universalregisters addiert wird, das durch den Teil B1 (Operanden 1) angezeigt ist. Gemäß Fig. 9 ist der Wert des Teils B1 "1" und nicht in den Zahlen 4 bis 15 des Universalregisters enthalten, so daß das Ausgangssignal des Komparators 5I "O" wird und das Signal auch "O" wird, was dazu führt, daß der Operand 1 der Adreßumsetzsteuerung durch den virtuellen Maschinenmonitor (VMM) unterworfen wird. Da der Wert des Teils B2 "4" ist und in den Zahlen 4 bis 15 des Universalregisters enthalten ist, wird der zweite Operand der Umsetzungssteuerung der unmittelbar vorangehenden Adresse durch die virtuelle Maschine (VM) unterworfen. Wenn der Wert der VMDAT-Verriegelung "O" ist, wird eine reale Adresse "00002567" erzeugt, und wenn der Wert der VMDAT-Verriegelung "1" ist, wird eine logische Adresse "00002567" erzeugt. Bei dieser zweiten Ausführungsform kann die Wechselbeziehung zwischen der Registerzahl und der Adreßumsetzsteuerung willkürlich entsprechend der Verarbeitung geändert werden.
Vorangehend wurde beschrieben, daß gemäß der Erfindung, wenn ein Simulatorprogramm einen Befehl eines zu
JO simulierenden Programms simuliert, die Adreßumsetzung einer Operandenadresse des zu simulierenden Programms unter Verwendung eines Adreßumsetzregisters ausgeführt werden kann, so daß der organisatorische Aufwand für die Adreßumsetzung bei der Ausführung des Simulatorprogramms wesentlich verringert werden kann. Obwohl die Erfindung im Zusammenhang mit dem Fall beschrieben wurde, bei dem die Ausführung eines privilegierten Befehls in der
030023/0878
virtuellen Maschine durch Software, Programm des virtuellen Maschinenmonitors (VMM) genannt, simuliert ist, ist es ersichtlich, daß die Erfindung auch in den Fällen der Simulierung der Ausführung eines Befehls nicht nur durch die virtuelle Maschine, sondern auch durch Software angewendet werden kann.
030023/0878

Claims (4)

  1. REINLÄNDER & 3ERNHARDT 29Λ8285
    PATENTANWÄLTE
    6/410 Orthstraße12
    D-8000 München GO
    FUJITSU LIMITED
    No.1015, Kamikodanaka
    Nakahara-ku, Kawasaki-shi
    Kanagawa 211, Japan
    Patentansprüche
    Λ.) Adressensteuersystem für Softwaresimulation in einem Datenprozessor mit einer Umsetzvorrichtung zum Koordinieren einer Adresse in einem Programm mit einer Hauptspeicheradresse, wobei die Ausführung eines Befehls eines zu simulierenden Programms durch die Ausführung von ein oder mehreren Befehlen des Simulatorprogramms simuliert wird,
    gekennzeichnet durch
    erste Einrichtungen zum Halten einer Information zum Unterscheiden des Betriebszustands des Simulatorprogramms und des Betriebszustands des zu simulierenden Programms,
    zweite Einrichtungen zum Halten einer Steuerinformation zum Koordinieren der Adresse in dem zu simulierenden Programm mit der Adresse im Hauptprogramm im Falle der Simulierung des zu simulierenden Programms durch das Simulatorprogramm,
    dritte Einrichtungen zum Halten einer Steuerinformation zum Koordinieren der Adresse in dem Simulatorprogramm mit der Adresse in dem Hauptspeicher und
    vierte Einrichtungen zum Anzeigen der Auswahl entweder der zweiten oder der dritten Einrichtungen während des Betriebs dea Simulatorprogramms,
    wobei die Adreßumsetzung durch die ersten, die zweiten, die dritten und die vierten Einrichtungen gesteuert wird.
    030023/0878
  2. 2. System nach Anspruch 1, dadurch gekennzeichnet, daß eine Universalregisterzahl für eine Operandenadressenberechnung als vierte Einrichtungen verwendet ist.
  3. 3. System nach Anspruch 1, dadurch gekennzeichnet, daß eine Information eines Teils der Operandenadresse als vierte Einrichtungen verwendet ist.
  4. 4. System nach Anspruch 2 oder 3, dadurch gekennzeichnet, daß die Adreßumsetzung unter Verwendung der in den zweiten Einrichtungen gehaltenen Adressen3teuerinformation in dem Fall ausgeführt wird, in dem die Umsetzvorrichtung zum Koordinieren der Adresse in dem Programm mit der Hauptspeicheradresse durch eine Adreßumsetzvorrichtung eines virtuellen Speichersysteme ausgeführt wird, wenn die ersten Einrichtungen den Betriebszustand des Simulatorprogramms anzeigen, die zweiten Einrichtungen eine Adreßumsetzbetriebsart anzeigen und die vierten Einrichtungen eine Adreßumsetzung anzeigen.
    030023/0878
DE2948285A 1978-12-01 1979-11-30 Adressensteuereinrichtung für einen Datenprozessor Expired DE2948285C2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP14883478A JPS5576447A (en) 1978-12-01 1978-12-01 Address control system for software simulation

Publications (2)

Publication Number Publication Date
DE2948285A1 true DE2948285A1 (de) 1980-06-04
DE2948285C2 DE2948285C2 (de) 1984-07-12

Family

ID=15461768

Family Applications (1)

Application Number Title Priority Date Filing Date
DE2948285A Expired DE2948285C2 (de) 1978-12-01 1979-11-30 Adressensteuereinrichtung für einen Datenprozessor

Country Status (7)

Country Link
US (1) US4347565A (de)
JP (1) JPS5576447A (de)
AU (1) AU530696B2 (de)
CA (1) CA1134052A (de)
DE (1) DE2948285C2 (de)
FR (1) FR2443100A1 (de)
GB (1) GB2043309B (de)

Families Citing this family (130)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS55112651A (en) * 1979-02-21 1980-08-30 Fujitsu Ltd Virtual computer system
JPS5687282A (en) * 1979-12-14 1981-07-15 Nec Corp Data processor
JPS57143782A (en) * 1981-03-03 1982-09-06 Toshiba Corp Information processor
US4456954A (en) * 1981-06-15 1984-06-26 International Business Machines Corporation Virtual machine system with guest architecture emulation using hardware TLB's for plural level address translations
JPS5938992A (ja) * 1982-08-26 1984-03-03 Nec Corp 仮想計算機システム
US4530052A (en) * 1982-10-14 1985-07-16 Honeywell Information Systems Inc. Apparatus and method for a data processing unit sharing a plurality of operating systems
US5109522A (en) * 1983-06-02 1992-04-28 Amdahl Corporation Data processing system with logical processing facility supporting a plurality of system control programs for production operation
US4589092A (en) * 1983-12-12 1986-05-13 International Business Machines Corporation Data buffer having separate lock bit storage array
US4779188A (en) * 1983-12-14 1988-10-18 International Business Machines Corporation Selective guest system purge control
US4695950A (en) * 1984-09-17 1987-09-22 International Business Machines Corporation Fast two-level dynamic address translation method and means
US4975836A (en) * 1984-12-19 1990-12-04 Hitachi, Ltd. Virtual computer system
DE3689287T2 (de) * 1985-02-18 1994-05-26 Nec Corp Datenverarbeitungsgerät.
JPS61206043A (ja) * 1985-03-11 1986-09-12 Hitachi Ltd 仮想計算機システムにおける割込制御方法
JPS61292753A (ja) * 1985-06-20 1986-12-23 Fujitsu Ltd 仮想計算機のデ−タ処理方式
US4747040A (en) * 1985-10-09 1988-05-24 American Telephone & Telegraph Company Dual operating system computer
JPS62114045A (ja) * 1985-11-13 1987-05-25 Fujitsu Ltd アドレスモ−ド制御方式
JPS62154037A (ja) * 1985-12-26 1987-07-09 Hitachi Ltd 仮想計算機監視制御方式
JPS62166420A (ja) * 1986-01-17 1987-07-22 インタ−ナショナル ビジネス マシ−ンズ コ−ポレ−ション 仮想端末制御方法
US4785392A (en) * 1986-10-14 1988-11-15 Amdahl Corporation Addressing multiple storage spaces
US4914577A (en) * 1987-07-16 1990-04-03 Icon International, Inc. Dynamic memory management system and method
US5167023A (en) * 1988-02-01 1992-11-24 International Business Machines Translating a dynamic transfer control instruction address in a simulated CPU processor
US5375213A (en) * 1989-08-29 1994-12-20 Hitachi, Ltd. Address translation device and method for managing address information using the device
JPH0820975B2 (ja) * 1990-03-29 1996-03-04 インターナショナル・ビジネス・マシーンズ・コーポレイション コンピュータシステムおよびコンピュータ上で実行されるトレース方法
US5381535A (en) * 1990-10-24 1995-01-10 International Business Machines Corporation Data processing control of second-level quest virtual machines without host intervention
AU651453B2 (en) * 1991-03-07 1994-07-21 Digital Equipment Corporation Improved software debugging system and method especially adapted for code debugging within a multi-architecture environment
US5652869A (en) * 1991-03-07 1997-07-29 Digital Equipment Corporation System for executing and debugging multiple codes in a multi-architecture environment using jacketing means for jacketing the cross-domain calls
US5649140A (en) * 1995-03-31 1997-07-15 International Business Machines Corporation System for use in translating virtual addresses into absolute addresses
US5850628A (en) * 1997-01-30 1998-12-15 Hasbro, Inc. Speech and sound synthesizers with connected memories and outputs
US6185665B1 (en) * 1997-02-28 2001-02-06 Matsushita Electric Industrial Co., Ltd. File management apparatus, file management method, and recording medium containing file management program
US6247172B1 (en) * 1998-07-02 2001-06-12 Hewlett-Packard Company Method for a translation system that aggressively optimizes and preserves full synchronous exception state
US7013481B1 (en) 2000-03-31 2006-03-14 Intel Corporation Attestation key memory device and bus
US6990579B1 (en) 2000-03-31 2006-01-24 Intel Corporation Platform and method for remote attestation of a platform
US7073071B1 (en) 2000-03-31 2006-07-04 Intel Corporation Platform and method for generating and utilizing a protected audit log
US6996710B1 (en) 2000-03-31 2006-02-07 Intel Corporation Platform and method for issuing and certifying a hardware-protected attestation key
US6934817B2 (en) 2000-03-31 2005-08-23 Intel Corporation Controlling access to multiple memory zones in an isolated execution environment
US7194634B2 (en) * 2000-03-31 2007-03-20 Intel Corporation Attestation key memory device and bus
US6769058B1 (en) 2000-03-31 2004-07-27 Intel Corporation Resetting a processor in an isolated execution environment
US7089418B1 (en) 2000-03-31 2006-08-08 Intel Corporation Managing accesses in a processor for isolated execution
US6957332B1 (en) 2000-03-31 2005-10-18 Intel Corporation Managing a secure platform using a hierarchical executive architecture in isolated execution mode
US7111176B1 (en) 2000-03-31 2006-09-19 Intel Corporation Generating isolated bus cycles for isolated execution
US7356817B1 (en) 2000-03-31 2008-04-08 Intel Corporation Real-time scheduling of virtual machines
US7013484B1 (en) 2000-03-31 2006-03-14 Intel Corporation Managing a secure environment using a chipset in isolated execution mode
US6760441B1 (en) 2000-03-31 2004-07-06 Intel Corporation Generating a key hieararchy for use in an isolated execution environment
US7082615B1 (en) 2000-03-31 2006-07-25 Intel Corporation Protecting software environment in isolated execution
US6976162B1 (en) 2000-06-28 2005-12-13 Intel Corporation Platform and method for establishing provable identities while maintaining privacy
US7793111B1 (en) 2000-09-28 2010-09-07 Intel Corporation Mechanism to handle events in a machine with isolated execution
US7389427B1 (en) 2000-09-28 2008-06-17 Intel Corporation Mechanism to secure computer output from software attack using isolated execution
US7215781B2 (en) * 2000-12-22 2007-05-08 Intel Corporation Creation and distribution of a secret value between two devices
US6907600B2 (en) 2000-12-27 2005-06-14 Intel Corporation Virtual translation lookaside buffer
US7035963B2 (en) * 2000-12-27 2006-04-25 Intel Corporation Method for resolving address space conflicts between a virtual machine monitor and a guest operating system
US7818808B1 (en) 2000-12-27 2010-10-19 Intel Corporation Processor mode for limiting the operation of guest software running on a virtual machine supported by a virtual machine monitor
US7225441B2 (en) 2000-12-27 2007-05-29 Intel Corporation Mechanism for providing power management through virtualization
US7117376B2 (en) * 2000-12-28 2006-10-03 Intel Corporation Platform and method of creating a secure boot that enforces proper user authentication and enforces hardware configurations
US20020144121A1 (en) * 2001-03-30 2002-10-03 Ellison Carl M. Checking file integrity using signature generated in isolated execution
US7096497B2 (en) * 2001-03-30 2006-08-22 Intel Corporation File checking using remote signing authority via a network
CA2704080C (en) 2001-07-26 2012-08-28 Irise System and process for cooperatively programming a simulation program of a computer application to be developed
US7191440B2 (en) * 2001-08-15 2007-03-13 Intel Corporation Tracking operating system process and thread execution and virtual machine execution in hardware or in a virtual machine monitor
US7024555B2 (en) 2001-11-01 2006-04-04 Intel Corporation Apparatus and method for unilaterally loading a secure operating system within a multiprocessor environment
US7092869B2 (en) * 2001-11-14 2006-08-15 Ronald Hilton Memory address prediction under emulation
US7103771B2 (en) * 2001-12-17 2006-09-05 Intel Corporation Connecting a virtual token to a physical token
US20030126454A1 (en) * 2001-12-28 2003-07-03 Glew Andrew F. Authenticated code method and apparatus
US7308576B2 (en) * 2001-12-31 2007-12-11 Intel Corporation Authenticated code module
US20030126453A1 (en) * 2001-12-31 2003-07-03 Glew Andrew F. Processor supporting execution of an authenticated code instruction
US7480806B2 (en) * 2002-02-22 2009-01-20 Intel Corporation Multi-token seal and unseal
US7631196B2 (en) 2002-02-25 2009-12-08 Intel Corporation Method and apparatus for loading a trustable operating system
US7124273B2 (en) * 2002-02-25 2006-10-17 Intel Corporation Method and apparatus for translating guest physical addresses in a virtual machine environment
US7069442B2 (en) * 2002-03-29 2006-06-27 Intel Corporation System and method for execution of a secured environment initialization instruction
US7028149B2 (en) * 2002-03-29 2006-04-11 Intel Corporation System and method for resetting a platform configuration register
US20030191943A1 (en) * 2002-04-05 2003-10-09 Poisner David I. Methods and arrangements to register code
US20030196096A1 (en) * 2002-04-12 2003-10-16 Sutton James A. Microcode patch authentication
US20030196100A1 (en) * 2002-04-15 2003-10-16 Grawrock David W. Protection against memory attacks following reset
US7076669B2 (en) * 2002-04-15 2006-07-11 Intel Corporation Method and apparatus for communicating securely with a token
US7058807B2 (en) * 2002-04-15 2006-06-06 Intel Corporation Validation of inclusion of a platform within a data center
US7127548B2 (en) * 2002-04-16 2006-10-24 Intel Corporation Control register access virtualization performance improvement in the virtual-machine architecture
US7139890B2 (en) * 2002-04-30 2006-11-21 Intel Corporation Methods and arrangements to interface memory
US20030229794A1 (en) * 2002-06-07 2003-12-11 Sutton James A. System and method for protection against untrusted system management code by redirecting a system management interrupt and creating a virtual machine container
US6820177B2 (en) * 2002-06-12 2004-11-16 Intel Corporation Protected configuration space in a protected environment
US7142674B2 (en) 2002-06-18 2006-11-28 Intel Corporation Method of confirming a secure key exchange
US7392415B2 (en) * 2002-06-26 2008-06-24 Intel Corporation Sleep protection
US20040003321A1 (en) * 2002-06-27 2004-01-01 Glew Andrew F. Initialization of protected system
US6996748B2 (en) * 2002-06-29 2006-02-07 Intel Corporation Handling faults associated with operation of guest software in the virtual-machine architecture
US7124327B2 (en) * 2002-06-29 2006-10-17 Intel Corporation Control over faults occurring during the operation of guest software in the virtual-machine architecture
US7296267B2 (en) * 2002-07-12 2007-11-13 Intel Corporation System and method for binding virtual machines to hardware contexts
US7165181B2 (en) 2002-11-27 2007-01-16 Intel Corporation System and method for establishing trust without revealing identity
US7073042B2 (en) * 2002-12-12 2006-07-04 Intel Corporation Reclaiming existing fields in address translation data structures to extend control over memory accesses
US20040117318A1 (en) * 2002-12-16 2004-06-17 Grawrock David W. Portable token controlling trusted environment launch
US7318141B2 (en) 2002-12-17 2008-01-08 Intel Corporation Methods and systems to control virtual machines
US7793286B2 (en) * 2002-12-19 2010-09-07 Intel Corporation Methods and systems to manage machine state in virtual machine operations
US7900017B2 (en) * 2002-12-27 2011-03-01 Intel Corporation Mechanism for remapping post virtual machine memory pages
US20040128465A1 (en) * 2002-12-30 2004-07-01 Lee Micheil J. Configurable memory bus width
US7076802B2 (en) * 2002-12-31 2006-07-11 Intel Corporation Trusted system clock
US7415708B2 (en) * 2003-06-26 2008-08-19 Intel Corporation Virtual machine management using processor state information
US8079034B2 (en) 2003-09-15 2011-12-13 Intel Corporation Optimizing processor-managed resources based on the behavior of a virtual machine monitor
US7424709B2 (en) * 2003-09-15 2008-09-09 Intel Corporation Use of multiple virtual machine monitors to handle privileged events
US7287197B2 (en) * 2003-09-15 2007-10-23 Intel Corporation Vectoring an interrupt or exception upon resuming operation of a virtual machine
US7739521B2 (en) 2003-09-18 2010-06-15 Intel Corporation Method of obscuring cryptographic computations
US7610611B2 (en) 2003-09-19 2009-10-27 Moran Douglas R Prioritized address decoder
US7366305B2 (en) * 2003-09-30 2008-04-29 Intel Corporation Platform and method for establishing trust without revealing identity
US7237051B2 (en) * 2003-09-30 2007-06-26 Intel Corporation Mechanism to control hardware interrupt acknowledgement in a virtual machine system
US7177967B2 (en) 2003-09-30 2007-02-13 Intel Corporation Chipset support for managing hardware interrupts in a virtual machine system
US20050080934A1 (en) * 2003-09-30 2005-04-14 Cota-Robles Erik C. Invalidating translation lookaside buffer entries in a virtual machine (VM) system
US7451443B2 (en) * 2003-10-01 2008-11-11 Hewlett-Packard Development Company, L.P. Online computer maintenance utilizing a virtual machine monitor
US7636844B2 (en) 2003-11-17 2009-12-22 Intel Corporation Method and system to provide a trusted channel within a computer system for a SIM device
US20050108171A1 (en) * 2003-11-19 2005-05-19 Bajikar Sundeep M. Method and apparatus for implementing subscriber identity module (SIM) capabilities in an open platform
US8156343B2 (en) 2003-11-26 2012-04-10 Intel Corporation Accessing private data about the state of a data processing machine from storage that is publicly accessible
US8037314B2 (en) 2003-12-22 2011-10-11 Intel Corporation Replacing blinded authentication authority
US20050133582A1 (en) * 2003-12-22 2005-06-23 Bajikar Sundeep M. Method and apparatus for providing a trusted time stamp in an open platform
US7802085B2 (en) 2004-02-18 2010-09-21 Intel Corporation Apparatus and method for distributing private keys to an entity with minimal secret, unique information
US7356735B2 (en) 2004-03-30 2008-04-08 Intel Corporation Providing support for single stepping a virtual machine in a virtual machine environment
US7620949B2 (en) 2004-03-31 2009-11-17 Intel Corporation Method and apparatus for facilitating recognition of an open event window during operation of guest software in a virtual machine environment
US7490070B2 (en) 2004-06-10 2009-02-10 Intel Corporation Apparatus and method for proving the denial of a direct proof signature
US8621179B2 (en) * 2004-06-18 2013-12-31 Intel Corporation Method and system for partial evaluation of virtual address translations in a simulator
US7305592B2 (en) 2004-06-30 2007-12-04 Intel Corporation Support for nested fault in a virtual machine environment
US7840962B2 (en) 2004-09-30 2010-11-23 Intel Corporation System and method for controlling switching between VMM and VM using enabling value of VMM timer indicator and VMM timer value having a specified time
US8146078B2 (en) 2004-10-29 2012-03-27 Intel Corporation Timer offsetting mechanism in a virtual machine environment
US8924728B2 (en) 2004-11-30 2014-12-30 Intel Corporation Apparatus and method for establishing a secure session with a device without exposing privacy-sensitive information
JP2006155272A (ja) * 2004-11-30 2006-06-15 Hitachi Ltd 仮想計算機の制御方法及びプログラム
US8533777B2 (en) * 2004-12-29 2013-09-10 Intel Corporation Mechanism to determine trust of out-of-band management agents
US7395405B2 (en) 2005-01-28 2008-07-01 Intel Corporation Method and apparatus for supporting address translation in a virtual machine environment
US8014530B2 (en) 2006-03-22 2011-09-06 Intel Corporation Method and apparatus for authenticated, recoverable key distribution with no database secrets
US8285968B2 (en) 2009-09-29 2012-10-09 International Business Machines Corporation Performing memory accesses while omitting unnecessary address translations
WO2012048162A2 (en) 2010-10-08 2012-04-12 Irise System and method for extending a visualization platform
US9703723B2 (en) * 2011-08-29 2017-07-11 International Business Machines Corporation Method and apparatus for performing mapping within a data processing system having virtual machines
US10592424B2 (en) 2017-07-14 2020-03-17 Arm Limited Range-based memory system
US10467159B2 (en) 2017-07-14 2019-11-05 Arm Limited Memory node controller
US10353826B2 (en) 2017-07-14 2019-07-16 Arm Limited Method and apparatus for fast context cloning in a data processing system
US10489304B2 (en) 2017-07-14 2019-11-26 Arm Limited Memory address translation
US10613989B2 (en) * 2017-07-14 2020-04-07 Arm Limited Fast address translation for virtual machines
US10534719B2 (en) 2017-07-14 2020-01-14 Arm Limited Memory system for a data processing network
US10565126B2 (en) 2017-07-14 2020-02-18 Arm Limited Method and apparatus for two-layer copy-on-write

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE2426435A1 (de) * 1973-05-31 1974-12-19 Honeywell Inf Systems Hardware-virtualisierungsanordnung

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3544969A (en) * 1967-11-27 1970-12-01 Standard Computer Corp Language independent computer
US3983541A (en) * 1969-05-19 1976-09-28 Burroughs Corporation Polymorphic programmable units employing plural levels of phased sub-instruction sets
US3665487A (en) * 1969-06-05 1972-05-23 Honeywell Inf Systems Storage structure for management control subsystem in multiprogrammed data processing system
US3955180A (en) * 1974-01-02 1976-05-04 Honeywell Information Systems Inc. Table driven emulation system

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE2426435A1 (de) * 1973-05-31 1974-12-19 Honeywell Inf Systems Hardware-virtualisierungsanordnung

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
US-Firmendruckschrift der Firma IBM: IBM System/370 Principles of Operation, S.15-17 *

Also Published As

Publication number Publication date
US4347565A (en) 1982-08-31
AU530696B2 (en) 1983-07-28
DE2948285C2 (de) 1984-07-12
JPS5725860B2 (de) 1982-06-01
FR2443100B1 (de) 1983-08-19
JPS5576447A (en) 1980-06-09
CA1134052A (en) 1982-10-19
AU5336079A (en) 1980-06-05
GB2043309B (en) 1983-05-05
GB2043309A (en) 1980-10-01
FR2443100A1 (fr) 1980-06-27

Similar Documents

Publication Publication Date Title
DE2948285C2 (de) Adressensteuereinrichtung für einen Datenprozessor
DE2350884C2 (de) Adreßumsetzungseinheit
DE3607889C2 (de)
DE2714805C2 (de)
DE2657848C2 (de)
DE2936932C2 (de) Kanaladressen-Steuervorrichtung in einer virtuellen Maschinenanordnung
DE2456578C2 (de) Datenverarbeitungsanlage
DE69730276T2 (de) Vorrichtung und Verfahren zur Erleichterung der Vermeidung von exzeptionellen bestimmten Zuständen während des Ablaufs eines Programmes
DE2722099C2 (de)
DE2517276A1 (de) Datenverarbeitungssystem
DE3110378C2 (de)
DE2902465A1 (de) Datenverarbeitungsanordnung
DE102007025397B4 (de) System mit mehreren Prozessoren und Verfahren zu seinem Betrieb
DE2318069C2 (de) Mikroprogrammierte Rechenanlage mit Erweiterung von Steuerfunktionen mittels festverdrahteter logischer Matrix
EP0010198A2 (de) Vorrichtung zur Steuerung des Seitenaustausches in einem Datenverarbeitungssystem mit virtuellem Speicher
DE2744531A1 (de) Elektronische datenverarbeitungsanlage
CH654943A5 (de) Pruefeinrichtung fuer mikroprogramme.
DE2847934A1 (de) Datenverarbeitungseinrichtung mit einem mikrobefehlsspeicher
DE2912738A1 (de) System mit direkter uebertragung zwischen subsystemen
DE2750721A1 (de) Ein/ausgabe-system
DE3833933A1 (de) Informationsverarbeitungseinrichtung mit einer adressenerweiterungsfunktion
DE2737353A1 (de) Verfahren zum testen der adressbildung in einem dv-system und vorrichtung zur durchfuehrung des verfahrens
EP0010185A1 (de) Virtuell-Adressiervorrichtung für einen Computer
DE3228405A1 (de) Emulator zur erzeugung einer folge von steuersignalen
DE2164793A1 (de) Verfahren und Datenverarbeitungsanlage zur Steuerung einer Vielzahl von Eingabe/ Ausgabe-Einheiten mittels eine Zentraleinheit

Legal Events

Date Code Title Description
OAP Request for examination filed
OD Request for examination
D2 Grant after examination
8364 No opposition during term of opposition
8328 Change in the person/name/address of the agent

Free format text: REINLAENDER, C., DIPL.-ING. DR.-ING., PAT.-ANW., 8000 MUENCHEN

8339 Ceased/non-payment of the annual fee