DE2247781C3 - Anordnung zur Verringerung der Folgen einer fehlerhaften Programmierung von Ein-Ausgabebefehlen auf den Betrieb einer Datenverarbeitungsanlage - Google Patents
Anordnung zur Verringerung der Folgen einer fehlerhaften Programmierung von Ein-Ausgabebefehlen auf den Betrieb einer DatenverarbeitungsanlageInfo
- Publication number
- DE2247781C3 DE2247781C3 DE19722247781 DE2247781A DE2247781C3 DE 2247781 C3 DE2247781 C3 DE 2247781C3 DE 19722247781 DE19722247781 DE 19722247781 DE 2247781 A DE2247781 A DE 2247781A DE 2247781 C3 DE2247781 C3 DE 2247781C3
- Authority
- DE
- Germany
- Prior art keywords
- channel
- input
- register
- output
- kfr
- 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
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0706—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
- G06F11/0745—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in an input/output transactions management context
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0793—Remedial or corrective actions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/10—Program control for peripheral devices
- G06F13/12—Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor
- G06F13/122—Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor where hardware performs an I/O function other than control of data transfer
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Debugging And Monitoring (AREA)
- Storage Device Security (AREA)
Description
Die Erfindung bezieht sich auf eine Anordnung zur Verringerung der Folgen einer fehlerhaften Programmierung
von Ein-Ausgabebefehlen auf den Betrieb einer Datenverarbeitungsanlage, bei der die Ein-Ausgabebefehle
als Maschinenbefehle im Anwenderprogramm programmiert sind.
Datenverarbeitungsanlagen, die als Prozeßrechner
eingesetzt werden, müssen häufig sich scheinbar widersprechenden Forderungen genügen. Sie müssen
betriebssicher sein und sie müssen ein günstiges Rciil/citverhaltcn haben. Um ein gutes Realzeitverhallcn
zu erreichen, ist es üblich, daß in den Anwenderprogrammen
direkt Maschinenbefehle stehen, die Ein-Ausgabetransfers veranlassen. Dann aber besteht die
Gefahr, daß durch fehlerhafte Programmierung der Ein-Ausgabebefehle in den Anwenderprogrammen die
Datenverarbeitungsanlage blockiert oder sogar beschädigt wird.
Ist dagegen das Realzeitverhalten nicht kritisch, dann werden gewöhnlich alle Ein-Ausgubevorgänge vom
Betriebssystem ausgeführt, das bei entsprechendem Software-Aufwand einen nahezu beliebigen Schutzpegel
garantieren kann.
ίο Aufgabe der Erfindung ist es, eine Anordnung
anzugeben, bei der zur Erreichung eines günstigen Realzeitverhaltens die Ein-Ausgabebefehle in Maschinensprache
in den Anwenderprogrammen realisiert sind und bei der trotzdem die Folgen einer fehlerhaften
Ii Programmierung der Ein-Ausgabebefehle auf den
Betrieb einer Datenverarbeitungsanlage gering sind. Diese Aufgabe wird dadurch gelöst, daß ein Kanalfreigaberegister
vorgesehen ist, das pro Kanal mindestens eine Bitstelle enthält, daß die einem Kanal zugeordneten
>o Bitstellen im Kanalfreigaberegister für das laufende
Anwenderprogramm markiert sind, wenn der Kanal bei der Ausführung von Ein-Ausgabebefehlen verwendet
werden soll, daß eine Freigabesteuerung vorgesehen ist, die einerseits mit dem Kanalfreigaberegister, andererseits
mit den Leitungen, auf denen die Ein-Ausgabebefehle übertragen werden, verbunden ist und die
überprüft, ob der dv*m Ein-Ausgabebefeh! zugeordnete
Kanal im Kanalfreigaberegister für das laufende Anwenderprogramm markiert ist und die für den Fall
der Nichtmarkierung eine Fehlermeldung abgibt. Weiterbildungen der Erfindung sind in den Unteransprüchen
gekennzeichnet.
Ist nur ein Bit für einen Kanal im Kanalfreigaberegister
vorgesehen, dann wird der entsprechende Kanal für
J5 die Ausführung eines Ein-Ausgabebefehls dann freigegeben,
wenn dieses Bit markiert ist. Es können aber auch mehr als ein Bit pro Kanal im Freigaberegister
vorgesehen werden. Dann kann der zugeordnete Kanal nicht nur als Ganzes freigegeben oder gesperrt sein,
sondern es ist auch möglich, den zugeordneten Kanal für ganz bestimmte Ein-Ausgabebefeh'e zu sperren oder
freizugeben oder den zugeordneten Kanal für bestimmte Daten, die bei der Ausführung eines Ein-Ausgabebefehls
übertragen werden, zu sperren oder freizugeben.
Das Kanalfreigaberegister hat somit die Funktion, für das gerade laufende Programm einen Teil der Kanäle
freizugeben, einen anderen Teil der Kanäle zu sperren. Dies geschieht entsprechend der Stellung der Bitstellen
im Kanalfreigaberegister. Ein freigebener Kanal darf
Vi also vom laufenden Programm unmittelbar mit Ein-Ausgabebefehlen
angesprochen werden. Geschieht dies aber mit eine : gesperrten Kanal dann wird dies als
Programmfehler erkannt, die Ausführung des Ein-Ausgabebefehls unterdrückt und dies dem Betriebssystem
über eine Unterbrechungsanordnung mitgeteilt.
Eine Freigabesteuerung überprüft den Inhalt des Kanalfreigaberegisters und vergleicht ihn mit dem
gerade abzuarbeitenden Ein-Ausgabebefehl. Ist der Kanal, dessen Kanaladresse im Ein-Ausgaberegister
angegeben ist, durch das Kanalfreigaberegister freigegeben, dann läuft die Ausführung des Ein-Ausgabebefehls
normal weiter. Ist dagegen der Kanal, dessen Adresse im Ein-Ausgabebefehl steht, nicht freigegeben,
dann veranlaßt die Freigabesteuerung die Fehlermeldung.
Das Kanalfraigaberegister kann vom Betriebssystem vor Beginn des Programmablaufes geladen werden, und
zwar entweder speziell für jeden Anwender oder aber
für eine ganz bestimmte Betriebsdauer.
Der Inhalt des Kanalfreigaberegisters kann zu den organisatorischen Daten jedes Programms gehören.
Das Kanalfreigaberegister kann dann von einer eigenen Steuerung bei jedem Programmwechsel automatisch
neu geladen werden. Das Be'riebssystem wird dann für
ein Programm nur beim Einstellen des Inhaltes des Kanalfreigaberegisters oder bei Änderungen des
Inhaltes des Kanalfreigaberegisters tätig. Es kann festgelegt sein, daß der Inhalt des Kanalfreigaberegisters
nur von privilegierten Programmen, wie z. B. durch das Betriebssystem verändert werden kann.
In der Figur ist ein Ausführungsbeispiel der
erfindungsgemäßen Anordnung gezeigt. Dabei sind zwei Möglichkeiten dargestellt, nämlich erstens, daß die
Ein-Ausgabebefehle über den Zentralprozessor laufen und zweitens, daß für die Ausführung der Ein-Ausgabebefehle
ein besonderes Kanalwerk vorgesehen ist.
Die Ein-Ausgabebefehle stehen in einem Arbeitsspeicher ASP. Von dort werden sie bei der Realisierung der
ersten Möglichkeit in ein Befehlsregister BFR übertragen. Hier wird der Ein-Ausgabebefehl decr-iiert. Mit
Hilfe des Inhaltes eines Registersatzes wird die Kanaladresse des für die Ausführung des Ein-Ausgabebefehls
vorgesehenen Kanals gebildet und über die Leitungen L1 einer Synchronisierungsschaltung SC
zugeführt. Der Operationsteil OP des Ein-Ausgabebefehls
wird über die Leitungen L 2 ebenfalls der Synchronisierungsschaltung SC zugeleitet. Schließlich
wird mit Hilfe eines Teiles des Ein-Ausgabebefehls über die Leitungen L 3 der Arbeitsspeicher ASP angesprochen,
um die zu übertragenden Daten zu adressieren. Diese werden dann über die Leitungen L 4 zur
Synchronisierungsschaltung SG übertragen. Der Registersatz
RS ist nicht unbedingt notwendig. Es ist auch möglich, daß die Kanaladresse vollständig im Ein-Ausgabebefehl
enthalten ist.
Bei der zweiten Möglichkeit, bei der ein Kanalwerk vorgesehen ist, wird der Ein-Ausgabebefehl dem
KanalbefehlTegister KBR zugeführt. Dort wird er
decodiert und der Operationsteil OPüber die Leitungen
L 5. die Kanaladresse über die Leitungen Δ 6 der Synchronisierungsschaltung SG zugeleitet. Auch hier
wird mit Hilfe der Adresse im Ein-Ausgabebefehl über die Verbindung L 7 der Arbeitsspeicher ASP angesteuert
un'1 die zu übertragenden Daten über die Leitungen LS zur Synchronisierungsschaltung SG
gebracht.
Die Synchronisierungsschaltung SC dient dazu, festzulegen, ob die Ei"-Ausgabebefehle über den
Zentralprozessor oder über das Kanalwerk laufen. Mit CPS ist die Zentralprozessorsteuerung, mit KWS die
Kanalwerksteuerung bezeichnet Diese steuern den Ablauf der Abarbeitung der Ein-Ausgabebefehle im
Zentralprozessor bzw. im Kanalwerk.
An die Synchronisierungsschaltung SG ist die Freigabesteuerung FS angeschlossen. Der Freigabesteuerung FS wird also der Ein-Ausgabebefehl zugeführt Außerdem ist die Freigabesteuerung FSmit einem Kanalfreigaberegister KFR verbunden. Das Kanalfreigaberegister KFR wird über die Leitungen L 9 durch die Zentralprozessorsteuerung CPS vom Arbeitsspeicher ASPgeladen. Jedesmal, wenn ein Ein-Ausgabebefehl im Anwendungsprogramm auftritt, wird dieser der Freigabesteuerung FS zugeführt Die Freigabesteuerung FS
An die Synchronisierungsschaltung SG ist die Freigabesteuerung FS angeschlossen. Der Freigabesteuerung FS wird also der Ein-Ausgabebefehl zugeführt Außerdem ist die Freigabesteuerung FSmit einem Kanalfreigaberegister KFR verbunden. Das Kanalfreigaberegister KFR wird über die Leitungen L 9 durch die Zentralprozessorsteuerung CPS vom Arbeitsspeicher ASPgeladen. Jedesmal, wenn ein Ein-Ausgabebefehl im Anwendungsprogramm auftritt, wird dieser der Freigabesteuerung FS zugeführt Die Freigabesteuerung FS
is überprüft den Inhalt des Kanalfreigaberegisters KFR
und stellt fest, ob der mit der Kanaladresse im Ein-Ausgabebefehl bezeichnete Kanal durch das Kanalfreigaberegister
KFR freigegeben ist. Ist dies der Fall. dann wird der Ein-Ausgabebefehl weiter ausgeführt. Is'.
dies aber nicht der Fall, dann gibt die rrreigabesteuerung
FS auf der Leitung L 10 ein Fehlersi^nal ab. das einer
Unterbrechungssteuerung US zugeleitet wird. Die Unterbrechungssteuerung US gibt eine Unterbrechungsanforderung
zum Betriebssystem und veranlaßt die Unterbrechung der Ausführung des entsprechenden
Ein-Ausgabebefehls.
Die Kanaladresse KA wird einem Kanalauswahlschaltwerk KAS zugeleitet, das die Daten und den
Operationsteil des Ein-Ausgabebefehls der adressierten
jo peripheren Einheit PFzuführt.
Vom Zentralprozessor und von dem Kanalwerk sind in der Figur nur diejenigen Teile dargestellt, die für die
Erklärung der erfindungsgemäßen Anordnung erforderlich sind. Die dargestellten Teile können auf bekannte
Art aufgebaut sein. Die Freigabesteuerung FSkann z. B.
aus einer Decodierschaltung bestehen, die mit Hilfe der Kanaladresse des auszuführenden Ein-Ausgabebefehls
den Kanal bestimmt, der zur Datenübertragung herangezogen werden soll und dann nachprüft, ob die
4» zugeordnete Bitstelle im Kanalfreigaberegister markier*
ist.
Dadurch, daß vor Ausführung eines Programms festgelegt wird, daß nur ganz bestimmte Kanäle für die
Ausführung von Ein-Ausgabebefehlen benutzt werden dürfen, kann mit Hilfe einer einfachem Anordnung,
bestehend aus einem Kanalfreigaberegister und einer Freigabesteuerung festgestellt werden, ob ein Ein-Ausgabebefehl
im Programm falsch programmiert ist. Auf diese Weise können fehlerhaft programmierte Ein-Ausgabebefchle
zu einem großen Teil festgestellt werden.
Claims (6)
1. Anordnung zur Verringerung der Folgen einer fehlerhaften Programmierung von Ein-Ausgabebefehlen
auf den Betrieb einer Datenverarbeitungsanlage, bei der die Ein-Ausgabebefehle als Maschinenbefehle
im Anwenderprogramm programmiert sind, dadurch gekennzeichnet, daß ein Kanalfreigaberegister
(KFR) vorgesehen ist, das pro Kanal mindestens eine Bitstelle enthält, daß die
einem Kanal zugeordneten Bitstellen im Kanalfreigaberegister (KFR) für das laufende Anwenderprogramm
markiert sind, wenn der Kanal bei der Ausführung von Ein-Ausgabebefehlen verwendet
werden soll, daß eine Freigabesteuerung (FS) vorgesehen ist, die einerseits mit dem Kanalfreigaberegister
(KFR), andererseits mit den Leitungen, auf denen die Ein-Ausgabebefehle übertragen
werden, verbunden ist und die überprüft, ob der dem Ein-Ausgabcbefehl zugeordnete Kanal im Kanalfreigaberegister
(KFR) für das laufende Anwendeprogramm markiert ist und für den Fall der
Nichtmarkierung eine Fehlermeldung abgibt.
2. Anordnung nach Anspruch 1, dadurch gekennzeichnet, daß die Freigabesteuerung (FS) am
Ausgang des Befehlsregisters (BFR)der Zentralprozessorsteuerung
bzw. am Ausgang des Kanalbefehlsregisters (KBR) des Kanalwerkes angeordnet
ist.
3. Anordnung nach Anspruch 1 oder 2, dadurch gekennzeichnet, daß mehrere Bits pro Kanal im
Kanalfreigaberegister (KFR) vorgesehen sind, so daß jeder Kanal für bi.stimmL Ein-Ausgabebefehle
oder bestimmte Daten eines Ein-Ausgabebefehls sperrbar ist.
4. Anordnung nach einem der Ansprüche 1 bis 3, dadurch gekennzeichnet, daß der Inhalt des Kanalfreigaberegisters
(KFR) zu den organisatorischen Daten des gerade laufenden Programmes gehört
und nur durch das Betriebssystem änderbar ist.
5. Anordnung nach einem der Ansprüche I bis 3, dadurch gekennzeichnet, daß der Inhalt des Kanalfreigaberegisters
(KFR)durch das Betriebssystem in das Kanalfreigaberegister eingespeichert wird.
6. Anordnung nach einem der Ansprüche 1 bis 4, dadurch gekennzeichnet, daß das Kanalfreigaberegister
durch eine oder mehrere Arbeitsspeicherzellen realisiert wird und der jeweils zuständige Inhalt von
der Freigabesteuerung bei Bedarf ausgelesen und ausgewertet wird.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19722247781 DE2247781C3 (de) | 1972-09-29 | 1972-09-29 | Anordnung zur Verringerung der Folgen einer fehlerhaften Programmierung von Ein-Ausgabebefehlen auf den Betrieb einer Datenverarbeitungsanlage |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19722247781 DE2247781C3 (de) | 1972-09-29 | 1972-09-29 | Anordnung zur Verringerung der Folgen einer fehlerhaften Programmierung von Ein-Ausgabebefehlen auf den Betrieb einer Datenverarbeitungsanlage |
Publications (3)
Publication Number | Publication Date |
---|---|
DE2247781A1 DE2247781A1 (de) | 1974-04-04 |
DE2247781B2 DE2247781B2 (de) | 1981-02-26 |
DE2247781C3 true DE2247781C3 (de) | 1981-12-24 |
Family
ID=5857731
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19722247781 Expired DE2247781C3 (de) | 1972-09-29 | 1972-09-29 | Anordnung zur Verringerung der Folgen einer fehlerhaften Programmierung von Ein-Ausgabebefehlen auf den Betrieb einer Datenverarbeitungsanlage |
Country Status (1)
Country | Link |
---|---|
DE (1) | DE2247781C3 (de) |
-
1972
- 1972-09-29 DE DE19722247781 patent/DE2247781C3/de not_active Expired
Also Published As
Publication number | Publication date |
---|---|
DE2247781A1 (de) | 1974-04-04 |
DE2247781B2 (de) | 1981-02-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE2411963C3 (de) | Elektronische Datenverarbeitungsanlage mit einer Prioritätssteuerschaltung mit änderbaren Steuerblöcken | |
EP0193104A2 (de) | Datenaustauschsteuerung | |
DE2904080A1 (de) | Werkzeugmaschinen-steueranordnung | |
DE2727876B2 (de) | Steuereinrichtung mit einem Mikroprozessor | |
DE1424762B2 (de) | Datenverarbeitungsanlage | |
EP1249744A1 (de) | Verfahren zum Herstellen konsistenter Speicherinhalte in redundanten Systemen | |
DE1801620B2 (de) | Einrichtung zum ansteuern von speicherzellen eines rechenspeichers einer datenverarbeitungsanlage | |
DE2363846A1 (de) | Verfahren zum steuern des transfers von daten zwischen einem speicher und einem oder mehreren peripheren geraeten und nach diesem verfahren arbeitende datenverarbeitungsanlage | |
DE2064383C3 (de) | Datenverarbeitungsanlage mit mehreren zentralen Verarbeitungseinrichtungen | |
DE10026145A1 (de) | Programmierbare Steuereinheit | |
DE69411096T2 (de) | Entwicklungsunterstützungssystem für einen Mikrocomputer mit internem Cachespeicher | |
EP0110199B1 (de) | Verfahren zum Steuern des Datentransfers zwischen einem Datensender und einem Datenempfänger über einen Bus mit Hilfe einer am Bus angeschlossenen Steuereinrichtung | |
DE2247781C3 (de) | Anordnung zur Verringerung der Folgen einer fehlerhaften Programmierung von Ein-Ausgabebefehlen auf den Betrieb einer Datenverarbeitungsanlage | |
DE1267886B (de) | Datenbearbeitungsanlage | |
DE1222289B (de) | Datenverarbeitungseinrichtung | |
DE2230727B2 (de) | Schaltungsanordnung zur dynamischen zuteilung von speicherzyklen mit vorrangssteuerung | |
DE1499286B2 (de) | Datenbearbeitungsanlage | |
DE69028811T2 (de) | Extern erweiterbare speicherprogrammierbare steuerung | |
EP1085387B1 (de) | Speichersteuerung zum Durchführen von Schaltbefehlen für den Zugriff auf Speicherzellen | |
DE2237427C3 (de) | Steueranordnung in einer Datenverarbeitungsanlage mit Mikroprogrammsteuerung | |
DE2359036C2 (de) | Vorrichtung zum Koppeln eines Zentralspeichers mit mehreren Rechenanlagen | |
DE2612316C3 (de) | Anordnung zur Steuerung des Multiplexbetriebes zwischen mehreren Kanälen und einer zentralen Steuerschaltung eines Ein-/Ausgabewerkes in einem Datenverarbeitungssystem | |
DE10057782C1 (de) | Verfahren und Vorrichtung zum Überführen einer Prozesssteuerung von einem Solobetrieb in einen redundanten Steuerungsbetrieb | |
DE4225187A1 (de) | Numerisches steuervorrichtungssystem zum steuern von bearbeitungsvorrichtungen | |
DE2413569A1 (de) | Steuereinrichtung fuer einen elektronischen rechner |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C3 | Grant after two publication steps (3rd publication) | ||
8339 | Ceased/non-payment of the annual fee |