DE10252347A1 - Subroutine execution monitoring method, stores subroutine return address in program stack then compares with address given by subroutine return command to determine if error has occurred - Google Patents
Subroutine execution monitoring method, stores subroutine return address in program stack then compares with address given by subroutine return command to determine if error has occurred Download PDFInfo
- Publication number
- DE10252347A1 DE10252347A1 DE2002152347 DE10252347A DE10252347A1 DE 10252347 A1 DE10252347 A1 DE 10252347A1 DE 2002152347 DE2002152347 DE 2002152347 DE 10252347 A DE10252347 A DE 10252347A DE 10252347 A1 DE10252347 A1 DE 10252347A1
- Authority
- DE
- Germany
- Prior art keywords
- subroutine
- address
- return
- stack
- return command
- 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.)
- Ceased
Links
- 238000000034 method Methods 0.000 title claims description 19
- 238000012544 monitoring process Methods 0.000 title description 2
- 230000015654 memory Effects 0.000 claims description 12
- 230000001419 dependent effect Effects 0.000 claims description 5
- 230000008569 process Effects 0.000 claims description 4
- 238000012545 processing Methods 0.000 claims description 3
- 230000007246 mechanism Effects 0.000 claims description 2
- 230000004044 response Effects 0.000 claims 2
- 230000006870 function Effects 0.000 claims 1
- 238000005516 engineering process Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000007257 malfunction Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000003936 working memory Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/362—Software debugging
- G06F11/3636—Software debugging by tracing the execution of the program
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/52—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/71—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
- G06F21/77—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information in smart cards
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3802—Instruction prefetching
- G06F9/3804—Instruction prefetching for branches, e.g. hedging, branch folding
- G06F9/3806—Instruction prefetching for branches, e.g. hedging, branch folding using address prediction, e.g. return stack, branch history buffer
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Quality & Reliability (AREA)
- Mathematical Physics (AREA)
- Executing Machine-Instructions (AREA)
Abstract
Description
Die Erfindung betrifft allgemein das Gebiet der Prozessortechnik und insbesondere das Gebiet der überwachten Ausführung von Unterprogrammen. Speziell ist die Erfindung für Anwendungen vorgesehen, bei denen Aspekte der Sicherheit und Korrektheit der ausgeführten Programme sowie der Zuverlässigkeit der Programmausführung besondere Bedeutung haben.The invention relates generally the area of processor technology and in particular the area of monitored execution of subroutines. The invention is special for applications provided for aspects of security and correctness of the executed Programs as well as reliability the program execution have special meaning.
Techniken zur Ausführung von Unterprogrammen sind in vielfältigen Ausgestaltungen gut bekannt. So sind beispielsweise in dem Buch "MCS-48 Family of Single Chip Microcomputers User's Manual", herausgegeben von Intel Corporation, USA, September 1981, auf den Seiten 4-12 und 4-30 die Befehle CALL und RET der Mikrocontroller-Familie MCS-48 beschrieben. Gemäß diesem Stand der Technik wird bei der Ausführung eines Unterprogramm-Aufrufbefehls CALL unter anderem der aktuelle Stand des Programmzählers in einem Stapelspeicher gesichert. Die Programmausführung wird dann an einer in dem Unterprogramm-Aufrufbefehl angegebenen Adresse fortgesetzt. Sobald im Zuge der Unterprogrammausführung der erste Unterprogramm-Rücksprungbefehl RET erkannt wird, wird der Programmzähler mit dem jüngsten Eintrag im Stapelspeicher geladen. Dieser Eintrag wird aus dem Stapelspeicher entfernt, indem der Stapelzeiger entsprechend geändert, beispielsweise dekrementiert, wird. Die Wirkung des Unterprogramm-Rücksprungbefehls ist somit, daß die Programmausführung im aufrufenden Programm mit demjenigen Befehl fortgesetzt wird, der dem Unterprogramm-Aufrufbefehl folgt.Techniques for performing Subroutines are in diverse Configurations well known. For example, in the book "MCS-48 Family of Single Chip Microcomputers User's Manual " by Intel Corporation, USA, September 1981, pages 4-12 and 4-30 the CALL and RET commands of the MCS-48 microcontroller family described. According to this State of the art is when a subroutine call instruction CALL is executed among other things, the current status of the program counter in a stack secured. The program execution is then specified at one in the subroutine call instruction Address continued. As soon as the first subroutine return command RET is recognized, the program counter with the most recent entry loaded in the stack. This entry is from the stack removed by changing the stack pointer accordingly, e.g. decrementing it. The effect of the subroutine return instruction is therefore that the program execution is continued in the calling program with that command, which follows the subroutine call instruction.
Dieses bekannte Verfahren hat jedoch den Nachteil, daß die Zuordnung von Unterprogramm-Aufrufbefehlen und Unterprogramm-Rücksprungbefehlen lediglich gemäß der Reihenfolge erfolgt, in der diese Befehle während der Programmausführung angetroffen werden. Wenn daher der aktuelle Programmfluß von den Vorstellungen des Programmierers abweicht – dies kann beispielsweise durch einen Programmierfehler oder durch eine zur Programmlaufzeit auftretende Störung der Fall sein -, so gerät die Zuordnung von Unterprogramm-Aufrufen und Unterprogramm-Rücksprüngen völlig durcheinander. Gerade bei sicherheitskritischen Anwendungen können die dadurch hervorgerufenen Fehlfunktionen potenziell schwere Schäden verursachen.However, this known method has the disadvantage that the Assignment of subroutine call instructions and subroutine return instructions just according to the order done in which these commands during the program execution be encountered. Therefore, if the current program flow from the The programmer's ideas deviate - this can be caused, for example, by a programming error or one that occurs during the program runtime disorder be the case - so it gets the assignment of subroutine calls and subroutine returns completely mixed up. This can result in safety-critical applications Malfunctions can cause serious damage.
Die Erfindung hat daher die Aufgabe, die genannten Probleme zumindest zum Teil zu vermeiden. Insbesondere soll durch die Erfindung eine Technik zur überwachten Unterprogrammausführung bereitgestellt werden, welche eine fehlerhafte Programmierung oder Hardwarefehler während der Programmausführung zumindest mit gewisser Wahrscheinlichkeit erkennt und somit geeignete Gegenmaßnahmen ermöglicht.The invention therefore has the task to avoid the problems mentioned at least in part. In particular is intended to provide a technology for monitoring subroutine execution by the invention what a faulty programming or hardware failure while the program execution recognizes at least with a certain probability and thus suitable ones countermeasures allows.
Erfindungsgemäß wird diese Aufgabe ganz oder zum Teil gelöst durch ein Verfahren mit den Merkmalen von Anspruch 1, einen Prozessor gemäß Anspruch 9 und einen Datenträger gemäß Anspruch 10. Die abhängigen Ansprüche definieren bevorzugte Ausgestaltungen der Erfindung. Die Aufzählungsreihenfolge der Schritte in den Verfahrensansprüchen soll nicht als Einschränkung des Schutzbereichs verstanden werden. Es sind vielmehr Ausgestaltungen der Erfindung vorgesehen, bei denen diese Verfahrensschritte in anderer Reihenfolge oder ganz oder teilweise parallel oder ganz oder teilweise ineinander verzahnt (interleaved) ausgeführt werden.According to the invention, this task is complete or partially solved by a method having the features of claim 1, a processor according to claim 9 and a disk according to claim 10. The dependent Expectations define preferred embodiments of the invention. The enumeration order The steps in the procedural claims are not intended to limit the Protection area can be understood. Rather, they are configurations provided the invention, in which these method steps in different order or in whole or in part in parallel or in whole or partially interleaved.
Die Erfindung geht von der Grundidee aus, während des Programmablaufs zumindest eine Plausibilitätsüberprüfung hinsichtlich der Zuordnung eines auszuführenden Unterprogramm-Rücksprungbefehls zu dein vom Programmierer vorgesehenen Aufrufbefehl vorzunehmen. Dazu wird beim Aufruf eines Unterprogramms nicht nur die Rücksprung-Zieladresse, sondern auch eine Rücksprungbefehlsadresse im Stapelspeicher abgelegt. Aus der Rücksprungbefehlsadresse läßt sich durch Auswerten einer vorgegebenen Beziehung ableiten, an welcher Stelle gemäß der Intention des Programmierers der zu dem gegenwärtig ausgeführten Unterprogramm-Aufrufbefehl gehörige Unterprogramm-Rücksprungbefehl bei korrekter Programmausführung zu erwarten ist. Beide genannten Adressen werden im Stapelspeicher abgelegt. Bei der Abarbeitung jedes Unterprogramm-Rücksprungbefehls wird überprüft, ob die Speicheradresse dieses Befehls in der vorgegebenen Beziehung zu der im Stapelspeicher befindlichen Rücksprungbefehlsadresse steht. Falls dies der Fall ist, war die Plausibilitätsüberprüfung erfolgreich, und der Rücksprung vom Unterprogramm wird ausgeführt. Andernfalls wird eine Fehlerbehandlungsroutine aufgerufen.The invention is based on the basic idea off while of the program sequence at least one plausibility check with regard to the assignment one to be executed Subroutine return instruction to carry out the call command provided by the programmer. When calling a subroutine, not only the return destination address, but also a return instruction address stored in the stack. From the return command address can be derive at which point by evaluating a predetermined relationship according to the intention the programmer to the subroutine call instruction currently being executed associated Subroutine return instruction with correct program execution is to be expected. Both of these addresses are in the stack stored. When processing each subroutine return instruction it is checked whether the Memory address of this command in the specified relationship to the return instruction address in the stack. If this is the case, the plausibility check was successful and the return is executed by the subroutine. Otherwise an error handling routine is called.
Durch die erfindungsgemäße Plausibilitätsüberprüfung können mit geringem Aufwand sowohl Programmierfehler als auch Programmablauffehler mit beträchtlicher Wahrscheinlichkeit erkannt werden. Dies ist insbesondere für sicherheitskritische Anwendungen von großer Bedeutung. Durch die Erfindung wird das Auftreten einer Klasse von Fehlern erkannt, die den vorgesehenen Programmablauf völlig verändern können und die deshalb besonders kritisch sind. Insgesamt ermöglicht die Erfindung eine Überwachung der dynamischen Ablaufstruktur des Programms unter Verwendung von Informationen, die sich auf die statische Programmstruktur beziehen.Through the plausibility check according to the invention, with low effort with programming errors as well as program sequence errors considerable Probability are recognized. This is particularly important for safety-critical applications of great Importance. The occurrence of a class of Errors recognized that can completely change the intended program sequence and which are therefore particularly critical. Overall, the Invention a surveillance the dynamic flow structure of the program using Information related to the static program structure.
Erfindungsgemäß wird das Bestehen einer vorgegebenen Beziehung zwischen der Adresse des gerade ausgeführten Unterprogramm-Rücksprungbefehls und der im Stapelspeicher vorhandenen Rücksprungbefehlsadresse überprüft. Diese vorgegebene Beziehung kann insbesondere die Identität sein. In anderen Ausgestaltungen ist die vorgegebene Beziehung, daß sich die beiden genannten Adressen um einen vorbestimmten, konstanten Versatz (offset) – z.B. um die Länge des Unterprogramm-Rücksprungbefehls – voneinander unterscheiden. Durch diese Konvention kann der hardwaremäßige Aufbau des Prozessors vereinfacht werden.According to the invention, the existence of a predetermined relationship is checked between the address of the subroutine return instruction which has just been executed and the return instruction address which is present in the stack. This predefined relationship can in particular be identity. In other configurations, the predetermined relationship is that the two addresses mentioned are a predetermined, constant offset (offset) - for example, by the length of the subroutine return instruction. The hardware structure of the processor can be simplified by this convention.
In bevorzugten Ausgestaltungen wird die Fehlerbehandlungsroutine durch einen Unterbrechungsmechanismus aufgerufen. Dies kann beispielsweise eine hardwaremäßig veranlaßte Unterbrechung (interrupt) sein, insbesondere eine nicht-maskierbare Unterbrechung (non-maskable interrupt – NMI).In preferred configurations the error handling routine through an interrupt mechanism called. This can be, for example, a hardware-induced interruption (interrupt), in particular a non-maskable interrupt (non-maskable interrupt - NMI).
In manchen Ausgestaltungen der Erfindung findet die genannte Plausibilitätsüberprüfung lediglich bei der Verarbeitung eines Unterprogramm-Rücksprungbefehls statt. Das Fehlen eines Unterprogramm-Rücksprungbefehls würde in diesen Ausgestaltungen erst dann entdeckt werden, wenn die Programmausführung über den eigentlich vorgesehenen Rücksprungpunkt hinaus zu einem weiteren Unterprogramm-Rücksprungbefehl gelangt. Um diesen Fall eines fehlenden Rücksprungbefehls sogleich zu erkennen, ist in Ausführungsalternativen vorgesehen, bereits bei der Verarbeitung des Unterprogramm-Aufrufbefehls zu überprüfen, ob an der angegebenen Rücksprungbefehlsadresse des Unterprogramms – oder in den oben genannten Ausführungsalternativen an einer Adresse, die einen vorbestimmten Versatz gegenüber der angegebenen Rücksprungbefehlsadresse aufweist – tatsächlich ein Unterprogramm-Rücksprungbefehl vorhanden ist.In some embodiments of the invention takes place the aforementioned plausibility check only when processing a subroutine return instruction. The Absence of a subroutine return instruction would in these designs can only be discovered when the program execution via the intended return point another subroutine return instruction is reached. Around this case of a missing return command Recognizing immediately is provided in alternative designs, to check whether the subroutine call instruction is already being processed at the specified return command address of the subroutine - or in the above alternative designs at an address that has a predetermined offset from the specified return command address has - actually a subroutine return instruction is available.
Der erfindungsgemäße Prozessor und der Datenträger weisen in bevorzugten Weiterbildungen Merkmale auf, die den oben erwähnten und/ oder den in den abhängigen Verfahrensansprüchen genannten Merkmalen entsprechen.The processor according to the invention and the data carrier have in preferred further developments features which correspond to those mentioned above and / or that in the dependent method claims correspond to the mentioned characteristics.
Weitere Merkmale, Aufgaben und Vorteile der Erfindung ergeben sich aus der folgenden Beschreibung eines Ausführungsbeispiels und mehrerer Ausführungsalternativen. Es wird auf die schematischen Zeichnungen verwiesen, in denen zeigen:Other characteristics, tasks and advantages of Invention result from the following description of an embodiment and several alternative versions. Reference is made to the schematic drawings, in which:
In
Der Festwertspeicher
Die Begriffe "Hauptprogramm" und "Unterprogramm" bezeichnen vorliegend lediglich die
Beziehung der Programmabschnitte
Der Arbeitsspeicher
In den in
Das Unterprogramm
Wenn der Prozessor
Bei der Ausführung des Unterprogramm-Aufrufbefehls
Nach den genannten Speichervorgängen schließt der Prozessor
Nach dem Unterprogrammaufruf führt der Prozessor
Wenn bei der gerade genannten Überprüfung eine Übereinstimmung
zwischen der erwarteten Rücksprungbefehlsadresse
Falls bei der Ausführung des
Unterprogramms
Auf an sich bekannte Weise bewirkt diese Unterbrechung, daß eine Unterbrechungs-Behandlungsroutine (interrupt handler) an einer durch einen Unterbrechungsvektor vorgegebenen Adresse angesprungen wird, welche ihrerseits zu einer geeigneten Fehlerbehandlungsroutine verzweigt. In Ausführungsalternativen kann die Fehlerbehandlungsroutine auch auf andere Weise – z.B. über einen eigens für diesen Zweck vorgesehenen Fehlerbehandlungsvektor – aufgerufen werden.In a manner known per se, this interruption causes an interrupt handler to be sent to an address specified by an interrupt vector is jumped, which in turn branches to a suitable error handling routine. In alternative embodiments, the error handling routine can also be called up in another way - for example via an error handling vector provided specifically for this purpose.
Bei der Programmierung des hier beschriebenen
Prozessors
Claims (10)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE2002152347 DE10252347A1 (en) | 2002-11-11 | 2002-11-11 | Subroutine execution monitoring method, stores subroutine return address in program stack then compares with address given by subroutine return command to determine if error has occurred |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE2002152347 DE10252347A1 (en) | 2002-11-11 | 2002-11-11 | Subroutine execution monitoring method, stores subroutine return address in program stack then compares with address given by subroutine return command to determine if error has occurred |
Publications (1)
Publication Number | Publication Date |
---|---|
DE10252347A1 true DE10252347A1 (en) | 2004-05-19 |
Family
ID=32115425
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE2002152347 Ceased DE10252347A1 (en) | 2002-11-11 | 2002-11-11 | Subroutine execution monitoring method, stores subroutine return address in program stack then compares with address given by subroutine return command to determine if error has occurred |
Country Status (1)
Country | Link |
---|---|
DE (1) | DE10252347A1 (en) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2006103381A1 (en) * | 2005-03-30 | 2006-10-05 | Arm Limited | Selecting subroutine return mechanisms |
FR2928755A1 (en) * | 2008-03-14 | 2009-09-18 | Sagem Securite Sa | METHOD FOR SECURING A PROGRAM EXECUTION |
DE102009005764A1 (en) | 2009-01-23 | 2010-07-29 | Giesecke & Devrient Gmbh | Method for monitoring execution of program in e.g. chip card, involves determining whether addressed programs or addresses are assigned to subprogram or destination address, and executing subprogram when assignment is correct |
EP2684152A1 (en) * | 2011-03-09 | 2014-01-15 | Irdeto B.V. | Method and system for dynamic platform security in a device operating system |
EP2996034A1 (en) * | 2014-09-11 | 2016-03-16 | Nxp B.V. | Execution flow protection in microcontrollers |
-
2002
- 2002-11-11 DE DE2002152347 patent/DE10252347A1/en not_active Ceased
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2006103381A1 (en) * | 2005-03-30 | 2006-10-05 | Arm Limited | Selecting subroutine return mechanisms |
US7401210B2 (en) | 2005-03-30 | 2008-07-15 | Arm Limited | Selecting subroutine return mechanisms |
JP2008535072A (en) * | 2005-03-30 | 2008-08-28 | アーム・リミテッド | Selective subroutine return structure |
CN101971185B (en) * | 2008-03-14 | 2013-08-07 | 摩福公司 | Method of securing execution of a program |
WO2009115712A2 (en) * | 2008-03-14 | 2009-09-24 | Sagem Securite | Method of securing execution of a program |
WO2009115712A3 (en) * | 2008-03-14 | 2009-11-12 | Sagem Securite | Method of securing execution of a program |
RU2468428C2 (en) * | 2008-03-14 | 2012-11-27 | Морфо | Method for protection of programme execution |
FR2928755A1 (en) * | 2008-03-14 | 2009-09-18 | Sagem Securite Sa | METHOD FOR SECURING A PROGRAM EXECUTION |
US8621617B2 (en) | 2008-03-14 | 2013-12-31 | Morpho | Method of securing execution of a program |
DE102009005764A1 (en) | 2009-01-23 | 2010-07-29 | Giesecke & Devrient Gmbh | Method for monitoring execution of program in e.g. chip card, involves determining whether addressed programs or addresses are assigned to subprogram or destination address, and executing subprogram when assignment is correct |
EP2684152A1 (en) * | 2011-03-09 | 2014-01-15 | Irdeto B.V. | Method and system for dynamic platform security in a device operating system |
EP2684152A4 (en) * | 2011-03-09 | 2014-08-20 | Irdeto Bv | Method and system for dynamic platform security in a device operating system |
US9635048B2 (en) | 2011-03-09 | 2017-04-25 | Irdeto B.V. | Method and system for dynamic platform security in a device operating system |
US10333967B2 (en) | 2011-03-09 | 2019-06-25 | Irdeto B.V. | Method and system for dynamic platform security in a device operating system |
EP2996034A1 (en) * | 2014-09-11 | 2016-03-16 | Nxp B.V. | Execution flow protection in microcontrollers |
US10223117B2 (en) | 2014-09-11 | 2019-03-05 | Nxp B.V. | Execution flow protection in microcontrollers |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE4331703C2 (en) | Electronic device | |
EP0011685B1 (en) | Programmable memory protection arrangement for microprocessors and circuitry with such an arrangement | |
EP2188755A1 (en) | Method and apparatus for protection of a program against monitoring flow manipulation and against incorrect program running | |
DE10159901A1 (en) | Microcomputer with built-in programmable, non-volatile memory | |
WO2006015945A2 (en) | Method, operating system, and computing device for processing a computer program | |
EP1810139B1 (en) | Method, operating system and computing element for running a computer program | |
DE102006054169B4 (en) | Method and system for centralizing a process sequence check | |
WO2006032585A1 (en) | Method for executing a computer program on a computer system | |
DE102005040916A1 (en) | Memory arrangement and method of operation therefor | |
EP1037140B1 (en) | Method and apparatus providing security during modification of memory contents in control devices | |
DE10252347A1 (en) | Subroutine execution monitoring method, stores subroutine return address in program stack then compares with address given by subroutine return command to determine if error has occurred | |
DE102007056218A1 (en) | Method for the treatment of transient errors in real-time systems, in particular in control units of motor vehicles | |
DE102005001679B4 (en) | Microprocessor device, and method for branch prediction for conditional branch instructions in a microprocessor device | |
EP1812853B1 (en) | Method, operating system and computing element for running a computer program | |
DE10064025A1 (en) | Microprocessor user software booting method, involves blanking specified areas of memory blocks until valid reset vector localizer is found and then executing reset vector and application in valid boot memory area | |
EP1892639B1 (en) | Secure program code execution | |
DE102016116221A1 (en) | Method and device for monitoring the execution of a program code | |
DE102013202961A1 (en) | Method for monitoring stack memory in operating system of control unit of motor vehicle, involves carrying out predefined action if characteristic parameters of stack memory before and after execution of program codes are not identical | |
DE10229817B4 (en) | Method and device for storing a computer program in a program memory of a control device | |
DE10110050A1 (en) | Method for protecting safety-critical program parts or routines from inadvertent execution, especially for automotive use, in which a safety critical routine will only run if a bit pattern has been set by a calling program section | |
EP1031081B1 (en) | Program-controlled unit and method | |
DE102010042574A1 (en) | Method for operating microcontroller of automobile, involves interrupting specific functions by mechanism such that functions are executed without interference from execution of other functions | |
DE19921114B4 (en) | Method for error analysis in processor-controlled devices | |
DE102022207612A1 (en) | Computer-implemented method for verifying a software component of an automated driving function | |
DE102009005449B4 (en) | Processor that evaluates inherent and sequential identifiers assigned to commands for monitoring the control flow |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8110 | Request for examination paragraph 44 | ||
8131 | Rejection |