EP2766813A1 - Method for operating an it system, and it system - Google Patents

Method for operating an it system, and it system

Info

Publication number
EP2766813A1
EP2766813A1 EP12783147.7A EP12783147A EP2766813A1 EP 2766813 A1 EP2766813 A1 EP 2766813A1 EP 12783147 A EP12783147 A EP 12783147A EP 2766813 A1 EP2766813 A1 EP 2766813A1
Authority
EP
European Patent Office
Prior art keywords
processing unit
state
program
program part
depending
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
Application number
EP12783147.7A
Other languages
German (de)
French (fr)
Inventor
Bernd Meyer
Stefan Pyka
David Von Oheimb
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.)
Continental Automotive GmbH
Original Assignee
Continental Automotive GmbH
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 Continental Automotive GmbH filed Critical Continental Automotive GmbH
Publication of EP2766813A1 publication Critical patent/EP2766813A1/en
Ceased legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error 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/079Root cause analysis, i.e. error or fault diagnosis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates

Definitions

  • the invention relates to a method for operating an information technology system which has at least a first processing unit and a second processing unit which are connected to one another. Furthermore, the invention relates to the information technology system.
  • a plurality of software programs are designed in such a way that, for execution of the software program, a respective program part of the software program has to be executed by different computer units. This may be due, for example, to the fact that a performance of a computing unit is not sufficient and / or special security functions are performed by a computing unit which is specially designed for this purpose.
  • the need for frequent updates of the software and the desire to provide sufficient protection for the computer unit software also create a need for computer systems that allow for secure and reliable software upgrade. Particularly in the case of control devices for a motor vehicle, for example in the case of a digital tachograph, the requirements for manipulation security of the software and for reliable software upgrading are particularly high.
  • the object underlying the invention is to provide a method for operating an information technology system and the information technology system, which enable reliable operation of the information technology system.
  • the object is solved by the features of the independent claims.
  • Advantageous developments of the invention are characterized in the subclaims.
  • the invention is characterized by a method for operating an information technology system.
  • the information technology system comprises at least a first processing unit and a second processing unit which are in communication with each other.
  • the first processing unit and the second processing unit are formed into a common execution of an application program.
  • the first processing unit is assigned a first memory in which a first program unit of the application program executable by the first processing unit is stored, and the second processing unit is assigned a second memory in which a second program portion of the application program executable by the second processing unit is stored.
  • the first processing unit and the second processing unit are each assigned an installation routine which is designed to control an update of the first program part or of the second program part.
  • the method comprises the following steps: Depending on a state of the respective installation routine and depending on a respective update progress of the first program part or the second program part during an update of the application program, the first processing unit is assigned an actual state from a predetermined set of possible states and the second processing unit, a second actual state from the predetermined set of possible states. After a restart of the system or as soon as a successful storage of the first program part and the second program part or an error in the storage of the first program part and / or the second program part is detected, depending on the actual state of the first processing unit and the actual state the second processing unit respectively predetermined processing steps in a predetermined order by the first and the second processing unit executed.
  • the first and second program parts may each comprise program code and / or program data.
  • the successful storage of the first and second program part may in this case also include, for example, that the first and / or second processing unit has successfully verified the integrity of the first and second program part.
  • the set of possible states comprises a first state, which represents a first or a second valid program part and a respective inactive program routine, a second state, which represents a first and a second valid program part and a respective active program routine, and a third state, which represents a first or a second invalid program part and a respective active program routine of the first and the second processing unit.
  • the second processing unit may return to the first state, or the first processing unit must switch to the second state. If the first processing unit is in the first state and the second processing unit is in the third state, the first processing unit must change to the second state. If the first processing unit is in the second state and the second processing unit is in the first state, the second processing unit can change to the second state, or the first processing unit must return to the first state. In all other cases, the respective actual states remain the same.
  • the first processing unit first returns to the second state insofar as it does not already have it, and then the second processing unit changes to the first state.
  • two binary flags are respectively used to characterize the actual state of the first processing unit and the actual state of the second processing unit, wherein a respective first binary flag, depending on its binary state, an inactive or active installation routine of the first processing unit or the second processing unit and a respective second binary flag depending on its binary state, a valid or an invalid first program part or second Pro represents part of the program.
  • the predetermined processing steps in the predetermined order of the first and the second processing unit executed.
  • an evaluation of the binary states is very simple and technically possible with little effort.
  • the binary states of the respective first and second binary flags are reset to the binary state in a predetermined order depending on the binary states of the respective first and second binary flags. representing a valid program part or an inactive installation routine.
  • the resetting of the first and second binary flags in the predetermined order makes it possible for a multiplicity of state combinations, which the first and second processing units can have, at any time during the operation of the information technology system to ensure that the information technology system is executable, that is, the first and second program part are valid and thus each executable or the respective installation routine is active or the respective installation routine can be at least restarted.
  • the first processing unit is designed to start the update. initiate the application program and / or initiate an application program update.
  • the first processing unit is configured to initiate a start of the update of the application program and / or to initiate an end of the update of the application program. This can advantageously contribute to ensuring that the information technology system can be better protected against manipulations, for example software manipulations.
  • the second processing unit is designed to decide whether the update of the application program is started and / or terminated.
  • the second processing unit is adapted to decide whether an update of the application program may be started and / or stopped or not. This can advantageously contribute to ensuring that the information technology system can be better protected against manipulations, for example software manipulations.
  • the second processing unit is designed to verify an integrity of the first program part and / or the second program part. This makes it possible, for example, to check the integrity and / or unchanging nature of the first and / or the second program part.
  • the invention is characterized by an information technology system comprising at least a first processing unit and a second processing unit.
  • the first and second processing units communicate with each other and are adapted to a common execution of an application program.
  • the first processing unit is assigned a first memory in which a first program part of the application program which can be executed by the first processing unit is stored is.
  • the second processing unit is assigned a second memory in which a second program part of the application program which can be executed by the second processing unit is stored.
  • the first processing unit and the second processing unit are each assigned an installation routine which is designed to control an update of the first program part or of the second program part.
  • the first processing unit is designed to allocate an actual state from a predefined set of possible states depending on a state of the installation routine assigned to it and depending on an updating progress of the first program part during an update of the application program.
  • the second processing unit is designed to allocate an actual state from the predetermined set of possible states depending on a state of the installation routine assigned to it and depending on an update progress of the second program part during the update of the application program.
  • the first processing unit and the second processing unit are further configured, after a restart of the system or as soon as a successful storage of the first program part and the second program part or an error in the storage of the first program part and / or the second program part is detected, depending on the actual state of the first processing unit and the actual state of the second processing unit to execute predetermined processing steps in a predetermined order.
  • Advantageous embodiments of the first aspect also apply to the second aspect.
  • the information technology system is designed as a digital tachograph and the first processing unit comprises an application controller and the second processing unit a safety controller.
  • the digital Tachograph in such a way that a tamper-proof and reliable operation of the digital tachograph is possible, both during an update of the application program as well as a malfunction and / or interruption of the update of the application program as well as a targeted and / or unexpected restart (also referred to as reset) the first and / or second processing unit.
  • a system blockage due to an inconsistent state of the first program part and the second program part and / or the installation routine can be avoided.
  • FIG. 1 shows a simplified block diagram of an information technology system
  • Figures 2a and 2b each possible combinations of respective binary flags
  • Figures 3a and 3b is a flow chart of a program and another program for operating the information technology system.
  • FIG. 1 shows an exemplary embodiment of an information technology system 10.
  • the information technology system 10 may comprise, for example, an embedded system (also referred to as an embedded system).
  • the information technology system 10 may be comprised of a digital tachograph of a vehicle.
  • the information technology system 10 comprises at least a first processing unit CM and a second processing unit SM.
  • the first processing unit CM may, for example, comprise an application controller
  • the second processing unit SM may comprise, for example, a security controller.
  • the first processing unit CM and the second processing unit SM communicate with each other.
  • the first CM and second processing units SM are formed into a common execution of an application program.
  • the first processing unit CM is assigned a first memory in which a first program part of the application program which can be executed by the first processing unit CM is stored.
  • the second processing unit SM is assigned a second memory in which a second program part of the application program executable by the second processing unit SM is stored.
  • the first processing unit CM and the second processing unit SM are each assigned an installation routine SUC1, SUC2, which is designed to control an update of the first program part or of the second program part.
  • the respective installation routines SUC1, SUC2 can be started, for example, from the application program.
  • the second processing unit SM may be configured to verify the integrity of the first program part and / or the second part of the program.
  • the first processing unit CM is designed to start the updating of the
  • the first Processing unit CM can for this purpose have an interface IF, via which the first processing unit CM can communicate with external devices.
  • the second processing unit SM has no external interface via which the second processing unit SM can be externally accessed.
  • the first CM and second processing unit SM can, for example, cooperate in such a way that the second processing unit SM can communicate only as a function of the first processing unit CM.
  • the second processing unit SM may be configured to decide whether to start and / or stop updating the application program. Such a decision may be, for example, dependent on a successful authentication of an administrator on the second processing unit SM.
  • the application program is characterized as invalid as soon as only a part of the first program part and / or second program part is changed and the information technology system 10 is formed such that the application program characterized as invalid can not be executed.
  • the updating of the application program can be aborted as long as the first program part and the second program part have not yet been changed, not even partially.
  • the background to the fact that the update can not be aborted after a single change is typically that the program part has been overwritten in the respective memory area and the old software is no longer stored on the respective processing unit and thus can not be locally restored.
  • the application program when the application program is updated after a successful
  • the application program is actively characterized as being valid, and thus becomes executable for the information technology system 10, when the first and the second program part are being listened to.
  • the successful storage of the first and second program part may also include, for example, that the first CM and / or second processing unit SM has successfully verified the integrity of the first and second program part, for example by checking an electronic signature.
  • the first processing unit CM is adapted, depending on a state of its associated installation routine SUCL and depending on an update progress of the first program part during an update of the application program to assign an actual state of a predetermined set of possible states.
  • the second processing unit SM is designed to allocate an actual state from the predetermined set of possible states depending on a state of the installation routine SUC2 assigned to it and depending on an update progress of the second program part during the update of the application program.
  • the first processing unit CM and the second processing unit SM are designed to be recognized after a restart of the system 10 or as soon as a successful storage of the first program part and the second program part or an error in the storage of the first program part and / or the second program part is detected the predetermined state of the first processing unit CM and the actual state of the second processing unit SM each predetermined processing steps in a predetermined order to execute.
  • the set of possible states can include a first state ZA, which contains a first or a second valid program part and a respective inactive program routine. ne SUC1, SUC2 represents.
  • the set may further comprise a second state ZSUCa, which represents a first or a second valid program part and a respective active program routine SUC1, SUC2, and a third state ZSUCb, which has a first or a second invalid program part and a respective active program routine SUC1, SUC2 represents.
  • Table 1 summarizes possible state combinations for the first processing unit CM and the second processing unit SM. Furthermore, in Table 1, possible measures for the respective state combinations are specified, which are executed by the first processing unit CM after a restart (also referred to as reset) in order to cancel a possible inconsistent state of the first and second program part and the respective installation routines SUC1, SUC2.
  • a restart also referred to as reset
  • Processing processing unit first processing unit means CM depending on the
  • ZA ZSUCb CM has to start its installation routine SUC1, CM has already been given the authority of SM, her Installation routine SUC1 to start
  • ZSUCa ZSUCa Either CM and SM start the execution of the first or the second part of the program or CM and SM continue the respective installation routine SUC1, SUC2
  • the state combinations shown in Table 1 are, except for a critical state combination in which the first processing unit CM has the third state ZSUCb and the second processing unit SM has the first state ZA, for the information technology system 10 solvable.
  • the information technology system 10 is able, with the exception of the critical state combination, to to transfer the first processing unit CM and the second processing unit SM into an actual state by suitable measures, so that the information technology system 10 is executable, ie the first and second program parts are valid and thus executable or the respective installation routine SUC1, SUC2 is active or the respective installation routine SUC1, SUC2 can at least be restarted.
  • the critical state combination may be unsolvable, perhaps because the first processing unit CM, after the first part of the program has been partially overwritten by the update, after a restart is no longer bootable, and the application program would be responsible for the required authentication of an administrator for a new recording Update process to the second processing unit SM pass, but what they can not in the critical state combination. Due to the resulting deadlock, the system would be unusable.
  • the first processing unit CM If the first processing unit CM is in the first state ZA and the second processing unit SM is in the third state ZSUCb, the first processing unit CM must transition to the second state ZSUCa. If the first processing unit CM is in the second state ZSUCa and the second processing unit SM is in the first state ZA, the second processing unit SM can change to the second state ZSUCa, or the first processing unit CM has to return to the first state ZA. In all other cases, the respective actual states remain the same.
  • first the first processing unit CM returns to the second state ZSUCa insofar as it does not already have it, and then the second processing unit SM changes to the first state ZA replaced.
  • the second processing unit SM does not immediately change from the second state ZSUCa or third ZSUCb to the first state ZA. Instead, the first processing unit CM has or returns to the second state ZSUCa. Thereafter, the second processing unit SM changes to the first state ZA.
  • two binary flags CMU, CMI, SMU, SMI can be used to characterize the respective actual state of the first CM and second processing unit SM.
  • a respective first binary flag CMU, SMU can represent an inactive or an active installation routine SUC1, SUC2 of the first CM or of the second processing unit SM, respectively.
  • a respective second binary flag CMI, SMI can be deleted according to its binary state, _ sets a valid relationship example represent an invalid first program part or second part of the program.
  • the installation routine SUCl of the first processing unit CM may be configured to assign the respective binary state _ deleted to the first CMU and second binary flag CMI of the first processing unit CM.
  • the installation routine SUC2 of the second processing unit SM is designed, for example, to assign the first SMU and second binary flag SMI of the second processing unit SM the respective binary state _ deleted, _set.
  • the respective first binary flag CMU, SMU is assigned a second binary state _set by the respective installation routine SUCL, SUC2 as soon as the installation routine SUCl of the first processing unit CM or the installation routine SUC2 of the second processing unit SM is active.
  • the installation routine SCU1 of the first processing unit CM is started and the first binary flag SMU of the second processing unit SM becomes the second binary state
  • the installation routine SCU2 of the second processing unit SM is started.
  • the second binary state _set is assigned to the respective second binary flag CMI, SMI by the respective installation routine SUC1, SUC2 as soon as the first program part or the second program part becomes invalid due to a change in the first program part or the second program part.
  • Figures 2a and 2b show in tabular form each possible combinations of the respective binary flags CMU, CMI, SMU, SMI and the respective possible state of the first processing unit CM or of the second processing unit SM.
  • the fourth state Z_NA occurs here only artificially through the use of two binary flags CMU, CMI, SMU, SMI for the first CM or second processing unit SM and will not be considered further below.
  • the first CM or the second processing unit SM could have the fourth state Z_NA only if there is an active and direct manipulation of the respective installation routines SUC1, SUC2 and / or a reset logic.
  • the information technology system 10 would be in this case, for example, if at this time a restart (also referred to as reset), in a system blockade.
  • the binary states, _set the respective first CMU , SMU and second binary flags CMI, SMI are reset to the first binary state, which represents a valid program part or an inactive installation routine SUC1, SUC2.
  • the second processing unit SM assigns itself the first state ZA starting from the third state ZUCb.
  • the change of the third state ZSUCb of the second processing unit SM into the first state ZA is triggered, for example, by the first processing unit CM and thus at least partially controlled.
  • FIG. 3a shows a flow diagram of a program which is executed, for example, by the second processing unit SM.
  • FIG. 3b shows a flowchart of a further program which is executed, for example, by the first processing unit CM.
  • the two programs are used after a successful storage of the first and second program part, the binary flags CMU, CMI, SMU, SMI reset the predetermined order, so as to ensure that, for example, after a restart (also referred to as reset), which also arbitrary while the program update can take place, the information technology system 10 nevertheless has an executable operating state.
  • the first processing unit CM is designed, for example, to send a plurality of requests to the second processing unit SM.
  • the second processing unit SM is designed, for example, to send feedback messages to the requests of the first processing unit CM to the first processing unit CM.
  • the first processing unit CM may be configured to send the following requests to the second processing unit SM.
  • SUCStart This request causes the start of the installation routine SUC2 on the second processing unit SM, insofar as the second processing unit SUC2 processing unit SM allows the start of the installation routine SUC2.
  • This request causes the termination of the installation routine SUC2 on the second processing unit SM, insofar as the second processing unit SM permits the termination of the installation routine SUC2 and the second program part is successfully stored.
  • the first processing unit CM can check whether the installation routine SUC2 of the second processing unit SM is active.
  • the first processing unit CM can check whether the second program part of the second processing unit SM has been successfully stored.
  • the program (FIG. 3a) is started, for example, in a step S2_10.
  • the program is started, for example, after the recognition of a successful storage of the first and second program part by the second processing unit SM.
  • the program installation routine SUC2 of the second processing unit SM may be configured to recognize that the first program part and the second program part have been successfully stored.
  • the first SUC1 and / or second program installation routine SUC2 may be formed when an error occurs during the storage of the first program part or of the second program part to signal an error message.
  • the program installation routine SUC2 of the second processing unit SM may be configured to determine an integrity of the entire first program part and the second program part at the end of storage of the first and second program part. examples
  • the program can be started.
  • the second binary flag SMI is brought to the first binary state _ deleted.
  • a signal is sent from the second processing unit SM to the first processing unit CM to signal that the respective program installation routine SUC1, SUC2 can be terminated.
  • step S2_70 after the second processing unit SM has received the second command SUCStop sent by the first processing unit CM, the first binary flag SMU is switched over from the second binary state _set to the first binary state _delayed.
  • step S2_90 the program is ended.
  • the further program (FIG. 3b), which is executed by the first processing unit CM, is started, for example, in a step S1_40.
  • the start of the further program is preferably carried out after the detection of the signal for signaling that the respective program installation routines SUC2, SUC1 sent by the second processing unit SM to the first processing unit CM can be terminated.
  • a step Sl_50 the binary state of the second binary flag CMI of the first processing unit CM is switched, so that the first binary state _ has been cleared.
  • the first processing unit sends the CM second command SUCStop to the second processing unit SM.
  • the binary state of the first binary flag CMU of the first processing unit CM is switched so that it has the first binary state _delayed.
  • the further program is ended.
  • the error occurs at the second processing unit SM, it returns an error to the first processing unit CM.
  • the first processing unit CM is therefore also known in this case that an error has occurred.
  • the first processing unit CM sends the request SUCValid to the second processing unit SM and thus, together with its own second binary flag CMI, receives the information as to whether a return to the execution of the first and second program part, ie the execution of the application program, is permitted or not. If such a return is not allowed, in a second
  • Step the respective installation routines SUC1, SUC2 restarted.
  • the next step is the fourth step. If the return is permitted, in the second step, for example, a user can decide whether the application program or the respective installation routines SUC1, SUC2 should be restarted. If the application program is to be restarted, send in a third step, the first processing unit CM to the second processing unit SM, the request SUCStop and clears after positive feedback its own first binary flag CMU.
  • a restart also referred to as a reset
  • the application program is started or the respective installation routines SUC1, SUC2 are restarted.
  • the information technology system 10 has the critical state combination.
  • the respective first binary flag CMU, SMU decides whether the respective program part or the respective installation routine SUC1, SUC2 is started.
  • Processing unit SM can not be deleted because the first binary flag SMI of the second processing unit SM still has the second binary state _set.
  • the behavior of this implementation differs slightly in an error case from the embodiment described above, because the first processing unit CM still has no information about the validity of the second part of the program and can not offer the user a choice, either to an execution of the first and second part of the program or continue the update. This means that in case of error no distinction between the second state ZSUCa and the third state ZSUCb is more possible.

