DE69713268T2 - Rechnerperipheriegeräteverwaltung - Google Patents

Rechnerperipheriegeräteverwaltung

Info

Publication number
DE69713268T2
DE69713268T2 DE69713268T DE69713268T DE69713268T2 DE 69713268 T2 DE69713268 T2 DE 69713268T2 DE 69713268 T DE69713268 T DE 69713268T DE 69713268 T DE69713268 T DE 69713268T DE 69713268 T2 DE69713268 T2 DE 69713268T2
Authority
DE
Germany
Prior art keywords
computer
peripheral device
response
command
word
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 - Fee Related
Application number
DE69713268T
Other languages
English (en)
Other versions
DE69713268D1 (de
Inventor
Thomas Godfrey Gardner
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.)
Hewlett Packard Development Co LP
Original Assignee
Hewlett Packard Co
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 Hewlett Packard Co filed Critical Hewlett Packard Co
Publication of DE69713268D1 publication Critical patent/DE69713268D1/de
Application granted granted Critical
Publication of DE69713268T2 publication Critical patent/DE69713268T2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/28Error detection; Error correction; Monitoring by checking the correct order of processing

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Description

  • Diese Erfindung bezieht sich auf Computersysteme und Verfahren zum Betrieb derselben.
  • Ein erster Aspekt der Erfindung bezieht sich speziell auf ein Computersystem, das einen Computer (wie z. B. einen Allzweck-Mikrocomputer) und ein Peripheriegerät aufweist, wobei der Computer betreibbar ist, um einen Vorrichtungstreiber für das Peripheriegerät und eine Anwendung zu betreiben, und der Computer betreibbar ist, um einen Befehl oder Daten abhängig von der Anwendung und dem Vorrichtungstreiber zu erzeugen und um den Befehl oder die Daten für das Peripheriegerät zur Verwendung durch dasselbe herzustellen, z. B. durch Plazieren des Befehls oder der Daten in eines oder mehrere Register oder Speicherplätze des Computers, auf die das Peripheriegerät Zugriff hat. Ein solches System ist hinreichend bekannt.
  • Eine bekannte Form eines Computerperipheriegerätes ist ein Funksender. Ein Problem bei Funkperipheriegeräten besteht darin, zu verhindern, daß sie auf unautorisierten Frequenzbändern oder zu unautorisierten Zeitpunkten senden. Um dieses Problem zu lösen, wird bekanntermaßen ein solches Peripheriegerät geschaffen, das seinen eigenen zweckgebundenen Mikroprozessor umfaßt, der nur autorisierte Frequenzbandeinstellungen erzeugt oder der unautorisierte Frequenzbandeinstellungen ignoriert, die durch den Hauptcomputer angefordert werden, und der den Sender nur zu einem autorisierten Zeitpunkt einschaltet. Dies trägt zu den Kosten des Peripheriegerätes bei, jedoch konnten solche Funkperipheriegeräte die Genehmigung durch die Regulierungsbehörde erhalten.
  • Zur Verringerung der Kosten besteht ein Wunsch, Funkperipheriegeräte zu erzeugen, die keinen eigenen zweckgebundenen Mikrocomputer umfassen müssen, jedoch ist dabei das Problem, daß der korrekte Betrieb von (a) dem richtigen Betrieb des Peripheriegerätes, (b) dem richtigen Betrieb seines Vorrichtungstreibers und (c) vom Hauptcomputer oder seiner Software, die keine anderen Daten in die Register oder Speicherplätze schreiben, die durch das Peripheriegerät verwendet werden, abhängt. Folglich wird auf Seiten der Regulierungsbehörden gezögert, eine Genehmigung für eine solche Anordnung zu erteilen.
  • Obwohl die Probleme, mit denen sich die Erfindung befaßt, oben im Hinblick auf Funkperipheriegeräte beschrieben worden sind, rechnet man damit, daß in Verbindung mit anderen Typen von Peripheriegeräten, wie z. B. einer Telephonieausrüstung oder medizinischen Apparaten, ähnliche Probleme entstehen können.
  • Der erste Aspekt der vorliegenden Erfindung ist dadurch gekennzeichnet, daß das Peripheriegerät ansprechend auf einem Empfang eines Befehls, ein Herausforderungswort zu berechnen und dem Computer das Herausforderungswort zur Verfügung zu stellen, betreibbar ist, der Computer abhängig vom Vorrichtungstreiber zum Berechnen einer Antwort, die, zumindest teilweise, eine zuerst vorbestimmte Funktion des Herausforderungswortes ist, und zum Verfügbarmachen der Antwort an das Peripheriegerät betreibbar ist und das Peripheriegerät zum Vergleichen der Anwort mit einem Validierungswort und zum Ausführen oder Nichtausführen des Befehls abhängig vom Ergebnis des Vergleichs betreibbar ist. Folglich kann die Erfindung im wesentlichen die Wahrscheinlichkeit eliminieren, daß ein falsches Programm eine ernsthafte Fehlfunktion des Peripheriegerätes bewirkt.
  • (Bei dieser Spezifikation umfaßt der Begriff "Computer" jede Art von Allzweck- oder Sonder-Rechen- oder Informationsverarbeitungsvorrichtung, deren Funktionalität durch programmierte Anweisungen, z. B. in Form von Software oder Firmware, definiert ist. In ähnlicher Weise umfaßt der Begriff "Peripheriegerät" eine beliebige Zusatzvorrichtung, die permanent oder lösbar und intern oder extern mit einem Computer verbunden werden kann, und der Begriff "Vorrichtungstreiber" umfaßt beliebige programmierte Anweisungen zum Ermöglichen, daß ein Computer mit einem Peripheriegerät zusammenwirkt.)
  • Das Herausforderungswort kann willkürlich sein, jedoch ist es zur verbesserten Sicherheit vorzugsweise, zumindest teilweise, eine zweite vorbestimmte Funktion des Befehls.
  • In dem Fall, wo der Computer betreibbar ist, um eine Serie solcher Befehle zu erzeugen, und das Peripheriegerät betreibbar ist, um eine Serie solcher Herausforderungswörter zu berechnen, von denen jedes einem jeweiligen Befehl entspricht, ist jedes Herausforderungswort für eine erhöhte Sicherheit vorzugsweise die zweite vorbestimmte Funktion von nicht nur dem jeweiligen Befehl, sondern auch von zumindest einem vorherigen solchen Befehl und/oder Herausforderungswort.
  • In dem Fall, wo der Computer auch betreibbar ist, um eine Serie von solchen Antworten zu berechnen, von denen jede einem jeweiligen der Herausforderungswörter entspricht, ist jede Antwort für eine erhöhte Sicherheit vorzugsweise die erste vorbestimmte Funktion von nicht nur dem jeweiligen Herausforderungswort, sondern auch von dem jeweiligen Befehl und/oder zumindest einem vorherigen Befehl und/oder vorherigen Herausforderungswort und /oder einer vorherigen Antwort.
  • Bei einem Ausführungsbeispiel ist das Peripheriegerät betreibbar, um die oder jede Antwort zu vergleichen, indem ein Validierungswort, das zumindest teilweise die erste Funktion des jeweiligen Herausforderungswortes oder das jeweilige Herausforderungswort ist, berechnet wird und indem die Gleichwertigkeit des Validierungswortes und der Antwort geprüft wird. In diesem Fall erstellt das Peripheriegerät vorzugsweise nicht das Validierungswort, das dem Computer zur Verfügung steht, da ansonsten ein falsches Programm die Validierung lesen und die Antwort einstellen könnte, um derselbe zu sein.
  • Gemäß einem zweiten Aspekt der vorliegenden Erfindung ist ein Verfahren zum Betrieb eines Computers und eines Peripheriegerätes vorgesehen, wofür ein Vorrichtungstreiber für das Peripheriegerät verwendet wird, bei dem der Computer dem Peripheriegerät einen Befehl abhängig vom Vorrichtungstreiber zur Verfügung stellt und das Peripheriegerät betreibbar ist, um den Befehl auszuführen, dadurch gekennzeichnet, daß das Peripheriegerät ansprechend auf einen Empfang eines solchen Befehls ein Herausforderungswort berechnet und dem Computer das Herausforderungswort zur Verfügung stellt, der Computer abhängig vom Vorrichtungstreiber eine Antwort berechnet, die, zumindest teilweise, eine erste vorbestimmte Funktion des Herausforderungsworts ist und dem Peripheriegerät die Antwort zur Verfügung stellt, und das Peripheriegerät die Antwort mit einem Validierungswort vergleicht und bestimmt, ob der Befehl abhängig vom Ergebnis des Vergleichs auszuführen ist oder nicht auszuführen ist.
  • Ein spezifisches Ausführungsbeispiel der vorliegenden Erfindung wird nun mittels eines Beispiels unter Bezugnahme auf die beigefügten Zeichnungen beschrieben. Es zeigen:
  • Fig. 1 ein Blockdiagramm eines bekannten Computersystems mit einer Funkkarte;
  • Fig. 2 ein Blockdiagramm eines Ausführungsbeispiels des Computersystems gemäß der Erfindung; und
  • Fig. 3 ein Diagramm, um eine Wechselwirkung zwischen der Software und der Hardware des Systems von Fig. 2 darzustellen.
  • Bei dem Computersystem von Fig. 1 weist ein Computer 10, wie z. B. ein PC, einen Haupt-Mikroprozessoreinheit 12 und einen Erweiterungsbus 14 auf einer Hauptplatine 16 auf. Eine Anzahl von Erweiterungskarten ist mit dem Erweiterungsbus 14 einschließlich einer Funkkarte 18 verbunden. Bei dem bekannten System umfaßt die Funkkarte 18 ein Funk-Sende- Empfangsgerät 20 und eine Mikroprozessoreinheit 22. Die Befehle werden an die Funkkarte 18 ausgegeben, und die Intelligenz der Mikroprozessoreinheit 22 der Funkkarte 18 wird verwendet, um sicherzustellen, daß unangemessene Befehle nicht ausgeführt werden und daß das Funk-Sende- Empfangsgerät 20 korrekt in der Weise, für die die Genehmigung der Regulierungsbehörde erteilt worden ist, arbeitet.
  • Wie in Fig. 2 gezeigt ist, hat die Funkkarte 18 bei dem Ausführungsbeispiel der Erfindung keine eigene Mikroprozessoreinheit, sondern verwendet statt dessen eine festverdrahtete Logik 24.
  • Unter spezieller Bezugnahme auf Fig. 3 weist der Computer 10 eine Reihe von Registern 26 auf, von denen 6 als 26a bis 26f gezeigt sind, und der Inhalt dieser Register der festverdrahteten Logik 24 der Funkkarte 18 zum Lesen oder Schreiben zur Verfügung steht. Ein beliebiges Programm, das auf dem Computer 10 läuft, kann an ein beliebiges der Register, vorsätzlich oder unabsichtlich, schreiben, jedoch lautet die Übereinkunft, daß nur autorisierte Vorrichtungstreiber an die Register schreiben. Ein Computer würde typischerweise viele Vorrichtungstreiber geladen haben, und Fig. 3 zeigt zwei Vorrichtungstreiber 28a, 28b, von denen einer der Vorrichtungstreiber 28a für die Funkkarte 18 ist. Fig. 3 zeigt auch zwei Anwendungen 30a, 30b, die auf dem Computer 10 betrieben werden, und eine der Anwendungen 30a nutzt die Funkkarte 18 und kommuniziert mit derselben über den Vorrichtungstreiber 28a und die Register 26a bis 26f.
  • Ein Beispiel des Betriebs des Ausführungsbeispiels, das oben beschrieben wurde und das die relevanten Teile der Programmierung des Computers 10 durch die Anwendung 30a und die Treibervorrichtung 28a und der festverdrahteten Programmierung der Funkkarte 18 durch die Logik 24 umfaßt, wird nun beschrieben. Bei dem Beispiel werden die Register 26 wie folgt verwendet:
  • Register 26a ist ein Ausgaberegister für "Befehls"-Worte aus dem Vorrichtungstreiber 28a an die festverdrahtete Logik 24;
  • Register 26b ist ein Eingaberegister für "Herausforderungs"-Worte von der festverdrahteten Logik 24 an den Vorrichtungstreiber 28a;
  • Register 26c ist ein Eingaberegister für "Antwort"-Worte aus dem Vorrichtungstreiber 28a an die festverdrahtete Logik 24;
  • Register 26d ist ein Ausgaberegister für Datenworte aus dem Vorrichtungstreiber 28a an die festverdrahtete Logik 24;
  • Register 26e ist ein Eingaberegister für Datenworte aus der festverdrahteten Logik 24 an den Vorrichtungstreiber 28a; und
  • Register 26f ist ein Eingaberegister für "Status"-Worte aus der festverdrahteten Logik 24 an den Vorrichtungstreiber 28a.
  • Wenn die Anwendung 30a einen speziellen Befehl ausgibt, z. B. zum Einstellen der Übertragungsträgerfrequenz für das Sende-Empfangsgerät 20, bewirkt der Vorrichtungstreiber 28a ein entsprechendes Befehlswort (CON), das in dem Befehlsregister 26a plaziert werden soll. Die festverdrahtete Logik 24 liest den Inhalt des Befehlsregisters 26a und berechnet ein Herausforderungswort, CHIN, das eine vorbestimmte Funktion F2 des aktuellen Befehlswortes CON und aller vorhergehenden Befehlswörter CO&sub1; bis CO(N-1) und Herausforderungswörter CH bis CHC(N-1) ist, da das Computersystem urgeladen wurde oder da der Vorrichtungstreiber 28a geladen wurde oder da die Anwendung 30a geöffnet wurde. In anderen Worten gilt:
  • CHN = F&sub2;(CON,CO(N-1),...,CO&sub1;,CH(N-1),CH(N-2),...,CH&sub1;)
  • Das Wort CHN wird in das Herausforderungsregister 26b plaziert, weshalb bewirkt wird, daß es durch den Vorrichtungstreiber 28a gelesen wird. Der Vorrichtungstreiber bewirkt dann, daß ein Antwortwort RN berechnet wird, das eine vorbestimmte Funktion F&sub1; des aktuellen Herausforderungswortes CHN, des aktuellen Befehlswortes CON und aller vorhergehenden Befehlswörter CO&sub1; bis CO(N-1), der Herausforderungswörter CH&sub1; bis CH(N-1), und der Antwortwörter R&sub1; bis R(N-1) ist, da das Computersystem urgeladen wurde, oder da der Vorrichtungstreiber 28a geladen wurde oder da die Anwendung 30a geöffnet wurde. In anderen Worten gilt:
  • RN = F&sub1;(CHN,CH(N-1),...,CH&sub1;,CON,CO(N-1),....CO&sub1;,R(N-1),R(N-2),...,R&sub1;)
  • Der Vorrichtungstreiber 28a bewirkt, daß das berechnete Antwortwort RN in das Antwortregister 26c plaziert wird, weshalb es durch die festverdrahtete Logik 24 gelesen wird. Die festverdrahtete Logik berechnet auch ein Validierungswort VN, das die gleiche vorbestimmte Funktion F&sub1; des aktuellen Herausforderungswortes CHN, des aktuellen Befehlswortes CON und aller vorhergehenden Befehlswörter CO&sub1; bis CO(N -1), der Herausforderungswörter CH&sub1; bis CH(N-1) und der Validierungswörter V&sub1; bis V(N-1) ist, das das Computersystem urgeladen wurde oder da der Vorrichtungstreiber 28a geladen wurde oder da die Anwendung 30a geöffnet wurde. In anderen Worten gilt:
  • VN = F&sub1;(CHN,CH(N-1),...,CH&sub1;,CON,CO(N-1),....CO&sub1;,V(N-1),V(N-2),...,V&sub1;)
  • Die festverdrahtete Logik 24 vergleicht dann die aktuellen Validierungs- und Antwortwörter VN und RN. Es wird darauf hingewiesen, daß, wenn das System korrekt arbeitet, die aktuellen Validierungs- und Antwortwörter VN und RN einander entsprechen sollten. Wenn sie einander entsprechen, führt die festverdrahtete Logik 24 den Befehl, der durch das aktuelle Befehlswort CON spezifiziert wurde, aus. Wenn sie einander nicht entsprechen, führt die festverdrahtete Logik 24 den Befehl jedoch nicht aus, sondern sperrt statt dessen das Sende-Empfangsgerät 20 und plaziert ein Fehlerwort in das Statusregister 26f. Diese Ungleichheit kann entstehen weil die Funkkarte 18 eine Fehlfunktion aufweist, der Vorrichtungstreiber 28a eine Fehlfunktion aufweist, der Vorrichtungstreiber 28a mit der Funkkarte 18 inkompatibel ist oder ein anderer Vorrichtungstreiber (z. B. der Vorrichtungstreiber 28b) oder eine andere Software mit dem Betrieb der Funkkarte 18 und ihrem Vorrichtungstreiber 28a interferiert. Durch den Vorrichtungstreiber 28a wird bewirkt, daß das Fehlerwort gelesen und zur Anwendung 30a weitergeleitet wird, die wiederum bewirkt, daß dem Anwender der Fehler mitgeteilt wird.
  • Die Funktionen F&sub1;, F&sub2; sollten so kompliziert wie nur möglich gemacht werden, obgleich dies im Hinblick auf die resultierende Komplexität, die für die festverdrahtete Logik 24 erforderlich ist, ausgeglichen wird. In einem einfachen Beispiel und in dem Fall, wo die M-Bitwörter verwendet werden, gilt:
  • CHN = F&sub2;(CON,CO(N-1),...,CO&sub1;,CH(N-1),CH(N-2),...,CH&sub1;) = CON + Σ(CO&sub1; + CH&sub1;),Modulo 2M, für I = 1 bis (N-1); und VN = F&sub1;(CHN,CH(N-1),...,CH&sub1;,CON,CO(N-1),....CO&sub1;,V(N-1),V(N-2),...,V&sub1;) = CHN + CON + Σ(CO&sub1; + CH&sub1; + V&sub1;),Modulo 2M, für I = 1 bis (N-1)
  • In diesem Fall erfordert die fest verdrahtete Logik 24 nur zwei Register für die langfristige Speicherung der Historie der Transaktionen, wobei Σ(CO&sub1; + CH&sub1;) und Σ(CO&sub1; + CH&sub1; + V&sub1;) gespeichert werden. Um die Funktionen komplexer zu gestalten, können Merkmale, wie z. B. ein Bitrotation und Inversion verwendet werden.
  • Das vorstehend beschriebene Thema macht es äußerst unwahrscheinlich, daß die korrekte Antwort RN in das Antwortregister 26c plaziert wird, es sei denn, die Funkkarte 18 und der Vorrichtungstreiber 28a stimmen richtig überein, und der Computer 10 interferiert nicht den zweckmäßigen Betrieb. In einem böswilligen Versuch, das Validierungsschema, das oben beschrieben wurde, zu umgehen, könnte ein Beobachter den Computerbus überwachen, um zu versuchen, die Sequenz der I/O-Operationen, die aus einem Befehl resultieren, aufzuzeichnen. Dies ist schwierig, aber sogar wenn man es schaffen würde, wäre es nicht möglich, eine vorhergehende Transaktion erneut abzuspielen, weil sich die Antwortworte mit jeder Transaktion verändern. Der Code des Vorrichtungstreibers 28a könnte zerlegt werden. Dies erfordert jedoch einen sehr ernsthaften Versuch an Reverse- Engineering, kein gewöhnliches Computer-Hacken. Um dies willkürlich aufwendiger zu gestalten, könnte der Code des Vorrichtungstreibers 28a im Computer 10 in zerhackter Form gespeichert werden, wobei der Code jedesmal, wenn er in den Speicher geladen wird, zusammengesetzt wird.
  • Es wird darauf hingewiesen, daß viele Modifizierungen und Entwicklungen an dem oben beschriebenen Ausführungsbeispiel vorgenommen werden können. Zum Beispiel könnte das Herausforderungswort CH ein Zufallswert sein oder die Funktion F&sub2; könnte nur vom aktuellen Befehlswort CON abhängig sein und die Funktion F&sub1; könnte nur vom aktuellen Herausforderungswort CHN abhängig sein.
  • Bei dem oben beschriebenen Ausführungsbeispiel werden die Befehls-, Herausforderungs- und Antwortwörter in die jeweiligen Register 26a bis 26c plaziert. Alternativ könnte ein speicherabgebildeter I/O (I/O = input/output = Eingang/Ausgang) verwendet werden. Die Funkkarte 18 ist auch als interne Karte für den Computer 10 gezeigt worden, jedoch kann alternativ auch ein externes Radio verwendet werden, das mit dem Computer 10 durch einen parallelen Port, einen seriellen Port, eine SCSI-Schnittstelle oder eine andere Schnittstelle verbunden ist.
  • Das Ausführungsbeispiel der Erfindung ist oben im Zusammenhang mit einem Computer mit der Architektur eines PCs beschrieben worden, es wird jedoch darauf hingewiesen, daß die Erfindung auf andere Formen eines Computersystems anwendbar ist.

