DE2810421C2 - Speicherschutzeinrichtung - Google Patents
SpeicherschutzeinrichtungInfo
- Publication number
- DE2810421C2 DE2810421C2 DE2810421A DE2810421A DE2810421C2 DE 2810421 C2 DE2810421 C2 DE 2810421C2 DE 2810421 A DE2810421 A DE 2810421A DE 2810421 A DE2810421 A DE 2810421A DE 2810421 C2 DE2810421 C2 DE 2810421C2
- Authority
- DE
- Germany
- Prior art keywords
- memory
- bit
- addresses
- hca
- section
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/14—Protection against unauthorised use of memory or access to memory
- G06F12/1416—Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights
- G06F12/1425—Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights the protection being physical, e.g. cell, word, block
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Storage Device Security (AREA)
Description
Die Erfindung betrifft eine Einrichtung zum Schutz von Speicherabschnitten in Datenverarbeitungsanlagen
nach dem Oberbegriff von Anspruch 1.
Der Schutz von Speicherbereichen gegen unerwünschtes Auslesen und/oder Einschreiben erfolgt
durch sogenannte Schutzschlüssel, die bestimmten Speicherbereichen zugeordnet sind und die während
des Betriebs mit entsprechenden Kennzahlen im Programm-Statuswort (PSW) des gerade aktiven
Programmes verglichen werden. Speicherzugriffe sind nur bei Übereinstimmung dieser Zahlen zulässig.
Dieser Schutzmechanismus ist für System-Steuerpro- so gramme (STP) in vislen Fällen jedoch nicht ausreichend;
verschiedene, besonders wichtige Daten, deren Speicherschutzschlüssel Modifikationen durch System-Steuerprogramme erlaubt, müssen vor Adreßfehlern
und somit vor unerwünschten Modifikationen durch ss System-Steuerprogramme geschützt werden, um einen
Systemausfall zu verhindern. Zu diesem Speicherabschnitten gehört beispielsweise der Speicherteil, in dem
die Programm-Steuerwörter, die Kanal-Adreßwörter und ähnliche wichtige Systeminformationen enthalten
sind; dieser Teil wird mit Hardware-Steuer-Abschnitt
(HCA) bezeichnet
Die vorliegende Erfindung stellt sich entsprechend die Aufgabe, einen Schutzmechanismus für Speicherabschnitte anzugeben, der unerwünschte Modifikationen es
auch für solche Programme verhindert, deren PSW-Schlüssel mit dem Speicherschutzschlüssel übereinstimmt
Diese Aufgabe wird durch die im Hauptanspruch gekennzeichnete Erfindung gelöst; Ausgestaltungen der
Erfindung sind in den Unteransprüchen gekennzeichnet
Die Erfindung schlägt hierzu vor, ein Bit in einem Steuerregister (CR) zur Freigabe eines Sperrmechanismus für bestimmte Hauptspeicherabschnitte zu verwenden. Wenn dieses Bit auf 1 gesetzt ist, steuert es die
Abgabe eines Sperrsignals, wenn eine Einschreibanforderung für einen bestimmten Speicherabschnitt (z. B.
mit den Adressen von 0 bis 4 K) ausgeführt werden solL
Es erfolgt dann eine Unterbrechung (Speicherschutz-Unterbrechung); das Unterbrechungsprogramm kann
dann feststellen, von wo die unzulässige Einschreibanforderung stammt Das Steuerbit kann andererseits
durch Programm ausgesetzt werden, um ausgewählten Systemroutinen das Einschreiben in diese besonders
geschützten Speicherabschnitte zu ermöglichen.
Der Schaltungsaufwand für diese zusätzliche Schutzfunktion ist sehr gering; die Verhinderung unerwünschten Einschreibens durch Programme mit gleichem
Schutzschlüssel verhindert Systemausfälle mit schwer feststellbaren Fehlerbedingungen.
Ein Ausführungsbeispiel der Erfindung wird nun
anhand der Zeichnungen näher erläutert Es zeigt
Fi g. 1 die Schaltkreise für den zusätzlichen Speicherabschnittsschutz,
F i g. 2 Beispiele für Programme, denen das Einschreiben in den besonders geschützten Speicherabschnitt
erlaubt ist,
Fig.3 das Sciiutzbit im Steuerregister zur Freigabe
der Schutzfunktion.
In F i g. 1 ist der Schaltkreis zum Schutz des Hardware-Steuerabschnitts (HCA) mit den realen
Adressen 0 bis 511 dargestellt Ein Prozessor 11 enthält
eine /-Einheit (zur Instruktionsvorbereitung) und eine E-Einheit (zur Instruktionsausführung), die auf einer
Leitung 14 Anforderungssignale für das Einschreiben in den Speicher und auf einer Leitung 16 Anforderungssignale für das Auslesen aus dem Speicher erzeugen. Bei
der Ausführung von Instruktionen im Prozessor 11 entsteht ein Instruktionsstrom 18, aus dem sich die
Adressen ergeben, zu denen im Hauptspeicher zugegriffen werden soll, und die dazu einem Speicheradreßregister 19 zugeführt werden. Hier handelt es sich um die
dem Speicher zugeführten realen Adressen, die entweder das Ergebnis einer Übersetzung der im
System verwendeten logischen Adressen sind oder die sich direkt aus d?n Instruktionen ergeben, wenn das
System keine dynamische Adreßübersetzung durchführt; ein Beispiel wäre die Zentraleinheit des IBM
Systems/370 Modell 168. Die Erfindung steuert nur Einschreib-Anforderungen für den HCA-Speicheradreßabschnitt Die HCA-Adressen werden durch ein
ODER-Glied 22 festgestellt, mit dem die hochstelligen Bits 8 bis 22 im Speicheradreßregister 19 abgefühlt
werdea Eine Adresse liegt dann im HCA-Abschnitt, wenn alle diese Bits 8 bis 22 auf Null stehen, worauf das
ODER-Glied 22 ein Ausgangssignal an den Inverter 23 abgibt Sein Ausgangssignal 23<4 liefert ein HCA-Adreßsignal
an ein UND-Glied 26, dem außerdem über Leitung 14 ein Anforderungssignal »Speicher schreiben« zugeführt wird.
Die Freigabe und das Ausschalten des HCA-Schutzes wird durch die Stellung von Bit 3 des Steuerregisters 0
(CRO) in F i g. 1 bestimmt Die Ausgangsleitung 24 ermöglicht das Aktivwerden des UND-Gliedes 26, wenn
Bit 3 den Zustand 1 annimmt, es sperrt Glied 26, wenn das Bit in seinem Zustand O ist
Eine Inverterstufe 27 empfängt das Ausgangssignal
des UND-Gliedes 26 und liefert selbst ein Eingangssignal aix ein zweites UND-Glied 33, an das außerdem
Leitung 14 mit dem Einschreib-Anforderungssignal angeschlossen ist Wenn eine Einschreib-Adresse
innerhalb des HCA-Abschnitts liegt, liefern Leitung 23Λ
und die Anforderungskitung 14 für Einschreiben Aktivierungssignale an das UND-Glied 26; UND-Glied
26 liefert nur ein Ausgangssignal, wenn Bit 3 von CRO
auf Leitung 24 den Wert 1 hat (Freigabesignal) und blockiert damit Ober Inverter 27 und das UND-Glied 23
die Abgabe eines Anforderungssignals für das Einschreiben in den Speicher an die Speicher-Zugriffssteuerung.
Das Ausgangssignal des UND-Glieds 26 wird außerdem einem Generator 28 für Unterbrechungscode
»Schuß:« im Prozessor zugeleitet, um einen Unterbrechungscode
zu erzeugen, der anzeigt, daß eine Speicherschutzverletzung aufgetreten ist und der in das
Programm-Statuswort (PSW) des Prozessors eingetragen wird.
Fig.3 stellt dar, wie das Register CRO von der
Adresse PSACROSV innerhalb der realen Seite O im Hauptspeicher gesetzt bzw. zurückgesetzt werden kann,
um die Speicherfunktion freizugeben bzw. zu sperren. Diese Adresse PSACROSV liegt außerhalb des
geschützten HCA-Abschnitts und kann daher ohne die
in F i g, J dargestellte Steuerung adressiert werden,
Fig,2 zeigt in schematischer Weise die Systam-Steuerprogramme
am Beispiel der IBM OS/370 System-Steuerpragramme,
in denen nur ein sehr geringer Teil (weniger als I % des Codes) die Befugnis hat, den
HCA-Abschnitt zu ändern, Beispiele für eine berechtig te Änderung des HCA-Abschnitts sind das Aufsetzen
eines neuen Kanaladreßworts (CRW) durch ein Eingabe/Ausgabe-Überwachungsprogramm (IOS) oder
ίο das Laden eines neuen PSW.
Die Schutzeinrichtung für den HCA-Abschnitt wird durch das Betriebssystem geregelt; diejenigen Teile des
Betriebssystems, die Änderungen im HCA durchführen dürfen, führen unmittelbar vor einer derartigen
Änderung einige Instruktionen aus, mit denen Bit 3 auf den Wert O gesetzt wird und unmittelbar nach einer
Änderung weitere Instruktionen, die Bit 3 auf den üblichen Wert 1 zurücksetzen. Der größte Teil der
System-Steuerprogramme (mehr als 99%) können somit keine Änderungen im HCA- Abschnitt durchführen.
Mit der beschriebenen Schutzeinrichtung werden nicht befugte Änderungen innerhalb des HCA-Abschnitts
unterdrückt und somit dessen Information geschützt. Die folgende Tabelle zeigt Einzelheiten des
Setzens und Zurücksetzens von Bit 3 in CRO bei einer berechtigten Änderung des HCA-Abschnitts.
Instruktionsstrom
STCTL 0,0,PSACROSV Speichere CRO in HCA an
Adresse PSACROSV (Bit
3 = 1)
Adresse PSACROSV (Bit
3 = 1)
CRO Bit 3
Sperren
Sperren
NI PSACROSV, 11101111 LCTL 0,0,PSACROSV
Setze Bit 3 an Adresse
PSACROSV auf O
PSACROSV auf O
■ "■<
Lade CRO mit Bit 3 im
zurückgesetzten Zustand;
zurückgesetzten Zustand;
Einschrei-J Instruktionen, die einen oder mehrere
ben in j Werte in HCA einschreiben, z.B. Spei-HCA [ehern eines neuen PSW, CAW usw.
CRO Bit 3
Freigabe
Setze Bit 3 an Adresse
PSACROSV auf 1;
Lade CRO mit Bit I im
gesetzten Zustand
t Λ.
ttiinu % Blitt Zeichnungen
Claims (6)
1. Einrichtung zum Schutz von Speicherabschnitten in Datenverarbeitungsanlagen gegen unerwünschte Zugriffe durch Programme, deren Programmschlüssel mit dem Speicherschutzschlüssel
des Speicherbereichs übereinstimmt, in dem der zu schützende Speicherabschnitt liegt, dadurch
gekennzeichnet, daß wahlweise aktivierbare. Steuervorrichtungen (24, 26) vorgesehen sind, die
bei Zugriffsanforderungen zu ausgewählten Speicheradressen (HCA) innerhalb des Speicherbereichs ein Sperrsignal für den Speicherzugriff
abgeben.
2. Einrichtung nach Anspruch 1, dadurch gekennzeichnet, daß das Freigabesignal durch ein Bit in
einem Steuerregister (CRO) bestimmt wird.
3. Einrichtung nach Anspruch 2, dadurch gekennzeichnet, daß das Steuerregister-Bit durch privilegierte Programme vor Einschreibvorgängen in den
geschützten Speicherabschnitt zurückgesetzt wird, um die Schutzeinrichtung zu aktivieren.
4. Einrichtung nach einem der Ansprüche 1 bis 3, dadurch gekennzeichnet, daß die Prüfung auf
ausgewählte Speicheradressen durch eine Vergleichseinrichtung (22) erfolgt, die Gruppen be-
stimmter Bits innerhalb dcT Adresse auf einen
bestimmten Wert abfragt
5. Einrichtung nach Anspruch 4, dadurch gekennzeichnet, daß als ausgewählte Adressen diejenigen
angezeigt werden, deren hochstellige Bits auf Null stehen.
6. Einrichtung nach einen· der Ansprüche 1 bis 5,
dadurch gekennzeichnet, daß bei Zugriffen zu ausgewählten Adressen ein ;JnterbrechungssignaI
(26) erzeugt wird.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US05/780,937 US4093987A (en) | 1977-03-24 | 1977-03-24 | Hardware control storage area protection method and means |
Publications (2)
Publication Number | Publication Date |
---|---|
DE2810421A1 DE2810421A1 (de) | 1978-10-05 |
DE2810421C2 true DE2810421C2 (de) | 1982-06-16 |
Family
ID=25121142
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE2810421A Expired DE2810421C2 (de) | 1977-03-24 | 1978-03-10 | Speicherschutzeinrichtung |
Country Status (7)
Country | Link |
---|---|
US (1) | US4093987A (de) |
JP (1) | JPS53118321A (de) |
CA (1) | CA1085517A (de) |
DE (1) | DE2810421C2 (de) |
FR (1) | FR2385149A1 (de) |
GB (1) | GB1579526A (de) |
IT (1) | IT1110466B (de) |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4408292A (en) * | 1979-09-27 | 1983-10-04 | Sharp Kabushiki Kaisha | Data print control in an electronic cash register |
US4405983A (en) * | 1980-12-17 | 1983-09-20 | Bell Telephone Laboratories, Incorporated | Auxiliary memory for microprocessor stack overflow |
US4472790A (en) * | 1982-02-05 | 1984-09-18 | International Business Machines Corporation | Storage fetch protect override controls |
US4506329A (en) * | 1982-03-08 | 1985-03-19 | Pitney Bowes Inc. | Non-volatile memory serial number lock for electronic postage meter |
US4590552A (en) * | 1982-06-30 | 1986-05-20 | Texas Instruments Incorporated | Security bit for designating the security status of information stored in a nonvolatile memory |
US4499545A (en) * | 1982-06-30 | 1985-02-12 | Pitney Bowes Inc. | Method and apparatus for individualized selection of special fee postage value computations |
US4525786A (en) * | 1982-07-12 | 1985-06-25 | Pitney Bowes Inc. | Electronic postage meter having a one time actuable operating program to enable setting of critical accounting registers to predetermined values |
JPS60107156A (ja) * | 1983-11-16 | 1985-06-12 | Hitachi Ltd | デ−タ処理システム |
FR2586310A1 (fr) * | 1985-08-14 | 1987-02-20 | Daneluzzo Claude | Systeme de protection destine notamment aux logiciels |
JPH0434266Y2 (de) * | 1986-11-18 | 1992-08-14 | ||
US5778444A (en) * | 1996-05-06 | 1998-07-07 | Motorola, Inc. | Method and apparatus for reset-sensitive and controlled register write accesses in a data processing system with user and test modes |
US5920690A (en) * | 1997-08-11 | 1999-07-06 | Motorola, Inc. | Method and apparatus for providing access protection in an integrated circuit |
US7539828B2 (en) * | 2000-08-08 | 2009-05-26 | Faronics Corporation | Method and system for automatically preserving persistent storage |
US7409722B2 (en) * | 2003-05-01 | 2008-08-05 | Sun Microsystems, Inc. | Control status register access to enable domain reconfiguration |
WO2006136189A1 (de) | 2005-06-23 | 2006-12-28 | Bayerische Motoren Werke Aktiengsellschaft | Verfahren und vorrichtung zum überwachen eines unerlaubten speicherzugriffs einer rechenvorrichtung, insbesondere in einem kraftfahrzeug |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE1247707B (de) * | 1962-05-30 | 1967-08-17 | Telefunken Patent | Anordnung zur Datensicherung im Arbeitsspeicher einer elektronischen Rechenmaschine |
JPS4930578B1 (de) * | 1970-09-30 | 1974-08-14 | ||
US3761883A (en) * | 1972-01-20 | 1973-09-25 | Ibm | Storage protect key array for a multiprocessing system |
DD98383A1 (de) * | 1972-06-21 | 1973-06-12 | ||
US3916385A (en) * | 1973-12-12 | 1975-10-28 | Honeywell Inf Systems | Ring checking hardware |
-
1977
- 1977-03-24 US US05/780,937 patent/US4093987A/en not_active Expired - Lifetime
-
1978
- 1978-02-08 FR FR7804186A patent/FR2385149A1/fr active Granted
- 1978-02-17 GB GB6373/78A patent/GB1579526A/en not_active Expired
- 1978-03-01 CA CA297,981A patent/CA1085517A/en not_active Expired
- 1978-03-10 DE DE2810421A patent/DE2810421C2/de not_active Expired
- 1978-03-10 JP JP2675178A patent/JPS53118321A/ja active Granted
- 1978-03-15 IT IT21204/78A patent/IT1110466B/it active
Also Published As
Publication number | Publication date |
---|---|
DE2810421A1 (de) | 1978-10-05 |
JPS5727560B2 (de) | 1982-06-11 |
FR2385149A1 (fr) | 1978-10-20 |
US4093987A (en) | 1978-06-06 |
GB1579526A (en) | 1980-11-19 |
IT1110466B (it) | 1985-12-23 |
IT7821204A0 (it) | 1978-03-15 |
FR2385149B1 (de) | 1981-07-31 |
JPS53118321A (en) | 1978-10-16 |
CA1085517A (en) | 1980-09-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE69533312T2 (de) | Geschütztes speichersystem und verfahren dafür | |
DE2810421C2 (de) | Speicherschutzeinrichtung | |
EP0011685B1 (de) | Programmierbare Speicherschutzeinrichtung für Mikroprozessorsysteme und Schaltungsanordnung mit einer derartigen Einrichtung | |
EP0522332B1 (de) | Rechner für den Leitstand einer Maschine, insbesondere eine Druckmaschine | |
DE69027165T2 (de) | Verfahren und Gerät zum Schutz eines Rechnersystems | |
DE2615861C3 (de) | Schaltungsanordnung zur Prüfung von Programmen | |
EP0951673B1 (de) | Verfahren zur überwachung der vorgeschriebenen ausführung von softwareprogrammen | |
DE3048365C2 (de) | ||
DE3689569T2 (de) | Verfahren zur Systemdateiensicherung und Datenverarbeitungseinheit zu dessen Durchführung. | |
DE2758152A1 (de) | Speicherschutzanordnung | |
EP1101163B1 (de) | Programmgesteuerte einheit | |
DE2428348C2 (de) | Verfahren zur Weiterbenutzung eines fehlerhaften Datenspeichers und Einrichtung zur Durchführung dieses Verfahrens | |
DE3688191T2 (de) | Editor für virtuelle Maschinen. | |
EP0155399A2 (de) | Schutzanordnung zur Verhinderung der unerlaubten Ausführung eines Programms | |
DE3390018T1 (de) | Verfahren und Vorrichtung zum Schutz von Software | |
DE69026346T2 (de) | Technik zum Informationsschutz für fehlertolerante redundante Informationsspeichereinrichtungen | |
DE2737353A1 (de) | Verfahren zum testen der adressbildung in einem dv-system und vorrichtung zur durchfuehrung des verfahrens | |
DE2629459A1 (de) | Datenverarbeitungssystem | |
EP0104635A2 (de) | Verfahren und Anordnung zum Prüfen eines digitalen Rechners | |
DE2801518A1 (de) | Datenverarbeitungssystem mit speicher-schutzeinrichtung | |
EP1262856B1 (de) | Programmgesteuerte Einheit | |
DE60002618T2 (de) | Verfahren und Analysewerkzeug zur Fehlerortung in einem Rechner | |
EP0276450A1 (de) | Datenschutzschaltung zur Sperrung der Uebertragung von Signalen über einen Bus | |
DE3348320C2 (de) | ||
EP1611516A2 (de) | Programmgesteuerte einheit |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OD | Request for examination | ||
D2 | Grant after examination | ||
8339 | Ceased/non-payment of the annual fee |