Abstract

The IT system (10) comprises at least one first processing unit (CM) and one second processing unit (SM). The first processing unit (CM) and the second processing unit (SM) are designed to jointly execute an application program. The first processing unit (CM) and the second processing unit (SM) are each associated with an installation routine (SUC1, SUC2) which is designed to control updating of a first program part or a second program part of the application program. Depending on a state of the respective installation routine (SUC1, SUC2) and depending on the respective update progress of the first or second program part during updating of the application program, an actual state from a predefined set of possible states is associated with the first processing unit (CM) and a second actual state is associated with the second processing unit (SM). After the system (10) has been rebooted or as soon as the first program part and the second program part have been successfully stored or an error is detected when storing the first program part and/or the second program part, predefined processing steps are respectively carried out in a predefined order by the first processing unit (CM) and the second processing unit (SM) depending on the actual state of the first processing unit (CM) and the actual state of the second processing unit (SM).

Description

Verfahren zum Betreiben eines informationstechnischen Systems und informationstechnisches System Method for operating an information technology system and information technology system
Die Erfindung betrifft ein Verfahren zum Betreiben eines informationstechnischen Systems, das zumindest eine erste Verarbeitungseinheit und eine zweite Verarbeitungseinheit aufweist, die miteinander verbunden sind. Ferner betrifft die Erfindung das informationstechnische System. The invention relates to a method for operating an information technology system which has at least a first processing unit and a second processing unit which are connected to one another. Furthermore, the invention relates to the information technology system.
Eine Vielzahl von Softwareprogrammen sind derart ausgebildet, dass für eine Ausführung des Softwareprogramms ein jeweiliger Programmteil des Softwareprogramms von unterschiedlichen Rechnereinheiten ausgeführt werden muss. Dies kann zum Beispiel dadurch begründet sein, dass eine Leistungsfähigkeit einer Recheneinheit nicht ausreichend ist und/oder spezielle Sicherheitsfunktionen von einer Recheneinheit ausgeführt werden, die speziell hierfür ausgebildet ist. Der Bedarf nach häufigen Aktualisierungen der Software und der Wunsch, ausreichenden Schutz für die Software der Rechnereinheiten vorzusehen, schaffen ferner einen Bedarf nach Rechnersystemen, die eine sichere und zuverlässige Softwareaufrüstung erlauben. Insbesondere bei Kontrolleinrichtungen für ein Kraftfahrzeug, beispielsweise bei einem digitalen Tachografen, sind die Anforderungen an eine Manipulationssicherheit der Software und an eine zuverlässige Softwareaufrüstung besonders hoch. A plurality of software programs are designed in such a way that, for execution of the software program, a respective program part of the software program has to be executed by different computer units. This may be due, for example, to the fact that a performance of a computing unit is not sufficient and / or special security functions are performed by a computing unit which is specially designed for this purpose. The need for frequent updates of the software and the desire to provide sufficient protection for the computer unit software also create a need for computer systems that allow for secure and reliable software upgrade. Particularly in the case of control devices for a motor vehicle, for example in the case of a digital tachograph, the requirements for manipulation security of the software and for reliable software upgrading are particularly high.
Die Aufgabe, die der der Erfindung zugrunde liegt, ist es, ein Verfahren zum Betreiben eines informationstechnischen Systems und das informationstechnische System zu schaffen, die einen zuverlässigen Betrieb des informationstechnischen Systems ermöglichen. Die Aufgabe wird gelöst durch die Merkmale der unabhängigen Patentansprüche. Vorteilhafte Weiterbildungen der Erfindung sind in den Unteransprüchen gekennzeichnet. The object underlying the invention is to provide a method for operating an information technology system and the information technology system, which enable reliable operation of the information technology system. The object is solved by the features of the independent claims. Advantageous developments of the invention are characterized in the subclaims.
Gemäß einem ersten Aspekt zeichnet sich die Erfindung aus durch ein Verfahren zum Betreiben eines informationstechnischen Systems. Das informationstechnische System umfasst zumindest eine erste Verarbeitungseinheit und eine zweite Verarbeitungseinheit, die miteinander in Verbindung stehen. Die erste Verarbeitungseinheit und die zweite Verarbeitungseinheit sind ausgebildet zu einer gemeinsamen Ausführung eines Anwendungsprogramms. Der ersten Verarbeitungseinheit ist ein erster Speicher zugeordnet, in dem ein von der ersten Verarbeitungseinheit ausführbarer erster Programmteil des Anwendungsprogramms gespeichert ist, und der zweiten Verarbeitungseinheit ist ein zweiter Speicher zugeordnet, in dem ein von der zweiten Verarbeitungseinheit ausführbarer zweiter Programmteil des Anwendungsprogramms gespeichert ist. Der ersten Verarbeitungseinheit und der zweiten Verarbeitungseinheit ist jeweils eine Installationsroutine zugeordnet, die ausgebildet ist, eine Aktualisierung des ersten Programmteils beziehungsweise des zweiten Programmteils zu steuern. Das Verfahren umfasst hierbei folgende Schritte: Abhängig von einem Zustand der jeweiligen Installationsroutine und abhängig von einem jeweiligen Aktualisierungsfortschritt des ersten Programmteils beziehungsweise des zweiten Programmteils während einer Aktualisierung des Anwendungsprogramms wird der ersten Verarbeitungseinheit ein Ist-Zustand aus einer vorgegebenen Menge von möglichen Zuständen zugeordnet und der zweiten Verarbeitungseinheit ein zweiter Ist-Zustand aus der vorgegebenen Menge möglicher Zustände. Nach einem Neustart des Systems oder sobald eine erfolgreiche Abspeicherung des ersten Programmteils und des zweiten Programmteils oder ein Fehler bei der Abspeicherung des ersten Programmteils und/oder des zweiten Programmteils erkannt wird, werden abhängig von dem Ist-Zustand der ersten Verarbeitungseinheit und dem Ist-Zustand der zweiten Verarbeitungseinheit jeweils vorgegebene Verarbeitungsschritte in einer vorgegebenen Reihenfolge von der ersten und der zweiten Verarbeitungseinheit ausgeführt . According to a first aspect, the invention is characterized by a method for operating an information technology system. The information technology system comprises at least a first processing unit and a second processing unit which are in communication with each other. The first processing unit and the second processing unit are formed into a common execution of an application program. The first processing unit is assigned a first memory in which a first program unit of the application program executable by the first processing unit is stored, and the second processing unit is assigned a second memory in which a second program portion of the application program executable by the second processing unit is stored. The first processing unit and the second processing unit are each assigned an installation routine which is designed to control an update of the first program part or of the second program part. The method comprises the following steps: Depending on a state of the respective installation routine and depending on a respective update progress of the first program part or the second program part during an update of the application program, the first processing unit is assigned an actual state from a predetermined set of possible states and the second processing unit, a second actual state from the predetermined set of possible states. After a restart of the system or as soon as a successful storage of the first program part and the second program part or an error in the storage of the first program part and / or the second program part is detected, depending on the actual state of the first processing unit and the actual state the second processing unit respectively predetermined processing steps in a predetermined order by the first and the second processing unit executed.
Dies ermöglicht vorteilhafterweise mit nur sehr geringem technischen Aufwand einen zuverlässigen Betrieb des informationstechnischen Systems sicherzustellen, sowohl während einer Aktualisierung des Anwendungsprogramms als auch bei einer Störung und/oder Unterbrechung der Aktualisierung des Anwendungsprogramms sowie bei einem gezielten und/oder unerwarteten Neustart (auch bezeichnet als Reset) der ersten und/oder zweiten Verarbeitungseinheit. Eine Systemblockade aufgrund eines inkonsistenten Zustande des ersten Programmteils und des zweiten Programmteils und/oder der Installationsroutinen kann vermieden werden. Der erste und zweite Programmteil kann jeweils Programmkode und/oder Programmdaten umfassen. This advantageously makes it possible to ensure reliable operation of the information technology system with only very little technical effort, both during an update of the application program and in the event of a malfunction and / or interruption of the update of the application program and during a targeted and / or unexpected restart (also referred to as reset ) of the first and / or second processing unit. A system blockage due to an inconsistent state of the first program part and the second program part and / or the installation routines can be avoided. The first and second program parts may each comprise program code and / or program data.
Das erfolgreiche Abspeichern des ersten und zweiten Programmteils kann hierbei auch umfassen, dass beispielsweise die erste und/oder zweite Verarbeitungseinheit die Integrität des ersten und zweiten Programmteils erfolgreich verifiziert hat. The successful storage of the first and second program part may in this case also include, for example, that the first and / or second processing unit has successfully verified the integrity of the first and second program part.
In einer vorteilhaften Ausgestaltung umfasst die Menge an möglichen Zuständen einen ersten Zustand, der einen ersten beziehungsweise einen zweiten gültigen Programmteil und eine jeweilige inaktive Programmroutine repräsentiert, einen zweiten Zustand, der einen ersten beziehungsweise einen zweiten gültigen Programmteil und eine jeweilige aktive Programmroutine repräsentiert, und einen dritten Zustand, der einen ersten beziehungsweise einen zweiten ungültigen Programmteil und eine jeweilige aktive Programmroutine der ersten beziehungsweise der zweiten Verarbeitungseinheit repräsentiert. In an advantageous embodiment, the set of possible states comprises a first state, which represents a first or a second valid program part and a respective inactive program routine, a second state, which represents a first and a second valid program part and a respective active program routine, and a third state, which represents a first or a second invalid program part and a respective active program routine of the first and the second processing unit.
In einer weiteren vorteilhaften Ausgestaltung werden nach einem Neustart des Systems oder sobald eine erfolgreiche Abspeicherung des ersten Programmteils und des zweiten Programmteils oder ein Fehler bei der Abspeicherung des ersten Programmteils und/oder des zweiten Programmteils erkannt wird, abhängig von dem Ist-Zustand der ersten Verarbeitungseinheit und dem Ist-Zustand der zweiten Verarbeitungseinheit unter vorgegebenen Bedingungen jeweils ein neuer Ist-Zustand zugeordnet gemäß folgender Vorschrift: Falls sich die erste Verarbeitungseinheit im ersten Zustand und die zweite Verarbeitungseinheit im zweiten Zustand befindet, kann die zweite Verarbeitungseinheit zum ersten Zustand zurückkehren, oder die erste Verarbeitungseinheit muss auf den zweiten Zustand umschalten. Falls sich die erste Verarbeitungseinheit im ersten Zustand und die zweite Verarbeitungseinheit im dritten Zustand befindet, muss die erste Verarbeitungseinheit in den zweiten Zustand übergehen. Falls sich die erste Verarbeitungseinheit im zweiten Zustand und die zweite Verarbeitungs- einheit im ersten Zustand befindet, kann die zweite Verarbeitungseinheit auf den zweiten Zustand wechseln, oder die erste Verarbeitungseinheit muss zum ersten Zustand zurückkehren. In allen anderen Fällen bleiben die jeweiligen Ist-Zustände gleich . In a further advantageous embodiment, after a restart of the system or as soon as a successful storage of the first program part and the second program part or an error in the storage of the first Program part and / or the second program part is detected, depending on the actual state of the first processing unit and the actual state of the second processing unit under predetermined conditions each assigned a new actual state according to the following rule: If the first processing unit in the first state and the second processing unit is in the second state, the second processing unit may return to the first state, or the first processing unit must switch to the second state. If the first processing unit is in the first state and the second processing unit is in the third state, the first processing unit must change to the second state. If the first processing unit is in the second state and the second processing unit is in the first state, the second processing unit can change to the second state, or the first processing unit must return to the first state. In all other cases, the respective actual states remain the same.
In einer weiteren vorteilhaften Ausgestaltung kehrt, sobald das erfolgreiche Abspeichern des ersten Programmteils und des zweiten Programmteils erkannt wird, die erste Verarbeitungseinheit zunächst in den zweiten Zustand zurück, insoweit sie ihn nicht bereits aufweist, und anschließend wechselt die zweite Verarbeitungseinheit in den ersten Zustand. In a further advantageous embodiment, as soon as the successful storage of the first program part and the second program part is detected, the first processing unit first returns to the second state insofar as it does not already have it, and then the second processing unit changes to the first state.
In einer weiteren vorteilhaften Ausgestaltung werden für eine Charakterisierung des Ist-Zustands der ersten Verarbeitungs- einheit und des Ist-Zustands der zweiten Verarbeitungseinheit jeweils zwei binäre Flags genutzt, wobei ein jeweils erstes binäres Flag je nach seinem Binärzustand eine inaktive beziehungsweise aktive Installationsroutine der ersten Verarbeitungseinheit beziehungsweise der zweiten Verarbeitungseinheit repräsentiert und ein jeweils zweites binäres Flag je nach seinem Binärzustand einen gültigen beziehungsweise einen ungültigen ersten Programmteil beziehungsweise zweiten Pro- grammteil repräsentiert. Dies ermöglicht eine sehr einfache und damit kostengünstige Charakterisierung der Ist-Zustände der ersten und zweiten Verarbeitungseinheit. In a further advantageous embodiment, two binary flags are respectively used to characterize the actual state of the first processing unit and the actual state of the second processing unit, wherein a respective first binary flag, depending on its binary state, an inactive or active installation routine of the first processing unit or the second processing unit and a respective second binary flag depending on its binary state, a valid or an invalid first program part or second Pro represents part of the program. This allows a very simple and thus cost-effective characterization of the actual states of the first and second processing unit.
In einer weiteren vorteilhaften Ausgestaltung werden, nach einem Neustart des Systems oder sobald das erfolgreiche Abspeichern des ersten Programmteils und des zweiten Programmteils oder ein Fehler bei der Abspeicherung des ersten Programmteils und/oder des zweiten Programmteils erkannt wird, abhängig von den Binärzuständen der jeweiligen ersten und zweiten binären Flags die vorgegebenen Verarbeitungsschritte in der vorgegebenen Reihenfolge von der ersten und der zweiten Verarbeitungseinheit ausgeführt. Vorteilhafterweise ist eine Auswertung der Binärzustände sehr einfach und mit technisch geringem Aufwand möglich. In a further advantageous embodiment, after a restart of the system or as soon as the successful saving of the first program part and the second program part or an error in the storage of the first program part and / or the second program part is detected, depending on the binary states of the respective first and second binary flags, the predetermined processing steps in the predetermined order of the first and the second processing unit executed. Advantageously, an evaluation of the binary states is very simple and technically possible with little effort.
In einer weiteren vorteilhaften Ausgestaltung werden, sobald das erfolgreiche Abspeichern des ersten Programmteils und des zweiten Programmteils erkannt wird, abhängig von den Binärzuständen der jeweiligen ersten und zweiten binären Flags in einer vorgegebenen Reihenfolge die Binärzustände der jeweiligen ersten und zweiten binären Flags auf den Binärzustand zurückgesetzt, der einen gültigen Programmteil beziehungsweise eine inaktive Installationsroutine repräsentiert. Das Zurücksetzen der ersten und zweiten binären Flags in der vorgegebenen Reihenfolge ermöglicht, dass für eine Vielzahl von Zu- standskombinationen, die die erste und zweite Verarbeitungseinheit aufweisen können, zu jeder Zeit des Betriebes des informationstechnischen Systems sichergestellt ist, dass das informationstechnische System lauffähig ist, das heißt der erste und zweite Programmteil sind gültig und damit jeweils ausführbar oder die jeweilige Installationsroutine ist aktiv oder die jeweilige Installationsroutine kann zumindest neu gestartet werden. In a further advantageous refinement, as soon as the successful saving of the first program part and of the second program part is detected, the binary states of the respective first and second binary flags are reset to the binary state in a predetermined order depending on the binary states of the respective first and second binary flags. representing a valid program part or an inactive installation routine. The resetting of the first and second binary flags in the predetermined order makes it possible for a multiplicity of state combinations, which the first and second processing units can have, at any time during the operation of the information technology system to ensure that the information technology system is executable, that is, the first and second program part are valid and thus each executable or the respective installation routine is active or the respective installation routine can be at least restarted.
In einer weiteren vorteilhaften Ausgestaltung ist die erste Verarbeitungseinheit ausgebildet, einen Start der Aktualisie- rung des Anwendungsprogramms zu initiieren und/oder ein Ende der Aktualisierung des Anwendungsprogramms zu initiieren. Vorzugsweise ist nur die erste Verarbeitungseinheit ausgebildet, einen Start der Aktualisierung des Anwendungsprogramms zu initiieren und/oder ein Ende der Aktualisierung des Anwendungsprogramms zu initiieren. Dies kann vorteilhafterweise einen Beitrag dazu leisten, dass das informationstechnische System besser vor Manipulationen, zum Beispiel Softwaremanipulationen, geschützt werden kann. In a further advantageous embodiment, the first processing unit is designed to start the update. initiate the application program and / or initiate an application program update. Preferably, only the first processing unit is configured to initiate a start of the update of the application program and / or to initiate an end of the update of the application program. This can advantageously contribute to ensuring that the information technology system can be better protected against manipulations, for example software manipulations.
In einer weiteren vorteilhaften Ausgestaltung ist die zweite Verarbeitungseinheit ausgebildet, zu entscheiden, ob die Aktualisierung des Anwendungsprogramms gestartet und/oder beendet wird. Vorzugsweise ist nur die zweite Verarbeitungseinheit ausgebildet, zu entscheiden, ob eine Aktualisierung des Anwendungsprogramms gestartet und/oder beendet werden darf oder nicht. Dies kann vorteilhafterweise einen Beitrag dazu leisten, dass das informationstechnische System besser vor Manipulationen, zum Beispiel Softwaremanipulationen, geschützt werden kann. In a further advantageous embodiment, the second processing unit is designed to decide whether the update of the application program is started and / or terminated. Preferably, only the second processing unit is adapted to decide whether an update of the application program may be started and / or stopped or not. This can advantageously contribute to ensuring that the information technology system can be better protected against manipulations, for example software manipulations.
In einer weiteren vorteilhaften Ausgestaltung ist die zweite Verarbeitungseinheit ausgebildet, eine Integrität des ersten Programmteils und/oder des zweiten Programmteils zu verifizieren. Dies ermöglicht beispielsweise eine Unversehrtheit und/oder Unverändertheit des ersten und/oder des zweiten Programmteils zu überprüfen. In a further advantageous embodiment, the second processing unit is designed to verify an integrity of the first program part and / or the second program part. This makes it possible, for example, to check the integrity and / or unchanging nature of the first and / or the second program part.
Gemäß einem zweiten Aspekt zeichnet sich die Erfindung aus durch ein informationstechnisches System, das zumindest eine erste Verarbeitungseinheit und eine zweite Verarbeitungseinheit umfasst. Die erste und die zweite Verarbeitungseinheit stehen miteinander in Verbindung und sind ausgebildet zu einer gemeinsamen Ausführung eines Anwendungsprogramms . Der ersten Verarbeitungseinheit ist ein erster Speicher zugeordnet, in dem ein von der ersten Verarbeitungseinheit ausführbarer erster Programmteil des Anwendungsprogramms gespeichert ist. Der zweiten Verarbeitungseinheit ist ein zweiter Speicher zugeordnet, in dem ein von der zweiten Verarbeitungseinheit ausführbarer zweiter Programmteil des Anwendungsprogramms gespeichert ist. Ferner ist der ersten Verarbeitungs- einheit und der zweiten Verarbeitungseinheit jeweils eine Installationsroutine zugeordnet, die ausgebildet ist, eine Aktualisierung des ersten Programmteils beziehungsweise des zweiten Programmteils zu steuern. Die erste Verarbeitungseinheit ist ausgebildet, abhängig von einem Zustand der ihr zu- geordneten Installationsroutine und abhängig von einem Aktualisierungsfortschritt des ersten Programmteils während einer Aktualisierung des Anwendungsprogramms sich einen Ist-Zustand aus einer vorgegebenen Menge von möglichen Zuständen zuzuordnen. Die zweite Verarbeitungseinheit ist ausgebildet, abhän- gig von einem Zustand der ihr zugeordneten Installationsroutine und abhängig von einem Aktualisierungsfortschritt des zweiten Programmteils während der Aktualisierung des Anwendungsprogramms sich einen Ist-Zustand aus der vorgegebenen Menge von möglichen Zuständen zuzuordnen. Die erste Verarbei- tungseinheit und die zweite Verarbeitungseinheit sind ferner ausgebildet, nach einem Neustart des Systems oder sobald eine erfolgreiche Abspeicherung des ersten Programmteils und des zweiten Programmteils oder ein Fehler bei der Abspeicherung des ersten Programmteils und/oder des zweiten Programmteils erkannt wird, abhängig von dem Ist-Zustand der ersten Verarbeitungseinheit und dem Ist-Zustand der zweiten Verarbeitungseinheit jeweils vorgegebene Verarbeitungsschritte in einer vorgegebenen Reihenfolge auszuführen. Vorteilhafte Ausgestaltungen des ersten Aspekts gelten hierbei auch für den zweiten Aspekt. According to a second aspect, the invention is characterized by an information technology system comprising at least a first processing unit and a second processing unit. The first and second processing units communicate with each other and are adapted to a common execution of an application program. The first processing unit is assigned a first memory in which a first program part of the application program which can be executed by the first processing unit is stored is. The second processing unit is assigned a second memory in which a second program part of the application program which can be executed by the second processing unit is stored. Furthermore, the first processing unit and the second processing unit are each assigned an installation routine which is designed to control an update of the first program part or of the second program part. The first processing unit is designed to allocate an actual state from a predefined set of possible states depending on a state of the installation routine assigned to it and depending on an updating progress of the first program part during an update of the application program. The second processing unit is designed to allocate an actual state from the predetermined set of possible states depending on a state of the installation routine assigned to it and depending on an update progress of the second program part during the update of the application program. The first processing unit and the second processing unit are further configured, after a restart of the system or as soon as a successful storage of the first program part and the second program part or an error in the storage of the first program part and / or the second program part is detected, depending on the actual state of the first processing unit and the actual state of the second processing unit to execute predetermined processing steps in a predetermined order. Advantageous embodiments of the first aspect also apply to the second aspect.
In einer vorteilhaften Ausgestaltung ist das Informationstechnische System als digitaler Tachograf ausgebildet und die erste Verarbeitungseinheit umfasst einen Applikationscontroller und die zweite Verarbeitungseinheit einen Sicherheitscontroller. Vorteilhafterweise ermöglicht dies, den digitalen Tachograf derart auszubilden, dass ein manipulationsgesicherter und zuverlässiger Betrieb des digitalen Tachografen möglich ist, sowohl während einer Aktualisierung des Anwendungsprogramms als auch bei einer Störung und/oder Unterbrechung der Aktualisierung des Anwendungsprogramms sowie bei einem gezielten und/oder unerwarteten Neustart (auch bezeichnet als Reset) der ersten und/oder zweiten Verarbeitungseinheit. Eine Systemblockade aufgrund eines inkonsistenten Zustande des ersten Programmteils und des zweiten Programmteils und/oder der Installationsroutine kann vermieden werden. In an advantageous embodiment, the information technology system is designed as a digital tachograph and the first processing unit comprises an application controller and the second processing unit a safety controller. Advantageously, this allows the digital Tachograph in such a way that a tamper-proof and reliable operation of the digital tachograph is possible, both during an update of the application program as well as a malfunction and / or interruption of the update of the application program as well as a targeted and / or unexpected restart (also referred to as reset) the first and / or second processing unit. A system blockage due to an inconsistent state of the first program part and the second program part and / or the installation routine can be avoided.
Ausführungsbeispiele der Erfindung sind im Folgenden anhand der schematischen Zeichnungen erläutert. Es zeigen: Embodiments of the invention are explained below with reference to the schematic drawings. Show it:
Figur 1 ein vereinfachtes Blockschaltbild eines informationstechnischen Systems, FIG. 1 shows a simplified block diagram of an information technology system,
Figuren 2a und 2b jeweils mögliche Kombinationen von jeweiligen binären Flags und Figures 2a and 2b each possible combinations of respective binary flags and
Figuren 3a und 3b ein Ablaufdiagram eines Programms und eines weiteren Programms zum Betreiben des informationstechnischen Systems . Figures 3a and 3b is a flow chart of a program and another program for operating the information technology system.
Elemente gleicher Konstruktion oder Funktion sind figurenübergreifend mit den gleichen Bezugszeichen versehen. Elements of the same construction or function are provided across the figures with the same reference numerals.
Figur 1 zeigt ein Ausführungsbeispiel eines informationstechnisches Systems 10. Das informationstechnische System 10 kann beispielsweise ein eingebettetes System (auch bezeichnet als Embedded System) umfassen. Beispielsweise kann das informationstechnischen System 10 von einem digitalen Tachografen eines Fahrzeugs umfasst sein. Das informationstechnische System 10 umfasst zumindest eine erste Verarbeitungseinheit CM und eine zweite Verarbeitungseinheit SM. Die erste Verarbeitungseinheit CM kann beispielsweise einen Applikationscontroller umfassen und die zweite Verarbeitungseinheit SM kann beispielsweise einen Sicherheitscontroller umfassen . FIG. 1 shows an exemplary embodiment of an information technology system 10. The information technology system 10 may comprise, for example, an embedded system (also referred to as an embedded system). For example, the information technology system 10 may be comprised of a digital tachograph of a vehicle. The information technology system 10 comprises at least a first processing unit CM and a second processing unit SM. The first processing unit CM may, for example, comprise an application controller, and the second processing unit SM may comprise, for example, a security controller.
Die erste Verarbeitungseinheit CM und die zweite Verarbeitungseinheit SM stehen miteinander in Verbindung. Die erste CM und zweite Verarbeitungseinheit SM sind ausgebildet zu einer gemeinsamen Ausführung eines Anwendungsprogramms . Der ersten Verarbeitungseinheit CM ist hierzu ein erster Speicher zugeordnet, in dem ein von der ersten Verarbeitungseinheit CM ausführbarer erster Programmteil des Anwendungsprogramms gespeichert ist. Der zweiten Verarbeitungseinheit SM ist ein zweiter Speicher zugeordnet, in dem ein von der zweiten Ver- arbeitungseinheit SM ausführbarer zweiter Programmteil des Anwendungsprogramms gespeichert ist. Der ersten Verarbeitungseinheit CM und der zweiten Verarbeitungseinheit SM ist jeweils eine Installationsroutine SUC1, SUC2 zugeordnet, die ausgebildet ist, eine Aktualisierung des ersten Programmteils beziehungsweise des zweiten Programmteils zu steuern. Die jeweiligen Installationsroutinen SUC1, SUC2 können beispielsweise aus dem Anwendungsprogramm heraus gestartet werden. The first processing unit CM and the second processing unit SM communicate with each other. The first CM and second processing units SM are formed into a common execution of an application program. For this purpose, the first processing unit CM is assigned a first memory in which a first program part of the application program which can be executed by the first processing unit CM is stored. The second processing unit SM is assigned a second memory in which a second program part of the application program executable by the second processing unit SM is stored. The first processing unit CM and the second processing unit SM are each assigned an installation routine SUC1, SUC2, which is designed to control an update of the first program part or of the second program part. The respective installation routines SUC1, SUC2 can be started, for example, from the application program.
Für eine Aktualisierung des Anwendungsprogramms können ver- schiedene Maßnahmen vorgesehen sein, die einen Beitrag dazu leisten, dass eine Konsistenz des Anwendungsprogramms einfach sichergestellt werden kann und das informationstechnische System 10 zuverlässig betrieben werden kann. Beispielsweise kann die zweite Verarbeitungseinheit SM ausgebildet sein, die Integrität des ersten Programmteils und/oder des zweiten Programmteils zu verifizieren. For updating the application program, various measures can be provided which contribute to ensuring consistency of the application program and to reliably operating the information technology system 10. For example, the second processing unit SM may be configured to verify the integrity of the first program part and / or the second part of the program.
Ferner kann vorgesehen sein, dass die erste Verarbeitungsein- heit CM ausgebildet ist, einen Start der Aktualisierung desFurthermore, it can be provided that the first processing unit CM is designed to start the updating of the
Anwendungsprogramms zu initiieren und/oder ein Ende der Aktualisierung des Anwendungsprogramms zu initiieren. Die erste Verarbeitungseinheit CM kann hierzu eine Schnittstelle IF aufweisen, über die die erste Verarbeitungseinheit CM mit externen Einrichtungen kommunizieren kann. Vorzugsweise weist die zweite Verarbeitungseinheit SM keine externe Schnittstelle auf, über die auf die zweite Verarbeitungseinheit SM von extern zugegriffen werden kann. Die erste CM und zweite Verarbeitungseinheit SM können beispielsweise derart zusammenwirken, dass die zweite Verarbeitungseinheit SM nur abhängig von der ersten Verarbeitungseinheit CM kommunizieren kann. Initiate application program and / or initiate an end of the update of the application program. The first Processing unit CM can for this purpose have an interface IF, via which the first processing unit CM can communicate with external devices. Preferably, the second processing unit SM has no external interface via which the second processing unit SM can be externally accessed. The first CM and second processing unit SM can, for example, cooperate in such a way that the second processing unit SM can communicate only as a function of the first processing unit CM.
Die zweite Verarbeitungseinheit SM kann ausgebildet sein, zu entscheiden, ob die Aktualisierung des Anwendungsprogramms gestartet und/oder beendet wird. Solch eine Entscheidung kann beispielsweise abhängig von einer erfolgreichen Authentisie- rung eines Administrators auf der zweiten Verarbeitungsein- heit SM sein. The second processing unit SM may be configured to decide whether to start and / or stop updating the application program. Such a decision may be, for example, dependent on a successful authentication of an administrator on the second processing unit SM.
Beispielsweise kann vorgesehen sein, dass das Anwendungsprogramm als ungültig charakterisiert wird, sobald auch nur ein Teil des ersten Programmteils und/oder zweiten Programmteils geändert wird und das informationstechnische System 10 derart ausbildet ist, dass das als ungültig charakterisierte Anwendungsprogramm nicht ausgeführt werden kann. For example, it can be provided that the application program is characterized as invalid as soon as only a part of the first program part and / or second program part is changed and the information technology system 10 is formed such that the application program characterized as invalid can not be executed.
Ferner kann vorgesehen sein, dass die Aktualisierung des Anwendungsprogramms abgebrochen werden kann, solange der erste Programmteil und der zweite Programmteil noch nicht, auch nicht teilweise, geändert wurde. Hintergrund hierfür, dass die Aktualisierung nach einer einzelnen Änderung nicht abgebrochen werden kann, ist typischerweise, dass der Programmteil im jeweiligen Speicherbereich überschrieben wurde und die alte Software nicht mehr auf der jeweiligen Verarbeitungseinheit gespeichert ist und somit nicht lokal wiederhergestellt werden kann. Furthermore, it can be provided that the updating of the application program can be aborted as long as the first program part and the second program part have not yet been changed, not even partially. The background to the fact that the update can not be aborted after a single change is typically that the program part has been overwritten in the respective memory area and the old software is no longer stored on the respective processing unit and thus can not be locally restored.
Des Weiteren kann vorgesehen sein, dass bei einer Aktualisierung des Anwendungsprogramms nach einem erfolgreichen Abspei- ehern des ersten und des zweiten Programmteils das Anwendungsprogramm aktiv als gültig charakterisiert wird und damit für das informationstechnische System 10 ausführbar wird. Das erfolgreiche Abspeichern des ersten und zweiten Programmteils kann hierbei auch umfassen, dass beispielsweise die erste CM und/oder zweite Verarbeitungseinheit SM die Integrität des ersten und zweiten Programmteils erfolgreich verifiziert hat, beispielsweise durch Prüfen einer elektronischen Signatur. Furthermore, it can be provided that when the application program is updated after a successful The application program is actively characterized as being valid, and thus becomes executable for the information technology system 10, when the first and the second program part are being listened to. The successful storage of the first and second program part may also include, for example, that the first CM and / or second processing unit SM has successfully verified the integrity of the first and second program part, for example by checking an electronic signature.
Die erste Verarbeitungseinheit CM ist ausgebildet, abhängig von einem Zustand der ihr zugeordneten Installationsroutine SUCl und abhängig von einem Aktualisierungsfortschritt des ersten Programmteils während einer Aktualisierung des Anwendungsprogramms sich einen Ist-Zustand aus einer vorgegebenen Menge von möglichen Zuständen zuzuordnen. The first processing unit CM is adapted, depending on a state of its associated installation routine SUCL and depending on an update progress of the first program part during an update of the application program to assign an actual state of a predetermined set of possible states.
Die zweite Verarbeitungseinheit SM ist ausgebildet, abhängig von einem Zustand der ihr zugeordneten Installationsroutine SUC2 und abhängig von einem Aktualisierungsfortschritt des zweiten Programmteils während der Aktualisierung des Anwendungsprogramms sich einen Ist-Zustand aus der vorgegebenen Menge von möglichen Zuständen zuzuordnen. The second processing unit SM is designed to allocate an actual state from the predetermined set of possible states depending on a state of the installation routine SUC2 assigned to it and depending on an update progress of the second program part during the update of the application program.
Die erste Verarbeitungseinheit CM und die zweite Verarbeitungseinheit SM sind ausgebildet, nach einem Neustart des Systems 10 oder sobald eine erfolgreiche Abspeicherung des ersten Programmteils und des zweiten Programmteils oder ein Fehler bei der Abspeicherung des ersten Programmteils und/oder des zweiten Programmteils erkannt wird, abhängig von dem Ist-Zustand der ersten Verarbeitungseinheit CM und dem Ist-Zustand der zweiten Verarbeitungseinheit SM jeweils vorgegebene Verarbeitungsschritte in einer vorgegebenen Reihenfolge auszuführen. The first processing unit CM and the second processing unit SM are designed to be recognized after a restart of the system 10 or as soon as a successful storage of the first program part and the second program part or an error in the storage of the first program part and / or the second program part is detected the predetermined state of the first processing unit CM and the actual state of the second processing unit SM each predetermined processing steps in a predetermined order to execute.
Die Menge an möglichen Zuständen kann einen ersten Zustand ZA umfassen, der einen ersten beziehungsweise einen zweiten gültigen Programmteil und eine jeweilige inaktive Programmrouti- ne SUC1, SUC2 repräsentiert. Fern kann die Menge einen zweiten Zustand ZSUCa umfassen, der einen ersten beziehungsweise einen zweiten gültigen Programmteil und eine jeweilige aktive Programmroutine SUC1, SUC2 repräsentiert, und einen dritten Zustand ZSUCb umfassen, der einen ersten beziehungsweise einen zweiten ungültigen Programmteil und eine jeweilige aktive Programmroutine SUC1, SUC2 repräsentiert. The set of possible states can include a first state ZA, which contains a first or a second valid program part and a respective inactive program routine. ne SUC1, SUC2 represents. The set may further comprise a second state ZSUCa, which represents a first or a second valid program part and a respective active program routine SUC1, SUC2, and a third state ZSUCb, which has a first or a second invalid program part and a respective active program routine SUC1, SUC2 represents.
In Tabelle 1 sind mögliche Zustandskombinationen für die erste Verarbeitungseinheit CM und die zweite Verarbeitungseinheit SM zusammengefasst . Ferner sind in Tabelle 1 für die jeweilige Zustandskombinationen mögliche Maßnahmen angegeben, die von der ersten Verarbeitungseinheit CM nach einem Neustart (auch bezeichnet als Reset) ausgeführt werden, um einen möglichen inkonsistenten Zustand des ersten und zweiten Programmteils und der jeweiligen Installationsroutinen SUC1, SUC2 aufzuheben. Table 1 summarizes possible state combinations for the first processing unit CM and the second processing unit SM. Furthermore, in Table 1, possible measures for the respective state combinations are specified, which are executed by the first processing unit CM after a restart (also referred to as reset) in order to cancel a possible inconsistent state of the first and second program part and the respective installation routines SUC1, SUC2.
Zustand erste Zustand zweite Notwendige Maßnahmen derState first state second necessary measures of
Verarbeitungs- Verarbeitungsein- ersten Verarbeitungseineinheit heit heit CM abhängig von der Processing processing unit first processing unit means CM depending on the
CM SM zweiten Verarbeitungseinheit  CM SM second processing unit
ZA ZA keine  ZA ZA no
ZA ZSUCa Entweder SM kehrt in die  ZA ZSUCa Either SM returns to the
Ausführung des zweiten Programmteils zurück oder CM startet ihre Installationsroutine SUC1 (CM hat bereits die Befugnis von SM erhalten, ihre Installationsroutine SUC1, SUC2 zu starten)  Execution of the second part of the program back or CM starts its installation routine SUC1 (CM has already been authorized by SM to start its installation routine SUC1, SUC2)
ZA ZSUCb CM muss ihre Installationsroutine SUC1 starten, CM hat bereits die Befugnis von SM erhalten, ihre Installationsroutine SUC1 zu starten ZA ZSUCb CM has to start its installation routine SUC1, CM has already been given the authority of SM, her Installation routine SUC1 to start
ZSUCa ZA Entweder CM kehrt in die  ZSUCa ZA Either CM returns to the
Ausführung des ersten Programmteils zurück oder SM startet ihre Installationsroutine SUC2  Execution of the first program part back or SM starts its installation routine SUC2
ZSUCa ZSUCa Entweder CM und SM starten die Ausführung des ersten beziehungsweise des zweiten Programmteils oder CM und SM führen die jeweilige Installationsroutine SUC1, SUC2 fort ZSUCa ZSUCa Either CM and SM start the execution of the first or the second part of the program or CM and SM continue the respective installation routine SUC1, SUC2
ZSUCa ZSUCb Die Aktualisierung des ersten und zweiten Programmteils muss durchgeführt werden ZSUCa ZSUCb The updating of the first and second part of the program must be carried out
ZSUCb ΖΆ Diese Kombination ist unlösbar  ZSUCb ΖΆ This combination is unsolvable
ZSUCb ZSUCa Die Aktualisierung des ersten und zweiten Programmteils muss durchgeführt werden  ZSUCb ZSUCa The updating of the first and second part of the program must be carried out
ZSUCb ZSUCb Die Aktualisierung des ersten und zweiten Programmteils muss durchgeführt werden  ZSUCb ZSUCb The updating of the first and second part of the program must be carried out
Tabelle 1  Table 1
Die in Tabelle 1 gezeigten Zustandskombinationen sind bis auf eine kritische Zustandskombination, bei der die erste Verar- beitungseinheit CM den dritten Zustand ZSUCb aufweist und die zweite Verarbeitungseinheit SM den ersten Zustand ZA aufweist, für das informationstechnische System 10 lösbar. Das informationstechnische System 10 ist, mit Ausnahme wenn es die kritische Zustandskombination aufweist, in der Lage, durch geeignete Maßnahmen die erste Verarbeitungseinheit CM und die zweite Verarbeitungseinheit SM jeweils in einen Ist- Zustand zu überführen, sodass das informationstechnische System 10 lauffähig ist, das heißt der erste und zweite Programmteil sind gültig und damit jeweils ausführbar oder die jeweilige Installationsroutine SUC1, SUC2 ist aktiv oder die jeweilige Installationsroutine SUC1, SUC2 kann zumindest neu gestartet werden. The state combinations shown in Table 1 are, except for a critical state combination in which the first processing unit CM has the third state ZSUCb and the second processing unit SM has the first state ZA, for the information technology system 10 solvable. The information technology system 10 is able, with the exception of the critical state combination, to to transfer the first processing unit CM and the second processing unit SM into an actual state by suitable measures, so that the information technology system 10 is executable, ie the first and second program parts are valid and thus executable or the respective installation routine SUC1, SUC2 is active or the respective installation routine SUC1, SUC2 can at least be restarted.
Die kritischen Zustandskombination kann unlösbar sein, etwa weil die erste Verarbeitungseinheit CM, nachdem der erste Programmteil durch die Aktualisierung teilweise überschrieben wurde, nach einem Neustart nicht mehr startfähig ist, und das Anwendungsprogramm aber dafür zuständig wäre, die erforderliche Authentisierung eines Administrators für eine Neuaufnahme des Aktualisierungsprozesses an die zweite Verarbeitungseinheit SM weiterzureichen, was sie in der kritischen Zustandskombination aber nicht mehr kann. Durch die daraus resultierende Verklemmung wäre das System unbenutzbar. The critical state combination may be unsolvable, perhaps because the first processing unit CM, after the first part of the program has been partially overwritten by the update, after a restart is no longer bootable, and the application program would be responsible for the required authentication of an administrator for a new recording Update process to the second processing unit SM pass, but what they can not in the critical state combination. Due to the resulting deadlock, the system would be unusable.
Aus diesem Grund werden nach einem Neustart des Systems 10 oder sobald eine erfolgreiche Abspeicherung des ersten Programmteils und des zweiten Programmteils oder ein Fehler bei der Abspeicherung des ersten Programmteils und/oder des zweiten Programmteils erkannt wird, abhängig von dem Ist-Zustand der ersten Verarbeitungseinheit CM und dem Ist-Zustand der zweiten Verarbeitungseinheit SM unter vorgegebenen Bedingungen jeweils ein neuer Ist-Zustand zugeordnet gemäß folgender Vorschrift: Falls sich die erste Verarbeitungseinheit CM im ersten Zustand ZA und die zweite Verarbeitungseinheit SM im zweiten Zustand ZSUCa befindet, kann die zweite Verarbeitungseinheit SM zum ersten Zustand ZA zurückkehren, oder die erste Verarbeitungseinheit CM muss auf den zweiten Zustand ZSUCa umschalten. Falls sich die erste Verarbeitungseinheit CM im ersten Zustand ZA und die zweite Verarbeitungseinheit SM im dritten Zustand ZSUCb befindet, muss die erste Verarbeitungseinheit CM in den zweiten Zustand ZSUCa übergehen. Falls sich die erste Verarbeitungseinheit CM im zweiten Zustand ZSUCa und die zweite Verarbeitungseinheit SM im ersten Zustand ZA befindet, kann die zweite Verarbeitungseinheit SM auf den zweiten Zustand ZSUCa wechseln, oder die erste Verar- beitungseinheit CM muss zum ersten Zustand ZA zurückkehren. In allen anderen Fällen bleiben die jeweiligen Ist-Zustände gleich . For this reason, after a restart of the system 10 or as soon as a successful storage of the first program part and the second program part or an error in the storage of the first program part and / or the second program part is detected, depending on the actual state of the first processing unit CM and the actual state of the second processing unit SM under predetermined conditions each assigned a new actual state according to the following rule: If the first processing unit CM in the first state ZA and the second processing unit SM in the second state ZSUCa, the second processing unit SM for return first state ZA, or the first processing unit CM must switch to the second state ZSUCa. If the first processing unit CM is in the first state ZA and the second processing unit SM is in the third state ZSUCb, the first processing unit CM must transition to the second state ZSUCa. If the first processing unit CM is in the second state ZSUCa and the second processing unit SM is in the first state ZA, the second processing unit SM can change to the second state ZSUCa, or the first processing unit CM has to return to the first state ZA. In all other cases, the respective actual states remain the same.
Ein Auftreten der kritischen Zustandskombination wird somit das erfindungsgemäße Verfahren vermieden. An occurrence of the critical combination of states thus the inventive method is avoided.
Insbesondere kehrt, sobald das erfolgreiche Abspeichern des ersten Programmteils und des zweiten Programmteils erkannt wird, zunächst die erste Verarbeitungseinheit CM in den zwei- ten Zustand ZSUCa zurück, insoweit sie ihn nicht bereits aufweist, und anschließend Wechsel die zweite Verarbeitungseinheit SM in den ersten Zustand ZA wechselt. In particular, as soon as the successful saving of the first program part and of the second program part is detected, first the first processing unit CM returns to the second state ZSUCa insofar as it does not already have it, and then the second processing unit SM changes to the first state ZA replaced.
Dies kann sicherstellen, dass nach dem Abspeichern des ersten Programmteils und des zweiten Programmteils die zweite Verarbeitungseinheit SM aus dem zweiten Zustand ZSUCa oder dritten ZSUCb nicht sofort in den ersten Zustand ZA wechselt. Stattdessen weist die erste Verarbeitungseinheit CM den zweiten Zustand ZSUCa auf oder kehrt dorthin zurück. Danach wechselt die zweite Verarbeitungseinheit SM in den ersten Zustand ZA. This can ensure that after the first program part and the second program part have been stored, the second processing unit SM does not immediately change from the second state ZSUCa or third ZSUCb to the first state ZA. Instead, the first processing unit CM has or returns to the second state ZSUCa. Thereafter, the second processing unit SM changes to the first state ZA.
Für eine Charakterisierung des jeweiligen Ist-Zustands der ersten CM und zweiten Verarbeitungseinheit SM können beispielsweise jeweils zwei binäre Flags CMU, CMI, SMU, SMI ge- nutzt werden. Ein jeweils erstes binäres Flag CMU, SMU kann je nach seinem Binärzustand _gelöscht, _gesetzt eine inaktive beziehungsweise eine aktive Installationsroutine SUC1, SUC2 der ersten CM beziehungsweise der zweiten Verarbeitungseinheit SM repräsentieren. For example, in each case two binary flags CMU, CMI, SMU, SMI can be used to characterize the respective actual state of the first CM and second processing unit SM. Depending on its binary state, a respective first binary flag CMU, SMU can represent an inactive or an active installation routine SUC1, SUC2 of the first CM or of the second processing unit SM, respectively.
Ein jeweils zweites binäres Flag CMI, SMI kann je nach seinem Binärzustand _gelöscht, _gesetzt einen gültigen beziehungs- weise einen ungültigen ersten Programmteil beziehungsweise zweiten Programmteil repräsentieren. A respective second binary flag CMI, SMI can be deleted according to its binary state, _ sets a valid relationship example represent an invalid first program part or second part of the program.
Hierzu kann beispielsweise die Installationsroutine SUCl der ersten Verarbeitungseinheit CM ausgebildet sein, dem ersten CMU und zweiten binären Flag CMI der ersten Verarbeitungseinheit CM den jeweiligen Binärzustand _gelöscht, _gesetzt zuzuweisen. Die Installationsroutine SUC2 der zweiten Verarbeitungseinheit SM ist beispielsweise ausgebildet, dem ersten SMU und zweiten binären Flag SMI der zweiten Verarbeitungseinheit SM den jeweiligen Binärzustand _gelöscht, _gesetzt zuzuweisen . For this purpose, for example, the installation routine SUCl of the first processing unit CM may be configured to assign the respective binary state _ deleted to the first CMU and second binary flag CMI of the first processing unit CM. The installation routine SUC2 of the second processing unit SM is designed, for example, to assign the first SMU and second binary flag SMI of the second processing unit SM the respective binary state _ deleted, _set.
Dem jeweiligen ersten binären Flag CMU, SMU wird von der je- weiligen Installationsroutine SUCl, SUC2 ein zweiter Binärzustand _gesetzt zugeordnet, sobald die Installationsroutine SUCl der ersten Verarbeitungseinheit CM beziehungsweise die Installationsroutine SUC2 der zweiten Verarbeitungseinheit SM aktiv ist. Solange das erste binäre Flag CMU der ersten Ver- arbeitungseinheit CM den zweiten Binärzustand _gesetzt aufweist, wird bei einem Neustart der ersten Verarbeitungseinheit CM die Installationsroutine SCUl der ersten Verarbeitungseinheit CM gestartet und solange das erste binäre Flag SMU der zweiten Verarbeitungseinheit SM den zweiten Binärzu- stand _gesetzt aufweist, wird bei einem Neustart der zweiten Verarbeitungseinheit SM die Installationsroutine SCU2 der zweiten Verarbeitungseinheit SM gestartet. The respective first binary flag CMU, SMU is assigned a second binary state _set by the respective installation routine SUCL, SUC2 as soon as the installation routine SUCl of the first processing unit CM or the installation routine SUC2 of the second processing unit SM is active. As long as the first binary flag CMU of the first processing unit CM has the second binary state _set, when the first processing unit CM restarts, the installation routine SCU1 of the first processing unit CM is started and the first binary flag SMU of the second processing unit SM becomes the second binary state When the second processing unit SM restarts, the installation routine SCU2 of the second processing unit SM is started.
Dem jeweiligen zweiten binären Flag CMI, SMI wird von der je- weiligen Installationsroutine SUCl, SUC2 der zweite Binärzustand _gesetzt zugeordnet, sobald der erste Programmteil beziehungsweise der zweite Programmteil aufgrund einer Änderung des ersten Programmteils beziehungsweise des zweiten Programmteils ungültig wird. The second binary state _set is assigned to the respective second binary flag CMI, SMI by the respective installation routine SUC1, SUC2 as soon as the first program part or the second program part becomes invalid due to a change in the first program part or the second program part.
Die Figuren 2a und 2b zeigen in Tabellenform jeweils mögliche Kombinationen der jeweiligen binären Flags CMU, CMI, SMU, SMI und den jeweiligen möglichen Zustand der ersten Verarbeitungseinheit CM beziehungsweise der zweiten Verarbeitungseinheit SM. Figures 2a and 2b show in tabular form each possible combinations of the respective binary flags CMU, CMI, SMU, SMI and the respective possible state of the first processing unit CM or of the second processing unit SM.
Der vierte Zustand Z_NA tritt hier nur künstlich auf durch die Verwendung von jeweils zweier binärer Flags CMU, CMI, SMU, SMI für die erste CM beziehungsweise zweite Verarbeitungseinheit SM und wird im Folgenden nicht weiter betrachtet. Die erste CM beziehungsweise die zweite Verarbeitungseinheit SM könnte den vierten Zustand Z_NA nur aufweisen, wenn eine aktive und direkte Manipulation der jeweiligen Installationsroutinen SUC1, SUC2 und/oder einer Reset-Logik erfolgt. Das informationstechnische System 10 würde sich in diesem Fall, beispielsweise wenn zu diesem Zeitpunkt ein Neustart (auch bezeichnet als Reset) erfolgt, in einer Systemblockade befinden. The fourth state Z_NA occurs here only artificially through the use of two binary flags CMU, CMI, SMU, SMI for the first CM or second processing unit SM and will not be considered further below. The first CM or the second processing unit SM could have the fourth state Z_NA only if there is an active and direct manipulation of the respective installation routines SUC1, SUC2 and / or a reset logic. The information technology system 10 would be in this case, for example, if at this time a restart (also referred to as reset), in a system blockade.
Beispielsweise können, nach dem Neustart des Systems 10 oder sobald das erfolgreiche Abspeichern des ersten Programmteils und des zweiten Programmteils oder ein Fehler bei der Abspeicherung des ersten Programmteils und/oder des zweiten Programmteils erkannt wird, abhängig von den Binärzuständen der jeweiligen ersten CMU, SMU und zweiten binären Flags CMI, SMI die vorgegebenen Verarbeitungsschritte in der vorgegebenen Reihenfolge von der ersten CM und der zweiten Verarbeitungseinheit SM ausgeführt werden. For example, after restarting the system 10 or as soon as the successful saving of the first program part and the second program part or an error in the storage of the first program part and / or the second program part is detected, depending on the binary states of the respective first CMU, SMU and second binary flags CMI, SMI the predetermined processing steps in the predetermined order of the first CM and the second processing unit SM are executed.
Insbesondere können, sobald das erfolgreiche Abspeichern des ersten Programmteils und des zweiten Programmteils erkannt wird, abhängig von den Binärzuständen _gelöscht, _gesetzt der jeweiligen ersten CMU, SMU und zweiten binären Flags CMI, SMI in einer vorgegebenen Reihenfolge die Binärzustände gelöscht, _gesetzt der jeweiligen ersten CMU, SMU und zweiten binären Flags CMI, SMI auf den ersten Binärzustand zurückgesetzt werden, der einen gültigen Programmteil beziehungsweise eine inaktive Installationsroutine SUC1, SUC2 repräsentiert. Hierdurch wird vermieden, dass zum Beispiel nach einem erfolgreichen Abspeichern des ersten Programmteils und des zweiten Programmteils die zweite Verarbeitungseinheit SM ausgehend von dem dritten Zustand ZUCb sich selbst den ersten Zustand ZA zuordnet. Die Änderung des dritten Zustande ZSUCb der zweiten Verarbeitungseinheit SM in den ersten Zustand ZA wird beispielsweise von der ersten Verarbeitungseinheit CM ausgelöst und somit zumindest teilweise gesteuert. In particular, as soon as the successful saving of the first program part and the second program part is detected, depending on the binary states _ deleted, _ set of the respective first CMU, SMU and second binary flags CMI, SMI deleted in a predetermined order, the binary states, _set the respective first CMU , SMU and second binary flags CMI, SMI are reset to the first binary state, which represents a valid program part or an inactive installation routine SUC1, SUC2. This avoids that, for example, after a successful storage of the first program part and the second program part, the second processing unit SM assigns itself the first state ZA starting from the third state ZUCb. The change of the third state ZSUCb of the second processing unit SM into the first state ZA is triggered, for example, by the first processing unit CM and thus at least partially controlled.
In Figur 3a ist ein Ablaufdiagramm eines Programms gezeigt, das beispielsweise von der zweiten Verarbeitungseinheit SM ausgeführt wird. In Figur 3b ist ein Ablaufdiagramm eines weiteren Programms gezeigt, das beispielsweise von der ersten Verarbeitungseinheit CM ausgeführt wird. Die beiden Programme dienen dazu, nach einer erfolgreichen Abspeicherung des ersten und zweiten Programmteils, die binären Flags CMU, CMI, SMU, SMI der vorgegebenen Reihenfolge zurückzusetzen, sodass sichergestellt ist, dass beispielsweise nach einem Neustart (auch bezeichnet als Reset), der auch beliebig während der Programmaktualisierung erfolgen kann, das informationstechnische System 10 trotzdem einen lauffähigen Betriebszustand aufweist . FIG. 3a shows a flow diagram of a program which is executed, for example, by the second processing unit SM. FIG. 3b shows a flowchart of a further program which is executed, for example, by the first processing unit CM. The two programs are used after a successful storage of the first and second program part, the binary flags CMU, CMI, SMU, SMI reset the predetermined order, so as to ensure that, for example, after a restart (also referred to as reset), which also arbitrary while the program update can take place, the information technology system 10 nevertheless has an executable operating state.
Die erste Verarbeitungseinheit CM ist hierzu beispielsweise ausgebildet, mehrere Anfragen an die zweite Verarbeitungseinheit SM zu senden. Die zweite Verarbeitungseinheit SM ist beispielsweise ausgebildet, Rückmeldungen zu den Anfragen der ersten Verarbeitungseinheit CM an die erste Verarbeitungseinheit CM zu senden. For this purpose, the first processing unit CM is designed, for example, to send a plurality of requests to the second processing unit SM. The second processing unit SM is designed, for example, to send feedback messages to the requests of the first processing unit CM to the first processing unit CM.
Beispielsweise kann die erste Verarbeitungseinheit CM ausgebildet sein, die folgenden Anfragen an die zweite Verarbeitungseinheit SM zu senden. For example, the first processing unit CM may be configured to send the following requests to the second processing unit SM.
SUCStart : Mit dieser Anfrage wird der Start der Installationsroutine SUC2 auf der zweiten Verarbeitungseinheit SM veranlasst, insoweit die zweite Verarbei- tungseinheit SM den Start der Installationsroutine SUC2 zulässt. SUCStart: This request causes the start of the installation routine SUC2 on the second processing unit SM, insofar as the second processing unit SUC2 processing unit SM allows the start of the installation routine SUC2.
SUCStop: Mit dieser Anfrage wird das Beenden der Installationsroutine SUC2 auf der zweiten Verarbeitungseinheit SM veranlasst, insoweit die zweite Verarbeitungseinheit SM das Beenden der Installationsroutine SUC2 zulässt und der zweite Programmteil erfolgreich abgespeichert ist. SUCStop: This request causes the termination of the installation routine SUC2 on the second processing unit SM, insofar as the second processing unit SM permits the termination of the installation routine SUC2 and the second program part is successfully stored.
SUCActive: Mit dieser Anfrage kann die erste Verarbeitungseinheit CM überprüfen, ob die Installationsroutine SUC2 der zweiten Verarbeitungseinheit SM aktiv ist . SUCActive: With this request, the first processing unit CM can check whether the installation routine SUC2 of the second processing unit SM is active.
SUCValid: Mit dieser Anfrage kann die erste Verarbeitungseinheit CM überprüfen, ob der zweite Programmteil der zweiten Verarbeitungseinheit SM erfolgreich abgespeichert wurde. SUCValid: With this request, the first processing unit CM can check whether the second program part of the second processing unit SM has been successfully stored.
Das Programm (Figur 3a) wird beispielsweise in einem Schritt S2_10 gestartet. Der Start des Programms erfolgt beispielsweise nach dem Erkennen einer erfolgreichen Abspeicherung des ersten und zweiten Programmteils durch die zweite Verarbei- tungseinheit SM. Beispielsweise kann die Programminstallationsroutine SUC2 der zweiten Verarbeitungseinheit SM ausgebildet sein, zu erkennen, dass der erste Programmteil und der zweite Programmteil erfolgreich abgespeichert wurden. Beispielsweise kann die erste SUC1 und/oder zweite Programmin- stallationsroutine SUC2 ausgebildet sein, wenn ein Fehler bei der Abspeicherung des ersten Programmteils beziehungsweise des zweiten Programmteils auftritt, eine Fehlermeldung zu signalisieren. Zusätzlich kann beispielsweise die Programminstallationsroutine SUC2 der zweiten Verarbeitungseinheit SM ausgebildet sein, am Ende der Speicherung des ersten und zweiten Programmteils eine Integrität des gesamten ersten Programmteils und zweiten Programmteils festzustellen. Bei- spielsweise kann das Programm nach dem Festellen der Integrität des gesamten ersten Programmteils und zweiten Programmteils gestartet werden. In einem Schritt S2_20 wird das zweite binäre Flag SMI auf den ersten Binärzustand _gelöscht gebracht. The program (FIG. 3a) is started, for example, in a step S2_10. The program is started, for example, after the recognition of a successful storage of the first and second program part by the second processing unit SM. For example, the program installation routine SUC2 of the second processing unit SM may be configured to recognize that the first program part and the second program part have been successfully stored. For example, the first SUC1 and / or second program installation routine SUC2 may be formed when an error occurs during the storage of the first program part or of the second program part to signal an error message. In addition, for example, the program installation routine SUC2 of the second processing unit SM may be configured to determine an integrity of the entire first program part and the second program part at the end of storage of the first and second program part. examples For example, after determining the integrity of the entire first part of the program and the second part of the program, the program can be started. In a step S2_20, the second binary flag SMI is brought to the first binary state _ deleted.
In einem Schritt S2_30 wird beispielsweise ein Signal von der zweiten Verarbeitungseinheit SM an die erste Verarbeitungs- einheit CM gesendet, zum Signalisieren, dass die jeweiligen Programminstallationsroutine SUC1, SUC2 beendet werden können . In a step S2_30, for example, a signal is sent from the second processing unit SM to the first processing unit CM to signal that the respective program installation routine SUC1, SUC2 can be terminated.
In einem Schritt S2_70 wird, nachdem die zweite Verarbei- tungseinheit SM den von der ersten Verarbeitungseinheit CM gesendete zweiten Befehl SUCStop empfangen hat, das erste binäre Flag SMU vom zweiten Binärzustand _gesetzt auf den ersten Binärzustand _gelöscht umgeschaltet. In einem Schritt S2_90 wird das Programm beendet. In a step S2_70, after the second processing unit SM has received the second command SUCStop sent by the first processing unit CM, the first binary flag SMU is switched over from the second binary state _set to the first binary state _delayed. In a step S2_90, the program is ended.
Das weitere Programm (Figur 3b) , das von der ersten Verarbeitungseinheit CM ausgeführt wird, wird beispielsweise in einem Schritt Sl_40 gestartet. Der Start des weiteren Programms er- folgt vorzugsweise nach dem Erkennen des Signals zum Signalisieren, dass die jeweiligen Programminstallationsroutinen SUC2, SUC1 beendet werden können, das von der zweiten Verarbeitungseinheit SM an die erste Verarbeitungseinheit CM gesendet wurde. The further program (FIG. 3b), which is executed by the first processing unit CM, is started, for example, in a step S1_40. The start of the further program is preferably carried out after the detection of the signal for signaling that the respective program installation routines SUC2, SUC1 sent by the second processing unit SM to the first processing unit CM can be terminated.
In einem Schritt Sl_50 erfolgt ein Umschalten des Binärzustandes des zweiten binären Flags CMI der ersten Verarbeitungseinheit CM, so dass den ersten Binärzustand _gelöscht aufweist . In einem Schritt Sl_60 sendet die erste Verarbeitungseinheit den CM zweiten Befehl SUCStop an die zweite Verarbeitungseinheit SM. In einem Schritt Sl_80 erfolgt ein Umschalten des Binärzustandes des ersten binären Flags CMU der ersten Verarbeitungseinheit CM, so dass es den ersten Binärzustand _gelöscht aufweist . In einem Schritt Sl_90 wird das weitere Programm beendet. In a step Sl_50, the binary state of the second binary flag CMI of the first processing unit CM is switched, so that the first binary state _ has been cleared. In a step S 1-60, the first processing unit sends the CM second command SUCStop to the second processing unit SM. In a step Sl_80, the binary state of the first binary flag CMU of the first processing unit CM is switched so that it has the first binary state _delayed. In a step Sl_90, the further program is ended.
In einem Fehlerfall während der Aktualisierung des Anwendungsprogramms, beispielsweise nach Kommunikationsstörungen oder bei einer nicht erfolgreichen Abschussprüfung werden, damit die kritische Zustandskombination nicht auftreten kann, beispielsweise folgende Maßnahmen getroffen: In the event of an error during the update of the application program, for example following communication disruptions or an unsuccessful launch test, the following measures are taken to prevent the critical state combination from occurring:
Falls der Fehler bei der zweiten Verarbeitungseinheit SM auftritt, meldet diese einen Fehler an die erste Verarbeitungs- einheit CM zurück. Der ersten Verarbeitungseinheit CM ist somit auch in diesem Fall bekannt, dass ein Fehler aufgetreten ist . If the error occurs at the second processing unit SM, it returns an error to the first processing unit CM. The first processing unit CM is therefore also known in this case that an error has occurred.
In einem ersten Schritt sendet die erste Verarbeitungseinheit CM die Anfrage SUCValid an die zweite Verarbeitungseinheit SM und erhält so zusammen mit seinem eigenen zweiten binären Flag CMI die Information, ob ein Rücksprung in die Ausführung des ersten und zweiten Programmteils, also die Ausführung des Anwendungsprogramms erlaubt ist oder nicht. Falls solch ein Rücksprung nicht erlaubt ist, werden in einem zweiten In a first step, the first processing unit CM sends the request SUCValid to the second processing unit SM and thus, together with its own second binary flag CMI, receives the information as to whether a return to the execution of the first and second program part, ie the execution of the application program, is permitted or not. If such a return is not allowed, in a second
Schritt, die jeweiligen Installationsroutinen SUC1, SUC2 neu gestartet. In diesem Fall wird als nächster Schritt der vierte Schritt ausgeführt. Falls der Rücksprung erlaubt ist, kann in dem zweiten Schritt beispielsweise ein Anwender entschei- den, ob das Anwendungsprogramm oder die jeweiligen Installationsroutinen SUC1, SUC2 neu gestartet werden sollen. Falls das Anwendungsprogramm neu gestartet werden soll, sendet in einem dritten Schritt die erste Verarbeitungseinheit CM an die zweite Verarbeitungseinheit SM die Anfrage SUCStop und löscht nach positiver Rückmeldung sein eigenes erstes binäres Flag CMU . In einem vierten Schritt wird auf der ersten Verar- beitungseinheit CM und der zweiten Verarbeitungseinheit SM jeweils ein Neustart (auch bezeichnet als Reset) ausgeführt und das Anwendungsprogramm wird gestartet beziehungsweise die jeweiligen Installationsroutinen SUC1, SUC2 werden neu gestartet . Step, the respective installation routines SUC1, SUC2 restarted. In this case, the next step is the fourth step. If the return is permitted, in the second step, for example, a user can decide whether the application program or the respective installation routines SUC1, SUC2 should be restarted. If the application program is to be restarted, send in a third step, the first processing unit CM to the second processing unit SM, the request SUCStop and clears after positive feedback its own first binary flag CMU. In a fourth step, in each case a restart (also referred to as a reset) is carried out on the first processing unit CM and the second processing unit SM and the application program is started or the respective installation routines SUC1, SUC2 are restarted.
Vorteilhafterweise ist so sichergestellt, dass weder nach einer erfolgreichen Abspeicherung des ersten Programmteils und des zweiten Programmteils noch in einem Fehlerfall noch bei einem unerwarteten Neustart (auch bezeichnet als Reset) das informationstechnische System 10 die kritische Zustandskombi- nation aufweist. Im Falle eines unerwarteten Neustarts entscheidet das jeweilige erste binäre Flag CMU, SMU ob der jeweilige Programmteil oder die jeweilige Installationsroutine SUC1, SUC2 gestartet wird. Advantageously, it is thus ensured that neither after successful storage of the first program part and the second program part, nor in the event of an error, nor in the event of an unexpected restart (also referred to as a reset), does the information technology system 10 have the critical state combination. In the event of an unexpected restart, the respective first binary flag CMU, SMU decides whether the respective program part or the respective installation routine SUC1, SUC2 is started.
In einer weiteren Ausführungsvariante des informationstechnischen Systems 10 kann auf eine explizite Anfrage SUCValid zur Abfrage des Ist-Zustandes der zweiten Verarbeitungseinheit SM verzichtet werden, wenn die Anfrage SUCStop einen Fehlerwert zurückmeldet, falls das erste binäre Flag SMU der zweitenIn a further embodiment variant of the information technology system 10, it is possible to dispense with an explicit request SUCValid for querying the actual state of the second processing unit SM if the request SUCStop returns an error value if the first binary flag SMU of the second
Verarbeitungseinheit SM nicht gelöscht werden kann, weil das erste binäre Flag SMI der zweiten Verarbeitungseinheit SM noch den zweiten Binärzustand _gesetzt aufweist. Das Verhalten dieser Implementierung unterscheidet sich in einem Feh- lerfall geringfügig von der oben beschriebenen Ausführungsvariante, weil die erste Verarbeitungseinheit CM noch keine Information über die Gültigkeit des zweiten Programmteils hat und bespielweise einem Anwender nicht die Wahl bieten kann, entweder zu einer Ausführung des ersten und zweiten Programm- teils zurückzuwechseln oder die Aktualisierung fortzusetzen. Dies bedeutet, dass in einem Fehlerfall keine Unterscheidung zwischen dem zweiten Zustand ZSUCa und dem dritten Zustand ZSUCb mehr möglich ist. Processing unit SM can not be deleted because the first binary flag SMI of the second processing unit SM still has the second binary state _set. The behavior of this implementation differs slightly in an error case from the embodiment described above, because the first processing unit CM still has no information about the validity of the second part of the program and can not offer the user a choice, either to an execution of the first and second part of the program or continue the update. This means that in case of error no distinction between the second state ZSUCa and the third state ZSUCb is more possible.