Claims (12)

1. Ein Computersystem, das einen Computer (10) und ein Peripheriegerät (18) aufweist, wobei der Computer betreibbar ist, um einen Vorrichtungstreiber (28a) für das Peripheriegerät und eine Anwendung (30a) zu betreiben, und bei dem der Computer betreibbar ist, um einen Befehl (CON) abhängig von der Anwendung und dem Vorrichtungstreiber zu erzeugen und um den Befehl dem Peripheriegerät zur Verfügung zu stellen, um das Peripheriegerät zu steuern;
dadurch gekennzeichnet, daß:
das Peripheriegerät betreibbar ist ansprechend auf den Empfang eines solchen Befehls, um ein Herausforderungswort (CHN) zu berechnen und das Herausforderungswort dem Computer zur Verfügung zu stellen;
der Computer betreibbar ist abhängig von dem Vorrichtungstreiber, um eine Antwort (RN) zu berechnen, die, zumindest teilweise, eine erste vorbestimmte Funktion des Herausforderungswortes ist, und um dem Peripheriegerät die Antwort zur Verfügung zu stellen; und
das Peripheriegerät betreibbar ist, um die Antwort mit einem Validierungswort (VN) zu vergleichen und den Befehl abhängig vom Ergebnis des Vergleichs auszuführen oder nicht auszuführen.
2. Ein System gemäß Anspruch 1, bei dem das Herausforderungswort, zumindest teilweise, eine zweite vorbestimmte Funktion des Befehls ist.
3. Ein System gemäß Anspruch 2, und in dem Fall, wo der Computer betreibbar ist, um eine Reihe solcher Befehle zu erzeugen, und das Peripheriegerät betreibbar ist, um eine Reihe solcher Herausforderungswörter zu erzeugen, die jeweils einem jeweiligen der Befehle entsprechen, wobei jedes Herausforderungswort die zweite vorbestimmte Funktion von nicht nur dem jeweiligen Befehl ist, sondern auch von zumindest einem vorherigen solchen Befehl und/oder Herausforderungswort.
4. Ein System gemäß einem der vorhergehenden Ansprüche, und in dem Fall, wo der Computer betreibbar ist, um eine Reihe solcher Befehle zu erzeugen, wobei das Peripheriegerät betreibbar ist, um eine Reihe solcher Herausforderungswörter zu berechnen, die jeweils einem jeweiligen der Befehle entsprechen, und der Computer betreibbar ist, um eine Reihe solcher Antworten zu berechnen, die jeweils einem jeweiligen der Herausforderungswörter entsprechen, wobei jede Antwort die erste vorbestimmte Funktion von nicht nur dem jeweiligen Herausforderungswort, sondern auch des jeweiligen Befehls und/oder zumindest eines vorhergehenden Befehls und/oder vorhergehenden Herausforderungswortes und/oder einer vorhergehenden Antwort ist.
5. Ein System gemäß einem der vorhergehenden Ansprüche, bei dem das Peripheriegerät betreibbar ist, um die oder jede Antwort durch Berechnen eines Validierungswortes zu vergleichen, das, zumindest teilweise, die erste Funktion des jeweiligen Herausforderungswortes oder das jeweilige Herausforderungswort ist, und durch Testen der Gleichheit des Validierungswortes und der Antwort.
6. Ein System gemäß Anspruch 5, bei dem das Peripheriegerät dem Computer das Validierungswort nicht zur Verfügung stellt.
7. Ein System gemäß einem der vorhergehenden Ansprüche, bei dem dem Peripheriegerät der Befehl und die Antwort zur Verfügung gestellt werden und dem Computer das Herausforderungswort zur Verfügung gestellt wird, indem es in eines oder mehrere Register (26a bis 26c) und/oder eine oder mehrere Speicherstellen des Computers plaziert wird.
8. Ein System gemäß einem der vorhergehenden Ansprüche, bei dem das Peripheriegerät einen Funksender (20) umfaßt und bei dem zumindest einer der Befehle betreibbar ist, um die Trägersequenz des Senders einzustellen.
9. Ein System gemäß Anspruch 8, wenn dieser von Anspruch 7 abhängig ist, bei dem der Computer betreibbar ist, um gewünschte Frequenzdaten entweder in die Register oder die Speicherplätze des Computers, auf die das Peripheriegerät Zugriff hat, zu plazieren.
10. Ein System gemäß einem der vorhergehenden Ansprüche, bei dem das Peripheriegerät keinen eigenen zweckgebundenen Mikrocomputer aufweist.
11. Ein System gemäß einem der vorhergehenden Ansprüche, bei dem der Computer ein Allzweck-Mikrocomputer (10) ist.
12. Ein Verfahren zum Betreiben eines Computers (10) und eines Peripheriegerätes (18) für denselben unter Verwendung eines Vorrichtungstreibers (28a) für das Peripheriegerät, bei dem:
der Computer dem Peripheriegerät einen Befehl (CON) in Abhängigkeit von der Treibervorrichtung zur Verfügung stellt; und
das Peripheriegerät betreibbar ist, um den Befehl auszuführen;
dadurch gekennzeichnet, daß:
ansprechend auf den Empfang eines solchen Befehls, das Peripheriegerät ein Herausforderungswort (CHN) berechnet und dem Computer das Herausforderungswort zur Verfügung stellt;
der Computer abhängig vom Vorrichtungstreiber eine Antwort (RN) berechnet, die, zumindest teilweise, eine erste vorbestimmte Funktion des Herausforderungswortes ist und dem Peripheriegerät die Antwort zur Verfügung stellt; und
das Peripheriegerät die Antwort mit einem Validierungswort (VN) vergleicht und bestimmt, ob der Befehl abhängig vom Ergebnis des Vergleichs ausgeführt werden soll oder nicht ausgeführt werden soll.
DE69713268T 1997-02-07 1997-02-07 Rechnerperipheriegeräteverwaltung Expired - Fee Related DE69713268T2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
EP97300798A EP0858034B1 (de) 1997-02-07 1997-02-07 Rechnerperipheriegeräteverwaltung