Claims

Verfahren zum Betreiben eines informationstechnischen Systems (10) mit zumindest einer ersten Verarbeitungseinheit (CM) und einer zweiten Verarbeitungseinheit (SM), die miteinander in Verbindung stehen und die ausgebildet sind zu einer gemeinsamen Ausführung eines Anwendungsprogramms, wobei der ersten Verarbeitungseinheit (CM) ein erster Speicher zugeordnet ist, in dem ein von der ersten Verarbeitungseinheit (CM) ausführbarer erster Programmteil des Anwendungsprogramms gespeichert ist, und der zweiten Verarbeitungseinheit (SM) ein zweiter Speicher zugeordnet ist, in dem ein von der zweiten Verarbeitungseinheit (SM) ausführbarer zweiter Programmteil des Anwendungsprogramms gespeichert ist, und der ersten Verarbeitungseinheit (CM) und der zweiten Verarbeitungseinheit (SM) jeweils eine Installationsroutine (SUC1, SUC2) zugeordnet ist, die ausgebildet ist, eine Aktualisierung des ersten Programmteils beziehungsweise des zweiten Programmteils zu steuern, bei dem das Verfahren folgende Schritte aufweist: Method for operating an information technology system (10) having at least a first processing unit (CM) and a second processing unit (SM), which are connected to one another and which are designed for a common execution of an application program, wherein the first processing unit (CM) is a first Memory is assigned, in which one of the first processing unit (CM) executable first program part of the application program is stored, and the second processing unit (SM) is associated with a second memory in which an executable by the second processing unit (SM) second program part of the application program is associated, and the first processing unit (CM) and the second processing unit (SM) is associated with an installation routine (SUC1, SUC2), which is adapted to control an update of the first program part or the second program part, wherein the method following Sc has:
- abhängig von einem Zustand der jeweiligen Installationsroutine (SUC1, SUC2) und abhängig von einem jeweiligen Aktualisierungsfortschritt des ersten Programmteils beziehungsweise des zweiten Programmteils während einer Aktualisierung des Anwendungsprogramms wird der ersten Verarbeitungseinheit (CM) ein Ist-Zustand aus einer vorgegebenen Menge von möglichen Zuständen zugeordnet und der zweiten Verarbeitungseinheit (SM) ein zweiter Ist-Zustand aus der vorgegebenen Menge möglicher Zustände, und  - Depending on a state of the respective installation routine (SUC1, SUC2) and depending on a respective update progress of the first program part or the second program part during an update of the application program, the first processing unit (CM) is assigned an actual state from a predetermined set of possible states and the second processing unit (SM) a second actual state from the predetermined set of possible states, and
- nach einem Neustart des Systems (10) oder sobald eine erfolgreiche Abspeicherung des ersten Programmteils und des zweiten Programmteils oder ein Fehler bei der Abspeicherung des ersten Programmteils und/oder des zweiten Programmteils erkannt wird, werden abhängig von dem Ist-Zustand der ersten Verarbeitungseinheit (CM) und dem Ist-Zustand der zweiten Verarbeitungseinheit (SM) jeweils vorgegebene Verarbeitungsschritte in einer vorgegebenen Reihenfolge von der ersten (CM) und der zweiten Verarbeitungseinheit (SM) ausgeführt. - After a restart of the system (10) or as soon as a successful storage of the first program part and the second program part or an error in the storage of the first program part and / or the second program part is detected, depending on the actual state of the first processing unit (CM) and the actual state of the second processing unit (SM) are each executed predetermined processing steps in a predetermined order of the first (CM) and the second processing unit (SM).
Verfahren nach Anspruch 1, bei dem die Menge an möglichen Zuständen einen ersten Zustand (ZA) umfasst, der einen ersten beziehungsweise einen zweiten gültigen Programmteil und eine jeweilige inaktive Programmroutine (SUC1, SUC2) repräsentiert, einen zweiten Zustand The method of claim 1, wherein the set of possible states comprises a first state (ZA) representing a first and a second valid program part and a respective inactive program routine (SUC1, SUC2), a second state
(ZSUCa) umfasst, der einen ersten beziehungsweise einen zweiten gültigen Programmteil und eine jeweilige aktive Programmroutine (SUC1, SUC2) repräsentiert, und einen dritten Zustand (ZSUCb) umfasst, der einen ersten beziehungsweise einen zweiten ungültigen Programmteil und eine aktive Programmroutine (SUC1, SUC2) der ersten Verarbeitungseinheit (CM) beziehungsweise der zweiten Verarbeitungseinheit (SM) repräsentiert. (ZSUCa), which represents a first and a second valid program part and a respective active program routine (SUC1, SUC2), and a third state (ZSUCb), a first and a second invalid program part and an active program routine (SUC1, SUC2 ) of the first processing unit (CM) or the second processing unit (SM).
Verfahren nach Anspruch 1 oder 2, nach einem Neustart des Systems (10) oder sobald eine erfolgreiche Abspeicherung des ersten Programmteils und des zweiten Programmteils oder ein Fehler bei der Abspeicherung des ersten Programmteils und/oder des zweiten Programmteils erkannt wird, abhängig von dem Ist-Zustand der ersten Verarbeitungseinheit (CM) und dem Ist-Zustand der zweiten Verarbeitungseinheit (SM) unter vorgegebenen Bedingungen jeweils ein neuer Ist-Zustand zugeordnet werden gemäß folgender Vorschrift: Method according to claim 1 or 2, after a restart of the system (10) or as soon as a successful storage of the first program part and the second program part or an error in the storage of the first program part and / or the second part of the program is detected, depending on the actual State of the first processing unit (CM) and the actual state of the second processing unit (SM) under predetermined conditions each assigned a new actual state according to the following rule:
- falls sich die erste Verarbeitungseinheit (CM) im ersten Zustand (ZA) und die zweite Verarbeitungseinheit (SM) im zweiten Zustand (ZSUCa) befindet, kann die zweite Verarbeitungseinheit (SM) zum ersten Zustand (ZA) zurückkehren, oder die erste Verarbeitungseinheit (CM) muss auf den zweiten Zustand (ZSUCa) umschalten, if the first processing unit (CM) is in the first state (ZA) and the second processing unit (SM) is in the second state (ZSUCa), the second processing unit (SM) can return to the first state (ZA) or the first processing unit (Z) CM) must switch to the second state (ZSUCa),
- falls sich die erste Verarbeitungseinheit (CM) im ers- ten Zustand (ZA) und die zweite Verarbeitungseinheit (SM) im dritten Zustand (ZSUCb) befindet, muss die erste Verarbeitungseinheit (CM) in den zweiten Zustand (ZSUCa) übergehen, - if the first processing unit (CM) in the first When the first state (ZA) and the second processing unit (SM) are in the third state (ZSUCb), the first processing unit (CM) has to change to the second state (ZSUCa).
- falls sich die erste Verarbeitungseinheit (CM) im zweiten Zustand (ZSUCa) und die zweite Verarbeitungseinheit (SM) im ersten Zustand (ZA) befindet, kann die zweite Verarbeitungseinheit (SM) auf den zweiten Zustand (ZSUCa) wechseln, oder die erste Verarbeitungseinheit (CM) muss zum ersten Zustand (ZA) zurückkehren und  if the first processing unit (CM) is in the second state (ZSUCa) and the second processing unit (SM) is in the first state (ZA), the second processing unit (SM) can change to the second state (ZSUCa), or the first processing unit (CM) must return to the first state (ZA) and
- in allen anderen Fällen bleiben die jeweiligen Ist- Zustände gleich.  - In all other cases, the respective actual states remain the same.
Verfahren nach Anspruch 2 oder 3, bei dem, sobald das erfolgreiche Abspeichern des ersten Programmteils und des zweiten Programmteils erkannt wird, zunächst die erste Verarbeitungseinheit (CM) in den zweiten Zustand (ZSUCa) zurückkehrt, insoweit sie ihn nicht bereits aufweist, und anschließend die zweite Verarbeitungseinheit (SM) in den ersten Zustand (ZA) wechselt. Method according to Claim 2 or 3, in which, as soon as the successful storage of the first program part and of the second program part is detected, the first processing unit (CM) initially returns to the second state (ZSUCa) insofar as it does not already have it, and then the second processing unit (SM) changes to the first state (ZA).
Verfahren nach einem der vorstehenden Ansprüche, bei dem für eine Charakterisierung des Ist-Zustands der ersten Verarbeitungseinheit (CM) und des Ist-Zustands der zweiten Verarbeitungseinheit (SM) jeweils zwei binäre Flags (CMU, CMI, SMU, SMI) genutzt werden, wobei ein jeweils erstes binäres Flag (CMU, SMU) je nach seinem Binärzustand (_gelöscht, _gesetzt) eine inaktive beziehungsweise aktive Installationsroutine (SUC1, SUC2) der ersten Verarbeitungseinheit (CM) beziehungsweise der zweiten Verarbeitungseinheit (SM) repräsentiert und ein jeweils zweites binäres Flag (CMI, SMI) je nach seinem Binärzustand (_gelöscht, _gesetzt) einen gültigen beziehungsweise einen ungültigen ersten Programmteil beziehungsweise zweiten Programmteil repräsentiert . Verfahren nach Anspruch 5, bei dem, nach dem Neustart des Systems (10) oder sobald das erfolgreiche Abspeichern des ersten Programmteils und des zweiten Programmteils oder ein Fehler bei der Abspeicherung des ersten Programmteils und/oder des zweiten Programmteils erkannt wird, abhängig von den Binärzuständen der jeweiligen ersten (CMU, SMU) und zweiten binären Flags (CMI, SMI) die vorgegebenen Verarbeitungsschritte in einer vorgegebenen Reihenfolge von der ersten (CM) und der zweiten Verarbeitungseinheit (SM) ausgeführt werden. Method according to one of the preceding claims, in which two binary flags (CMU, CMI, SMU, SMI) are respectively used for characterizing the actual state of the first processing unit (CM) and the actual state of the second processing unit (SM), wherein a respective first binary flag (CMU, SMU), depending on its binary state (erased, set), represents an inactive or active installation routine (SUC1, SUC2) of the first processing unit (CM) or the second processing unit (SM) and a respective second binary flag ( CMI, SMI) represents a valid or an invalid first program part or second program part depending on its binary state (_ deleted, _set). Method according to Claim 5, in which, after the system (10) has been restarted or as soon as the successful saving of the first program part and of the second program part or an error in the storage of the first program part and / or of the second program part is detected, depending on the binary states the respective first (CMU, SMU) and second binary flags (CMI, SMI) are executed the predetermined processing steps in a predetermined order by the first (CM) and the second processing unit (SM).
Verfahren nach Anspruch 5 oder 6, bei dem, sobald das erfolgreiche Abspeichern des ersten Programmteils und des zweiten Programmteils erkannt wird, abhängig von den Binärzuständen der jeweiligen ersten (CMU, SMU) und zweiten binären Flags (CMI, SMI) in einer vorgegebenen Reihenfolge die Binärzustände der jeweiligen ersten (CMU, SMU) und zweiten binären Flags (CMI, SMI) auf den Binärzustand zurückgesetzt werden, der einen gültigen Programmteil beziehungsweise eine inaktive Installationsroutine (SUC1, SUC2) repräsentiert. Method according to Claim 5 or 6, in which, as soon as the successful saving of the first program part and of the second program part is detected, in a predetermined order, depending on the binary states of the respective first (CMU, SMU) and second binary flags (CMI, SMI) Binary states of the respective first (CMU, SMU) and second binary flags (CMI, SMI) are reset to the binary state, which represents a valid program part or an inactive installation routine (SUC1, SUC2).
Verfahren nach einem der vorstehenden Ansprüche, bei dem die erste Verarbeitungseinheit (CM) ausgebildet ist, einen Start der Aktualisierung des Anwendungsprogramms zu initiieren und/oder ein Ende der Aktualisierung des Anwendungsprogramms zu initiieren. Method according to one of the preceding claims, wherein the first processing unit (CM) is designed to initiate a start of the update of the application program and / or to initiate an end of the update of the application program.
Verfahren nach einem der vorstehenden Ansprüche, bei dem die zweite Verarbeitungseinheit (SM) ausgebildet ist, zu entscheiden, ob die Aktualisierung des Anwendungsprogramms gestartet und/oder beendet wird. Method according to one of the preceding claims, in which the second processing unit (SM) is designed to decide whether the update of the application program is started and / or terminated.
Verfahren nach einem der vorstehenden Ansprüche, bei dem die zweite Verarbeitungseinheit (SM) ausgebildet ist, eine Integrität des ersten Programmteils und/oder des zweiten Programmteils zu verifizieren. Informationstechnisches System (10), das zumindest eine erste Verarbeitungseinheit (CM) und eine zweite Verarbeitungseinheit (SM) umfasst, die miteinander in Verbindung stehen und die ausgebildet sind zu einer gemeinsamen Ausführung eines Anwendungsprogramms, wobei der ersten Verarbeitungseinheit (CM) ein erster Speicher zugeordnet ist, in dem ein von der ersten Verarbeitungseinheit (CM) ausführbarer erster Programmteil des Anwendungsprogramms gespeichert ist und der zweiten Verarbeitungseinheit (SM) ein zweiter Speicher zugeordnet ist, in dem ein von der zweiten Verarbeitungseinheit (SM) ausführbarer zweiter Programmteil des Anwendungsprogramms gespeichert ist und der ersten Verarbeitungseinheit (CM) und der zweiten Verarbeitungseinheit (SM) jeweils eine Installationsroutine (SUC1, SUC2) zugeordnet ist, die ausgebildet ist, eine Aktualisierung des ersten Programmteils beziehungsweise des zweiten Programmteils zu steuern, bei dem Method according to one of the preceding claims, wherein the second processing unit (SM) is designed to verify an integrity of the first program part and / or the second part of the program. Information technology system (10) comprising at least a first processing unit (CM) and a second processing unit (SM), which are in communication with each other and which are adapted to a common execution of an application program, wherein the first processing unit (CM) associated with a first memory in which a first program part of the application program which can be executed by the first processing unit (CM) is stored and the second processing unit (SM) is assigned a second memory in which a second program part of the application program which can be executed by the second processing unit (SM) is stored, and the first processing unit (CM) and the second processing unit (SM) are each assigned an installation routine (SUC1, SUC2) which is designed to control an update of the first program part or the second program part, in which
- die erste Verarbeitungseinheit (CM) ausgebildet ist, abhängig von einem Zustand der ihr zugeordneten Installationsroutine (SUC1, SUC2) und abhängig von einem Aktualisierungsfortschritt des ersten Programmteils während einer Aktualisierung des Anwendungsprogramms sich einen Ist-Zustand aus einer vorgegebenen Menge von möglichen Zuständen zuzuordnen,  - the first processing unit (CM) is adapted, depending on a state of its associated installation routine (SUC1, SUC2) and depending on an update progress of the first program part during an update of the application program to assign an actual state from a predetermined set of possible states
- die zweite Verarbeitungseinheit (SM) ausgebildet ist, abhängig von einem Zustand der ihr zugeordneten Installationsroutine (SUC1, SUC2) und abhängig von einem Aktualisierungsfortschritt des zweiten Programmteils während der Aktualisierung des Anwendungsprogramms sich einen Ist-Zustand aus der vorgegebenen Menge von möglichen Zuständen zuzuordnen, und  - The second processing unit (SM) is formed, depending on a state of its associated installation routine (SUC1, SUC2) and depending on an update progress of the second program part during the update of the application program to assign an actual state of the predetermined set of possible states and
- die erste Verarbeitungseinheit (CM) und die zweite Verarbeitungseinheit (SM) ausgebildet sind, nach einem Neustart des Systems (10) oder sobald eine erfolgreiche Abspeicherung des ersten Programmteils und des zweiten Programmteils oder ein Fehler bei der Abspeicherung des ersten Programmteils und/oder des zweiten Programmteils erkannt wird, abhängig von dem Ist- Zustand der ersten Verarbeitungseinheit (CM) und dem Ist-Zustand der zweiten Verarbeitungseinheit (SM) jeweils vorgegebene Verarbeitungsschritte in einer vorgegebenen Reihenfolge auszuführen. - The first processing unit (CM) and the second processing unit (SM) are formed after a restart of the system (10) or as soon as a successful storage of the first program part and the second program part or an error in the storage of the first program part and / or the second program part is detected, depending on the actual state of the first processing unit (CM) and the actual state of the second processing unit (SM) each predetermined processing steps in a predetermined order perform.
Informationstechnisches System (10) nach Anspruch 11, bei dem das informationstechnische System (10) als digi taler Tachograf ausgebildet ist und die erste Verarbeitungseinheit (CM) einen Applikationscontroller und die zweite Verarbeitungseinheit (SM) einen Sicherheitscontroller umfasst. Information technology system (10) according to claim 11, wherein the information technology system (10) is designed as a digital tachograph and the first processing unit (CM) comprises an application controller and the second processing unit (SM) comprises a security controller.
EP12783147.7A 2011-10-14 2012-10-15 Method for operating an it system, and it system Ceased EP2766813A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE102011084569.0A DE102011084569B4 (en) 2011-10-14 2011-10-14 Method for operating an information technology system and information technology system
PCT/EP2012/070362 WO2013053934A1 (en) 2011-10-14 2012-10-15 Method for operating an it system, and it system