Publications (2)

Publication Number Publication Date
DE69713268D1 DE69713268D1 (de) 2002-07-18
DE69713268T2 true DE69713268T2 (de) 2002-09-26

Family

ID=8229208

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69713268T Expired - Fee Related DE69713268T2 (de) 1997-02-07 1997-02-07 Rechnerperipheriegeräteverwaltung

Country Status (5)

Country Link
US (1) US6412084B1 (de)
EP (1) EP0858034B1 (de)
JP (1) JP2000512789A (de)
DE (1) DE69713268T2 (de)
WO (1) WO1998035292A1 (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10303720A1 (de) * 2003-01-30 2004-08-19 Siemens Ag Testsystem für medizinische Anlagen

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102004007994B4 (de) * 2004-02-18 2007-07-12 Infineon Technologies Ag Verfahren zum Zuweisen von Zugriffsrechten an ein Peripheriegerät
JP5393199B2 (ja) * 2009-03-02 2014-01-22 キヤノン株式会社 起動制御方法及び装置

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4251885A (en) * 1979-03-09 1981-02-17 International Business Machines Corporation Checking programmed controller operation
FR2702577B1 (fr) * 1993-03-11 1995-04-28 Gec Alsthom Transport Sa Procédé pour contrôler l'exécution correcte d'un programme d'ordinateur multitâche.
FI94993C (fi) * 1993-11-30 1995-11-27 Nokia Telecommunciations Oy Menetelmä radioyksikön ohjaamiseksi
US5414731A (en) * 1994-03-18 1995-05-09 International Business Machines Corporation Command set and procedure for synchronization of frequency hopping control clocks
US5911077A (en) * 1996-05-31 1999-06-08 Micron Electronics, Inc. System for multithreaded disk drive operation in a computer system
US6148346A (en) * 1996-06-20 2000-11-14 Peerless Systems Imaging Products, Inc. Dynamic device driver
US5893031A (en) * 1996-06-27 1999-04-06 Cellular Technical Services Company, Inc. System and method for collection of transmission characteristics

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10303720A1 (de) * 2003-01-30 2004-08-19 Siemens Ag Testsystem für medizinische Anlagen
DE10303720B4 (de) * 2003-01-30 2004-12-09 Siemens Ag Testsystem für medizinische Anlagen

Also Published As

Publication number Publication date
EP0858034A1 (de) 1998-08-12
WO1998035292A1 (en) 1998-08-13
DE69713268D1 (de) 2002-07-18
EP0858034B1 (de) 2002-06-12
US6412084B1 (en) 2002-06-25
JP2000512789A (ja) 2000-09-26

Similar Documents

Publication Publication Date Title
DE3689569T2 (de) Verfahren zur Systemdateiensicherung und Datenverarbeitungseinheit zu dessen Durchführung.
DE69316232T2 (de) System zum betrieb von anwendungs-software in einer sicherheitskritischen umgebung
DE68926176T2 (de) Verwaltungssystem für lizenzierte Programme
WO2000017826A1 (de) Vorrichtung zum liefern von ausgangsdaten als reaktion auf eingangsdaten und verfahren zum überprüfen der authentizität und verfahren zum verschlüsselten übertragen von informationen
DE10023820A1 (de) Software-Schutzmechanismus
DE2810421C2 (de) Speicherschutzeinrichtung
EP2673731B1 (de) Verfahren zur programmierung eines mobilendgeräte-chips
EP2181370A1 (de) VERFAHREN ZUR KOMPATIBILITÄTSPRÜFUNG EINES MEßSYSTEMS BESTEHEND AUS EINEM MESSUMFORMER UND EINEM SENSOR
DE69713268T2 (de) Rechnerperipheriegeräteverwaltung
DE69028449T2 (de) System zur Prüfung der Vergleichsprüfungsfunktion einer Datenverarbeitungsanlage
DE10340411B4 (de) Vorrichtung und Verfahren zur sicheren Ausführung eines Programms
WO2001088669A1 (de) Lizenzmanager
DE112020003107T5 (de) Sicherheit eingebetteter vorrichtungen durch einen vorrichtungs-lebenszyklus mit einer vorrichtungsidentifikation
DE69915788T2 (de) Mikrokontrollgerät mit Fehlerbeseitigungsunterstützung
DE60114416T2 (de) Vorrichtung und verfahren zur bewertung von algorithmen
EP0977160B1 (de) Verfahren und Datenverarbeitungsanordnung zum gesicherten Ausführen von Befehlen
DE4332144A1 (de) Verfahren zur Funktionsprüfung signaltechnisch nicht sicherer Speicher für mindestens zweikanalig abgespeicherte Nutzdaten und Einrichtung zur Durchführung des Verfahrens
DE69705734T2 (de) Verfahren und system zur sicherstellung, dass mit einem elektronischen gerät verbundene module von einem bestimmten typ sind, und ein modul und ein speichermedium dafür
DE102015119140A1 (de) Verfahren zum Steuern des Zugriffs auf verschlüsselte Dateien und Computersystem
EP4421622A1 (de) Verfahren und system zur durchführung eines installationsvorgangs für eine anwendung auf einer laufzeitumgebung während des betriebs eines systems unter überprüfung von während des installationsvorgangs durchzuführenden modifikationen auf der systemlaufzeitumgebung
DE10303452B4 (de) Verfahren zur Steuerung der Unterbrechung und/oder der Aufzeichnung von Ausführungsdaten eines Programms in einem Mikrocontroller und Mikrocontroller mit einer Anordnung zur Durchführung des Verfahrens
EP4187846A1 (de) Steuerung eines zugriffs auf ein gerät
DE102007027935A1 (de) Tragbarer Datenträger und Verfahren zur Personalisierung eines tragbaren Datenträgers
EP1460510B1 (de) Verfahren zur sicheren Kommunikation zwischen einer Datenverarbeitungsanlage und einer Sicherheitseinrichtung
DE102017005971A1 (de) Vorrichtung und Verfahren zur gerätetechnischen Erkennung von Wertebereichsverletzungen von Datenwerten in Datenverarbeitungseinheiten

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8327 Change in the person/name/address of the patent owner

Owner name: HEWLETT-PACKARD DEVELOPMENT CO., L.P., HOUSTON, TE

8339 Ceased/non-payment of the annual fee