Publications (1)

Publication Number Publication Date
EP2766813A1 true EP2766813A1 (en) 2014-08-20

Family

ID=47143849

Family Applications (1)

Application Number Title Priority Date Filing Date
EP12783147.7A Ceased EP2766813A1 (en) 2011-10-14 2012-10-15 Method for operating an it system, and it system

Country Status (4)

Country Link
US (1) US9367297B2 (en)
EP (1) EP2766813A1 (en)
DE (1) DE102011084569B4 (en)
WO (1) WO2013053934A1 (en)

Family Cites Families (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5487156A (en) * 1989-12-15 1996-01-23 Popescu; Valeri Processor architecture having independently fetching issuing and updating operations of instructions which are sequentially assigned and stored in order fetched
US8213431B2 (en) * 2008-01-18 2012-07-03 The Boeing Company System and method for enabling wireless real time applications over a wide area network in high signal intermittence environments
EP0706275B1 (en) * 1994-09-15 2006-01-25 International Business Machines Corporation System and method for secure storage and distribution of data using digital signatures
JP3730740B2 (en) * 1997-02-24 2006-01-05 株式会社日立製作所 Parallel job multiple scheduling method
DE19716197A1 (en) * 1997-04-18 1998-10-22 Itt Mfg Enterprises Inc Microprocessor system for safety-critical regulations
DE19720618A1 (en) * 1997-05-16 1998-11-19 Itt Mfg Enterprises Inc Microprocessor system for automotive control systems
US6647301B1 (en) * 1999-04-22 2003-11-11 Dow Global Technologies Inc. Process control system with integrated safety control system
DE10008974B4 (en) * 2000-02-25 2005-12-29 Bayerische Motoren Werke Ag signature methods
US6792529B1 (en) * 2000-04-11 2004-09-14 Microsoft Corporation Common feature mode for microprocessors in a multiple microprocessor system
US7249247B2 (en) * 2000-04-11 2007-07-24 Microsoft Corporation Common feature mode for microprocessors in a multiple microprocessor system
JP2004514214A (en) 2000-11-17 2004-05-13 ビットフォン コーポレイション System and method for updating and distributing information
JP2002157137A (en) * 2000-11-20 2002-05-31 Nec Corp Program updating system with communication function
JP4276028B2 (en) * 2003-08-25 2009-06-10 株式会社日立製作所 Multiprocessor system synchronization method
US7614055B2 (en) * 2004-06-14 2009-11-03 Alcatel-Lucent Usa Inc. Selecting a processor to run an executable of a distributed software application upon startup of the distributed software application
US9489496B2 (en) * 2004-11-12 2016-11-08 Apple Inc. Secure software updates
JP4448784B2 (en) * 2005-03-15 2010-04-14 株式会社日立製作所 Parallel computer synchronization method and program
JP4471947B2 (en) * 2005-04-28 2010-06-02 Necエレクトロニクス株式会社 Data processing apparatus and data processing method
US9166904B2 (en) * 2005-09-08 2015-10-20 Cisco Technology, Inc. Method and apparatus for transferring BGP state information during asynchronous startup
DE102006023136A1 (en) * 2006-05-17 2007-11-22 Siemens Ag Method and device for operating a digital tachograph and a data carrier
US7925791B2 (en) * 2006-07-17 2011-04-12 The Math Works, Inc. Recoverable error detection for concurrent computing programs
JP5273045B2 (en) * 2007-06-20 2013-08-28 富士通株式会社 Barrier synchronization method, apparatus, and processor
DE102007043262A1 (en) * 2007-09-11 2009-03-12 Continental Automotive Gmbh Data processing device for an embedded system
DE102007058163A1 (en) * 2007-09-28 2009-04-23 Continental Automotive Gmbh Tachograph, toll-on-board unit, indicating instrument and system
US8561052B2 (en) * 2008-12-08 2013-10-15 Harris Corporation Communications device with a plurality of processors and compatibility synchronization module for processor upgrades and related method
US8224885B1 (en) * 2009-01-26 2012-07-17 Teradici Corporation Method and system for remote computing session management
US10534644B2 (en) * 2009-06-25 2020-01-14 Wind River Systems, Inc. Method and system for a CPU-local storage mechanism
JP5428738B2 (en) * 2009-10-16 2014-02-26 富士通株式会社 Information processing apparatus and firmware update method
JP5431111B2 (en) * 2009-10-22 2014-03-05 株式会社日立製作所 Information processing apparatus and system setting method
DE102009051350A1 (en) * 2009-10-30 2011-05-05 Continental Automotive Gmbh Method of operating a tachograph and tachograph
DE102009056786A1 (en) * 2009-12-03 2011-06-09 Continental Automotive Gmbh Mobile interface and system for controlling vehicle functions
JP5494208B2 (en) * 2010-05-12 2014-05-14 富士ゼロックス株式会社 Image forming apparatus and control program therefor
US20140157253A1 (en) * 2011-03-31 2014-06-05 Alcatel-Lucent India Limited Retrofitting a processor cluster
DE102011081421A1 (en) * 2011-08-23 2013-02-28 Siemens Ag System for the secure transmission of data and procedures
US8810454B2 (en) * 2011-10-13 2014-08-19 Microsoft Corporation Power-aware tiered geofencing and beacon watchlists
WO2013134959A1 (en) * 2012-03-16 2013-09-19 Qoros Automotive Co., Ltd. Partial map updates

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See references of WO2013053934A1 *

Also Published As

Publication number Publication date
DE102011084569B4 (en) 2019-02-21
WO2013053934A1 (en) 2013-04-18
US20140298104A1 (en) 2014-10-02
DE102011084569A1 (en) 2013-04-18
US9367297B2 (en) 2016-06-14

Similar Documents

Publication Publication Date Title
DE112014005412B4 (en) Program update system and program update method
DE102019109672A1 (en) CANCELLATION AFTER PARTIAL FAILURE IN MULTIPLE ELECTRONIC CONTROL UNITS BY OVER THE AIR UPDATE
EP1639603A2 (en) Method for updating software of an electronic control device by flash programming via a serial interface and corresponding automatic state machine
DE112018006323T5 (en) On-board update device, program and method for updating a program or data
DE112012005257T5 (en) Control device and process monitoring method
EP2943748B1 (en) Method and device for managing map data of a digital map for a navigation apparatus
WO2021233696A1 (en) Method for the secure use of cryptographic material
EP3080950B1 (en) Method and system for deterministic auto-configuration of a device
DE112013006868T5 (en) Programmable logic control system and programmable logic controller
DE10340411B4 (en) Device and method for the safe execution of a program
EP1792247B1 (en) Method for operating a data transmission network using licence data and associated device network
DE102013021231A1 (en) Method for operating an assistance system of a vehicle and vehicle control unit
EP2766813A1 (en) Method for operating an it system, and it system
DE102021208459A1 (en) Method for authentic data transmission between control units in a vehicle, arrangement with control units, computer program and vehicle
DE102021202935A1 (en) Method and device for controlling a driving function
EP4018300A1 (en) Configuration method for a railway signalling system and update system
DE102006024233B4 (en) Method and apparatus for fault tolerance management of a software component
EP1953667A1 (en) Interface monitoring device and method for monitoring an interface connection
DE102018209972A1 (en) Method for updating software on a target device using an update device and method for processing a data packet and / or a differentiation information using a target device
DE102013202482A1 (en) Error signal handling apparatus for use in electronic controller of heavy vehicle, has processing device outputting condition signal if error signal is received within given delay time, and otherwise omitting outputting of condition signal
DE102012221280A1 (en) Data processing unit, control method and control program
EP3876123B1 (en) Arrangement and operating method for a secure start-up of an electronic device
WO2023180069A1 (en) Dynamic integrity monitoring of a container runtime environment executed on a host computer
EP4073650B1 (en) Method for identifying and verifying control software of a rail vehicle
DE602005002485T2 (en) Device for avoiding circuit errors in the presence of errors

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

17P Request for examination filed

Effective date: 20140514

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR

DAX Request for extension of the european patent (deleted)
17Q First examination report despatched

Effective date: 20150225

REG Reference to a national code

Ref country code: DE

Ref legal event code: R003

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE APPLICATION HAS BEEN REFUSED

18R Application refused

Effective date: 20151017