EP0536010B1 - Verfahren und Vorrichtung zur Echtzeitverwaltung von einem System mit mindestens einem zur Verwaltung mehrerer Funktionen geeignetem Prozessor - Google Patents

Verfahren und Vorrichtung zur Echtzeitverwaltung von einem System mit mindestens einem zur Verwaltung mehrerer Funktionen geeignetem Prozessor Download PDF

Info

Publication number
EP0536010B1
EP0536010B1 EP92402282A EP92402282A EP0536010B1 EP 0536010 B1 EP0536010 B1 EP 0536010B1 EP 92402282 A EP92402282 A EP 92402282A EP 92402282 A EP92402282 A EP 92402282A EP 0536010 B1 EP0536010 B1 EP 0536010B1
Authority
EP
European Patent Office
Prior art keywords
processor
time
function
coprocessor
management
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
EP92402282A
Other languages
English (en)
French (fr)
Other versions
EP0536010A1 (de
Inventor
Michel Ducateau
Jean-Marie Sers
Isabelle Pain
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.)
Thales Avionics SAS
Original Assignee
Thales Avionics SAS
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 Thales Avionics SAS filed Critical Thales Avionics SAS
Publication of EP0536010A1 publication Critical patent/EP0536010A1/de
Application granted granted Critical
Publication of EP0536010B1 publication Critical patent/EP0536010B1/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • G06F9/4887Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues involving deadlines, e.g. rate based, periodic

Definitions

  • the present invention relates to a method and a device for real-time management of a system comprising at at least one processor capable of managing several functions comprising each a set of services performed by the processor during the execution of software that can implement sensors and / or actuators, this set of services based inside the processor on material resources.
  • the heterogeneity of the electronic equipment fleet can also lead to device blocking times too important during failure in the absence of spare.
  • a function will be assimilated to a task group providing high level for the wearer, this group of tasks cannot be distributed over more than one processor module. Many functions can be implemented on the same processor.
  • the certification stage a very expensive stage which allows to qualify the equipment so that it can be marketed, checks, among other things, compliance with these rules.
  • the object of the invention is therefore more particularly to solve these problems.
  • the processing cycle of each processor is temporally divided into slices.
  • the duration of each tranche may be different.
  • Each function may or may not be assigned a function.
  • TX slot is assigned the function FX.
  • the kernel virtual machine is accessible, on the one hand, to higher level machines and, on the other hand, to through these to tasks submitted by users.
  • the first level or "Executive Application” is the one on which will support a function to ensure the scheduling of its tasks in relation to the context real time, therefore to resources and events which need the function to run inside the time slot affected cyclically.
  • the second level or “Executive Sequencer” is the one that will provide the services necessary for time sharing of the processor between the different implemented functions on the processor and handling of global events (in the broad sense) to the processor or to the "rack” as initialization of the rack or module, initialization of a function, the power cut, the changes like downloading code linked to a or functions of the "rack", the reconfiguration of the "rack”, power up, etc ...
  • the invention proposes, from a software configuration made at initializing the rack or processor and a time reference common to the "rack" and cyclically reset by synchronization, a set of automata brought together as a single coprocessor associated with each processor capable of offering services for the management by time slot of functions (allocated to the "Executive Sequencer") but also, by function, services that are more conventionally assigned on a executive core to "Application Executive".
  • the two levels of the executive then rely on the services provided by the coprocessor when a primitive is requested.
  • coprocessor alerts the right executive level when an action at the task level is necessary. So some processing, besides the primitive algorithm is transparent to the processor.
  • the coprocessor has all of the information related to the overall real time of the processor like function states, event states overall, the durations of the time slots but also states of all the real-time objects handled by all the tasks of all the implemented functions on the processor.
  • function states event states overall
  • durations of the time slots but also states of all the real-time objects handled by all the tasks of all the implemented functions on the processor.
  • partitioning physical in the component that ensures segregation between real-time objects specific to each function.
  • the coprocessor is in the form of a component connected, on the one hand, to the local memory BUS of the processor associated and, on the other hand, to the so-called exchange memory BUS, (these memory BUS can be 32 bit BUS).
  • the coprocessor component can operate according to two modes.
  • the first mode is used when only the coprocessor maintains system time management or "rack".
  • the coprocessor In this case, depending on its configuration loaded at software initialization, the coprocessor generates a interrupt to the processor at the end of each time frame to let them know they need to abandon the current function to take the indicated one by the coprocessor. This allows the processor ensure consistent loading of unit tables memory management.
  • This interrupt is generated from a counter contained in the coprocessor and which is reset at the end of each time slot by the duration of the slot next from an internal table (configured to processor initialization).
  • the coprocessor reloads the slice counter by the value contained in the internal table corresponding to the function activated.
  • the states of the real-time objects handled by the deactivated function are no longer accessible by the processor except in special cases.
  • each coprocessor in the "rack” is equipped with a device synchronization to maintain a common system time to all coprocessors to ensure synchronizations change of unit on different modules.
  • each coprocessor From the initialization of the "rack", each coprocessor observes and transmits on a common clock line via a "OR wired".
  • the transmission is made via an interface.
  • each coprocessor waits for the latest generation coprocessor clock.
  • the second mode is where the time reference is managed by the backplane BUS interface component.
  • the section change is controlled by this component which alerts the processor by an interruption.
  • the processor then executes a primitive which commands the coprocessor to change application.
  • the coprocessor control while the tranche change is well inside a time window. Every change slice is thus checked against references loaded into the coprocessor by software at initialization.
  • the device only manages all or part (case of additional services executed by software) real-time objects of the function associated with the slice.
  • a task is a program belonging to a function, program to run on a processor to allow the work for this function.
  • a task can meet temporal, material or software.
  • a basic condition is to have the processor available, given the priorities to inside the function for the course of the task.
  • a task can take different states during a cycle application. These states are defined by a graph of state transition and transitions are conditioned by executing the primitives encountered, events external and internal temporal events at coprocessor.
  • a resource can be seen as a software component or hardware of a computer system that can be allocated to a single task, simple resource case managed via binary semaphores, or with multiple tasks, case of the metered resource managed via the semaphores counter; a resource is then preemptible under the control of the "Application Executive" as soon as it is released by the possessor task for the simple resource, or released by one of the possessor tasks for the resource with counter.
  • the event is a mechanism that ensures synchronization either between one or more tasks and the environment outside, or between several tasks.
  • the tasks waiting for this event can continue running under certain conditions (processor available, no other wait, ).
  • External physical signals can be events global or local events.
  • the coprocessor handles counter semaphores.
  • Counter semaphore is used for shared management a common resource for a limited number of owners.
  • the coprocessor manages the mailboxes. He controls by the primitives it offers, the saturation on the message writings on full box and readings of message on empty box.
  • the mailbox is a common mechanism used for asynchronous inter-task communication in a function.
  • the real-time clock reference in a process control, is used to ensure a correct sequence of the function and the respect of the time constraints related to the environment.
  • Time managed by the coprocessor allows, among other things, to mark expectations on time or activate tasks after deadlines. In the case of a task suspended on deadline, the expiration of this deadline passes this task in the eligible state.
  • the absolute time management allows to partition the time in slices associated with the different functions.
  • a task declared to be cyclic is a task that is reactivated automatically by the coprocessor every N times that the application to which it belongs changes from inactive state in active state.
  • Each task of each application corresponds to a series counters that allow time control execution and reactivation of these.
  • Primitives associated with tranche management include primitives accessible only during initialization and primitives accessible during and after the initialization phase.
  • transitions between the different states that can take a task are conditioned by the execution of primitives, by external events (material events, RESET), or by events internal (deadline expired). Some transitions are managed by the scheduler only: transitions between the ELIGIBLE and ELUE states. The choice of elected task depends on the priority of eligible tasks, and execution of the Suspend and Resume primitives on some of these tasks ...
  • the architecture shown in Figure 1 involves a plurality of modules (module 1, module i, module n) each comprising a processor (P1, Pin, Pn) connected to a local memory (M1L, MiL, MnL) via a local memory BUS (B1L, BiL, BnL) and connected to a BUS common to the BC structure.
  • modules module 1, module i, module n
  • P1, Pin, Pn a processor
  • M1L, MiL, MnL local memory
  • BUS B1L, BiL, BnL
  • Each coprocessor C1, Ci, Cn which includes automata sequencing and specific wired logic, acts vis-à-vis the processor P1, Pi, Pn to which it is attached as a real-time coprocessor independent of the type of processor and high-level programming language used by the latter.
  • This coprocessor C1, Ci, Cn also includes means for managing by time slots T1, T2 ..., TN of variable duration but cyclically reproduced, real-time objects composed of tasks, events hardware and / or software, semaphores, mailboxes and local time at the function (TPSL1, TPSL2 ... TPSLi ... TPSLn) and global (TPSG) or absolute time, objects managed by one or more nuclei be different by time slice, therefore by function (F1, F2 ... Fi ... Fn), as well as processing means said primitives which can only handle objects associated with the function corresponding to the range of active time ( Figure 2).
  • This coprocessor also includes mechanisms and communication links between the different structure processors to ensure synchronization time in order to manage an absolute time (or system) common to all processors in the structure for ensure synchronous channel changes and broadcasting of real-time events critical to all of these processors via the BEV event BUS, and a scheduler able to manage the context of tasks relating to active time slot, the coprocessor deciding the passage from one state to another of these tasks according to the primitives and real-time context local to the function.
  • PLCs communicate with each other by an internal BUS to the component, the event primitives being broadcast on the BUS material event.
  • Each coprocessor component has mechanisms ensuring segregation of real-time objects specific to different functions managed on the processor to which this component is associated.
  • Each coprocessor has mechanisms ensuring the switching from one function to another corresponding function at the end of a time slot allocated to the function abandoned and at a new time slice allocated to the newly processed function.
  • Abandoning a function has the effect of freezing the whole of the real-time context of the abandoned function, therefore of pass all the duties of the function in frozen state, block all information relating to the local time of the function without necessarily block information relating to global weather and global events.
  • the coprocessor also has copying machines to perform data transfers independently processor execution between source memory and a destination memory, the source memory can be swap memory or local processor memory and the destination memory the local memory or the memory exchange.
  • the transfer of information blocks which can be do this by blocking the BUS used to transfer it, this to ensure the consistency of the data composing the block.
  • Each of these automata includes a sequencer or machine status and an interface with the component's internal BUS.
  • the coprocessor includes an interface between the BUS internal and local BUS BL of the processor module.
  • It also includes an interface between the internal BUS and the BE exchange bus.
  • It further comprises means for transmitting a signal of interruption to the processor concerned, in particular when the scheduler decides to change the task on this processor or if it detects an anomaly by its mechanisms safe.
  • This signal remains active as long as the processor did not access the coprocessor to read the code of the operation to be carried out or identify the cause of the anomaly. For certain primitives which call into question systematically causes the task in progress, it is by reading of the execution report passed by the coprocessor to the processor that the latter will know the news elected task.
  • the coprocessor has external interrupt inputs ITs exts as well as means of shaping and memorization of these interrupt signals. These interruptions are processed in relation to the list of objects real time managed as hardware events.
  • the interface between the processor (user mode) and the coprocessor is constituted by an executive (supervisor mode) according to a process which is illustrated in figure 3.
  • TRAP Transactional Retrieval
  • This instruction allowing system calls by an application, force an exception and switches from user mode to supervisor mode in which all code is executed belonging to the executive (Application or Common Executive).
  • processor is uninterruptible than during the context change phase.
  • the coprocessor can perform two types of treatments, the first type is triggered at the initiative of the processor (primitive request), the second type is triggered by an event hardware or an event internal to the coprocessor like a deadline, end of tranche, etc ...
  • the processor which wishes to access the coprocessor for execute a primitive must first check that the coprocessor is free because the coprocessor does not process only one primitive at a time.
  • the coprocessor's response "busy” or “free” is issued in a physical manner so as not to disturb the possible execution of a treatment in progress on the component triggered so internal by a material or temporal event.
  • the coprocessor If the coprocessor declares itself free, it positions itself immediately in the occupied state to reserve the primitive which is requested by the processor (this is for effect of automatically postponing any associated treatment on the arrival of an external or internal event).
  • the processor sends the code and the parameters of the primitive by simply writing to the address area of the coprocessor.
  • the treatment is then carried out in the coprocessor.
  • the processor acquires the information that will allow it to take the corresponding actions by successive readings in the coprocessor.
  • the processor continues execution of the current task.

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multi Processors (AREA)
  • Hardware Redundancy (AREA)

Claims (13)

  1. Verfahren zur Echtzeitsteuerung eines Systems, umfassend wenigstens einen zur Steuerung mehrerer Funktionen befähigten Prozessor, dadurch gekennzeichnet, daß es die Steuerung
    der zeitlichen Aufteilung der Rechnerperiode des Prozessors in Zeitscheiben gegebenenfalls unterschiedlicher Dauer, ausgehend von einem vorgegebenen Raster,
    der Zuordnung der Zeitscheiben zu den verschiedenen gespeicherten Funktionen gemäß einem oder mehreren vorgegebenen Modellen, wobei die mit jeder dieser Funktionen zusammenhängenden Tasks außerhalb der dieser Funktion entsprechenden Zeitscheibe inaktiv sind,
    des Speicherns des Maschinenkontextes der laufenden Funktion am Ende einer Scheibe im Hinblick auf die Wiederaufnahme dieser Funktion während der nächsten, mit dieser verknüpften Zeitscheibe und
    des Ladens des Maschinenkontextes im Zusammenhang mit der Aktivierung der mit dieser Scheibe verknüpften Funktion, die zuvor, am Ende einer früheren, dieser Funktion entsprechenden Scheibe gespeichert wurde, zu Beginn einer neuen Scheibe durch einen mit dem Prozessor verbundenen Coprozessor umfaßt.
  2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß die Aufteilung der verschiedenen Betriebsmittel zwischen den laufenden Arbeiten und die Übernahme von Hilfsfunktionen durch einen Programmkern gewährleistet sind, der folgende Eigenschaften aufweist:
    er erlaubt die scheinbar gleichzeitige Ausführung mehrerer Programme, wobei ein Betriebssystem die Zeit des Befehlsprozessors und des Hauptspeichers zwischen Einheiten aufteilt, die als Tasks bezeichnet werden,
    er ist zur Synthese komplexer Operationen befähigt, wobei die Programmierung dieses Kerns sich als Erweiterung der Maschinensprache des Prozessors darstellt, und ein spezieller Mechanismus die Erzeugung von Primitiven erlaubt, deren Rolle darin besteht, die Intervention des Kerns zur Durchführung komplexer Operationen anzufordern.
  3. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß der Prozessor zwei Programmebenen umfaßt, nämlich:
    eine erste, als "Anwendungsprogramm" bezeichnete Ebene, auf die sich eine Funktion zur Sicherung der Anordnung ihrer Tasks in bezug auf den Echtzeitkontext und insbesondere auf die Betriebsmittel und Ereignisse, die zur Ausführung der Funktion im Inneren erforderlich sind, stützt,
    eine zweite, als ,,Sequencer-Programm" bezeichnete Ebene, die die zur zeitlichen Aufteilung des Prozessors zwischen den verschiedenen auf dem Prozessor gespeicherten Funktionen erforderlichen Dienste und die Steuerung der globalen Ereignisse gewährleistet.
  4. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß der Coprozessor die Zeitscheiben-Steuerung der Funktionen durch ein ,,Sequencer-Programm" gewährleistet und die in Form von Primitiven vom Prozessor angeforderten Dienste ausführt, um die Echtzeitverknüpfung der Funktionen innerhalb der entsprechenden Zeitscheiben ("Anwendungsprogramm") zu gewährleisten, und daß der Coprozessor ein Leitwerk umfaßt, das in der Lage ist, die Zuordnung der verschiedenen Funktionen durch Zeitscheiben zu steuern, wobei dieses Leitwerk alle auf dem damit verbundenen Prozessor gespeicherten Funktionen durch selektive Steuerung einer Gruppe von Tasks einer entsprechenden Funktion während der gerade im Prozessor verarbeiteten Zeitscheibe steuert, wobei verschiedene Gruppen von Tasks verschiedenen Funktionen entsprechen, die von ein- und demselben Coprozessor in ähnlicher Weise gesteuert werden können.
  5. Verfahren nach Anspruch 4, dadurch gekennzeichnet, daß die erwähnten Coprozessoren gemäß zwei Funktionsmodi arbeiten:
    im Funktionsmodus vom Typ Slave wird er von dem Prozessor als Speicher betrachtet, wobei dieser Modus zur Ausführung von Primitiven eingesetzt wird und sich durch Lese- und Schreibvorgänge im Coprozessor äußert,
    im Funktionsmodus vom Typ Master kann er im Lokalspeicher des Prozessors lesen und schreiben.
  6. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß am Ende einer Zeitscheibe der Coprozessor ein an den Prozessor gerichtetes Unterbrechungssignal erzeugt, um diesem zu signalisieren, daß er die laufende Funktion abbrechen muß, um die vom Coprozessor angezeigte zu übernehmen, und daß der Prozessor, sobald er das Unterbrechungssignal erhalten hat, die folgenden Schritte nacheinander ausführt:
    Ausführung einer Sequenz, die es ihm erlaubt, den Mindest-Maschinenkontext der laufenden Funktion für eine korrekte Wiederaufnahme in der nächsten, dieser zugeordneten Zeitscheibe zu speichern,
    Senden einer Botschaft an den Coprozessor, um ihm zu signalisieren, daß er bereit ist, die Nummer der erneut aktiven Funktion und die Task mit der höchsten Ausführungspriorität, die zu dieser Funktion gehört, zu empfangen,
    Wiederaufrufen eines mit der Aktivierung der Funktion und der Auswahl der Task zusammenhängenden Maschinenkontextes, dessen Kontext am Ende der letzten, mit der erneut geweckten Funktion zusammenhängenden Zeitscheibe gegebenenfalls gespeichert werden konnte.
  7. Verfahren nach Anspruch 6, dadurch gekennzeichnet, daß es eine periodische Synchronisationsphase zur Unterhaltung einer allen Coprozessoren gemeinsamen Systemuhr umfaßt, um die Synchronisation der Zeitscheibenwechsel auf verschiedenen Modulen zu ermöglichen.
  8. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß es eine zeitliche Bezugsgröße verwenden kann, die von einem rückseitenverdrahteten Bus als Schnittstellenkomponente erzeugt wird, und dadurch, daß der Wechsel der Zeitscheibe in diesem Fall von der Komponente gesteuert wird, die den Prozessor durch ein Unterbrechungssignal informiert, wobei der Prozessor anschließend eine Primitive ausführt, die dem Coprozessor den Befehl zum Wechsel der Anwendung gibt, und der Prozessor dann kontrolliert, daß der Wechsel der Zeitscheibe auch wirklich innerhalb eines Zeitfensters erfolgt.
  9. Einheit zur Umsetzung des Verfahrens nach einem der vorhergehenden Ansprüche zur Steuerung der Echtzeitumgebung eines Systems, umfassend wenigstens einen zur Steuerung mehrerer Funktionen befähigten Prozessor, wobei die Einheit in Form einer Coprozessor-Komponente vorliegt, dadurch gekennzeicnnet, daß sie aus wenigstens drei Automaten besteht, nämlich aus:
    einem ersten Automaten, der auf die Steuerung des Austausches zwischen dem Coprozessor, dem Prozessor, dem Lokalspeicher (MiL), einem Wechselspeicher (MiE), einem gemeinsamen Bus (BC), einem Bus für den lokalen Austausch (BiE) und dem Bus für Hardware-Ereignisse (BEV) spezialisiert ist;
    einem zweiten Automaten, der auf die Zuordnung der Zeitscheiben zu den verschiedenen nach einem oder mehreren vorbestimmten Modellen gespeicherten Funktionen spezialisiert ist;
    einem dritten Automaten für die Steuerung bestimmter Echtzeitobjekte, die mit der aktiven Funktion auf der aktuellen Zeitscheibe verknüpft sind, insbesondere die Steuerung der Warteschlangen der anstehenden Tasks für den Prozessor, die Steuerung der lokalen Zeit, wie z. B. der Fristen, die Steuerung der Warteschlangen der Register und Semaphore, der auf globale oder lokale Ereignisse wartenden Tasks, und die Berücksichtigung externer Unterbrechungen;
    wobei diese drei Automaten über einen Bus innerhalb der Komponente miteinander kommunizieren und die Primitiven der entsprechenden globalen Ereignisse über den Bus für Hardware-Ereignisse gesendet werden.
  10. Einheit nach Anspruch 9, dadurch gekennzeichnet, daß sie über Mechanismen zur zuverlässigen Trennung der Echtzeitobjekte verfügt, die den verschiedenen, im Prozessor, mit dem diese Komponente verbunden ist, erzeugten Funktionen zugeordnet sind.
  11. Einheit nach Anspruch 9, dadurch gekennzeichnet, daß sie über Mechanismen verfügt, welche das Umschalten von einer Funktion zu einer entsprechenden anderen Funktion am Ende einer der beendeten Funktion zugeordneten Zeitscheibe, und zu einer neuen, der neu behandelten Funktion entsprechenden Zeitscheibe gewährleisten.
  12. Einheit nach Anspruch 9, dadurch gekennzeichnet, daß sie zusätzlich über Kopierautomaten zur Durchführung der Datentransfers, unabhängig von der Ausführung durch den Prozessor, zwischen einem Quellspeicher und einem Zielspeicher verfügt, wobei der Quellspeicher der Wechselspeicher oder der Lokalspeicher des Prozessors und der Zielspeicher der Lokalspeicher oder der Wechselspeicher sein kann.
  13. Einheit nach Anspruch 9, dadurch gekennzeichnet, daß sie sieben Automaten umfaßt, nämlich:
    einen Automaten Al zur Kommunikation mit dem Prozessor, der zur Steuerung des Austauschs mit dem Prozessor, z. B. der Verteilung der Verarbeitungsoperationen auf die anderen Automaten in Abhängigkeit von Primitiven dient, die vom Prozessor abgefragt werden,
    einen Automaten A2 zur Steuerung der Zeit, der die Steuerung der absoluten Zeit, der Zeitscheiben und der lokalen Objekte, die zeitlich mit den Funktionen verknüpft sind, und die Zuweisung der lokalen Objekte innerhalb der Komponente zu jeder Funktion gewährleistet,
    einen Signalautomaten A3, der die Steuerung der binären Semaphore und der Zählersemaphore und der Warteschlangen der diesen zugeordneten Tasks erlaubt,
    einen Register-Automaten A4, der die Gewährleistung der Steuerung der Register, wie z. B. der Warteschlangen der jeweiligen Tasks, erlaubt,
    einen Leitwerk-Automaten A5, der die Steuerung der Warteschlangen der anstehenden Tasks und somit das Senden des Unterbrechungssignals an den Prozessor erlaubt,
    einen Ereignis-Automaten A6, der die Gewährleistung der Steuerung von Ereignissen,
    z. B. der auf ein Ereignis wartenden Tasks, sowie die Berücksichtigung externer Unterbrechungen erlaubt,
    einen Kopier-Automaten A7, der die Gewährleistung der Steuerung des Kopierens von Speicherblöcken erlaubt.
EP92402282A 1991-10-03 1992-08-13 Verfahren und Vorrichtung zur Echtzeitverwaltung von einem System mit mindestens einem zur Verwaltung mehrerer Funktionen geeignetem Prozessor Expired - Lifetime EP0536010B1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR9112171A FR2682202B1 (fr) 1991-10-03 1991-10-03 Procede et dispositif pour la gestion temps reel d'un systeme comprenant au moins un processeur apte a gerer plusieurs fonctions.
FR9112171 1991-10-03

Publications (2)

Publication Number Publication Date
EP0536010A1 EP0536010A1 (de) 1993-04-07
EP0536010B1 true EP0536010B1 (de) 1998-04-01

Family

ID=9417545

Family Applications (1)

Application Number Title Priority Date Filing Date
EP92402282A Expired - Lifetime EP0536010B1 (de) 1991-10-03 1992-08-13 Verfahren und Vorrichtung zur Echtzeitverwaltung von einem System mit mindestens einem zur Verwaltung mehrerer Funktionen geeignetem Prozessor

Country Status (4)

Country Link
US (1) US5506963A (de)
EP (1) EP0536010B1 (de)
DE (1) DE69224954T2 (de)
FR (1) FR2682202B1 (de)

Families Citing this family (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8352400B2 (en) 1991-12-23 2013-01-08 Hoffberg Steven M Adaptive pattern recognition based controller apparatus and method and human-factored interface therefore
US10361802B1 (en) 1999-02-01 2019-07-23 Blanding Hovenweep, Llc Adaptive pattern recognition based control system and method
US6304957B1 (en) * 1993-02-26 2001-10-16 Nippondenso Co., Ltd. Multitask processing unit
US5871429A (en) * 1994-07-22 1999-02-16 Ranpak Corp. Cushioning conversion machine including a probe for sensing packaging requirements
US5745724A (en) * 1996-01-26 1998-04-28 Advanced Micro Devices, Inc. Scan chain for rapidly identifying first or second objects of selected types in a sequential list
FR2760109B1 (fr) * 1997-02-25 1999-05-28 Sextant Avionique Procede et dispositif pour l'execution par un processeur unique de plusieurs fonctions de niveaux de criticite differents, avec une grande securite de fonctionnement
US6073197A (en) * 1997-08-21 2000-06-06 Advanced Micro Devices Inc. Apparatus for and method of communicating data among devices interconnected on a bus by using a signalling channel to set up communications
US6317760B1 (en) 1998-01-14 2001-11-13 Microsoft Corporation Extensible ordered information within a web page
US6522420B1 (en) * 1998-10-20 2003-02-18 Hewlett-Packard Company Printer and method for alternately printing and compressing data using same processing unit
US7904187B2 (en) 1999-02-01 2011-03-08 Hoffberg Steven M Internet appliance system and method
US6738737B1 (en) * 1999-02-18 2004-05-18 Cirrus Logic, Inc. Race condition ordering and functional verification system and method
US6678716B1 (en) * 2000-06-19 2004-01-13 J. D. Edwards World Source Company System and method for managing processes
EP1997001A1 (de) * 2000-07-24 2008-12-03 Infineon Technologies AG Verteilte mikroanweisungssatzprozessorarchitektur für die hocheffiziente signalverarbeitung
US10298735B2 (en) 2001-04-24 2019-05-21 Northwater Intellectual Property Fund L.P. 2 Method and apparatus for dynamic configuration of a multiprocessor health data system
US7146260B2 (en) 2001-04-24 2006-12-05 Medius, Inc. Method and apparatus for dynamic configuration of multiprocessor system
JP2002342097A (ja) * 2001-05-17 2002-11-29 Matsushita Electric Ind Co Ltd タスク割当可能時間決定装置及びタスク割当可能時間決定方法
US7178049B2 (en) 2002-04-24 2007-02-13 Medius, Inc. Method for multi-tasking multiple Java virtual machines in a secure environment
JP2006519432A (ja) * 2003-02-27 2006-08-24 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 複数の処理要素を有するデータ処理システム、複数の処理要素を有するデータ処理システムを制御する方法
US7337650B1 (en) 2004-11-09 2008-03-04 Medius Inc. System and method for aligning sensors on a vehicle
FR2891069B1 (fr) * 2005-09-16 2007-11-09 Thales Sa Procede de controle du bon fonctionnement d'un calculateur
DE102005055000A1 (de) * 2005-11-18 2007-05-24 Airbus Deutschland Gmbh Modulares Avioniksystem eines Flugzeuges
US8701023B1 (en) 2006-02-16 2014-04-15 Cypress Semiconductor Corporation Global parameter management graphical user interface (GUI) for embedded application design
ITVI20060203A1 (it) 2006-07-03 2008-01-04 S E A Societa Elettromeccanica Reattore di potenza per il trasferimento di energia
US9358924B1 (en) 2009-05-08 2016-06-07 Eagle Harbor Holdings, Llc System and method for modeling advanced automotive safety systems
US8417490B1 (en) 2009-05-11 2013-04-09 Eagle Harbor Holdings, Llc System and method for the configuration of an automotive vehicle with modeled sensors
US8886392B1 (en) 2011-12-21 2014-11-11 Intellectual Ventures Fund 79 Llc Methods, devices, and mediums associated with managing vehicle maintenance activities
US10445169B2 (en) * 2016-04-08 2019-10-15 Nxp Usa, Inc. Temporal relationship extension of state machine observer
CN114880102B (zh) * 2022-07-04 2022-10-25 北京智芯半导体科技有限公司 安全芯片及其多任务调度方法和装置、存储介质

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4425616A (en) * 1979-11-06 1984-01-10 Frederick Electronic Corporation High-speed time share processor
JPS6031648A (ja) * 1983-07-29 1985-02-18 Sharp Corp マルチ・タスク制御方法
AU588389B2 (en) * 1985-11-14 1989-09-14 Data General Corporation Multiprocessor data processing system
FR2604543B1 (fr) * 1986-09-30 1989-04-07 Sfena Procede et dispositif pour l'optimalisation des performances de primitives temps reel d'un noyau d'executif temps reel sur des structures multiprocesseurs
US4954948A (en) * 1986-12-29 1990-09-04 Motorola, Inc. Microprocessor operating system for sequentially executing subtasks
US4858101A (en) * 1987-08-26 1989-08-15 Allen-Bradley Company, Inc. Programmable controller with parallel processors
US4937777A (en) * 1987-10-07 1990-06-26 Allen-Bradley Company, Inc. Programmable controller with multiple task processors
US5210873A (en) * 1990-05-25 1993-05-11 Csi Control Systems International, Inc. Real-time computer system with multitasking supervisor for building access control or the like
US5154246A (en) * 1991-03-08 1992-10-13 Pitney Bowes Inc. Sensor processor for high-speed mail-handling machine
US5210872A (en) * 1991-06-28 1993-05-11 Texas Instruments Inc. Critical task scheduling for real-time systems

Also Published As

Publication number Publication date
US5506963A (en) 1996-04-09
DE69224954D1 (de) 1998-05-07
DE69224954T2 (de) 1998-10-22
FR2682202A1 (fr) 1993-04-09
FR2682202B1 (fr) 1994-03-11
EP0536010A1 (de) 1993-04-07

Similar Documents

Publication Publication Date Title
EP0536010B1 (de) Verfahren und Vorrichtung zur Echtzeitverwaltung von einem System mit mindestens einem zur Verwaltung mehrerer Funktionen geeignetem Prozessor
EP1337919B1 (de) Sicherheitsverfahren mit deterministischer echtzeit-ausführung von multitask-anwendungen des steuer- und befehlstyps mit fehlereingrenzung
Clark et al. An architectural overview of the Alpha real-time distributed kernel
EP0517558B1 (de) Vorrichtung zur Steigerung der Leistung eines einer Multiprozessorstruktur mit einer möglicherweise hohen Anzahl von Prozessoren zugeordneten Echtzeitsteuerprogrammkerns
US20070204271A1 (en) Method and system for simulating a multi-CPU/multi-core CPU/multi-threaded CPU hardware platform
CN101176066B (zh) 用于操作系统服务的透明支持
FR2553207A1 (fr) Systeme de commande pour unites multitraitement a couplage etroit
FR3019668A1 (fr) Systeme multicoeur de traitement de donnees a dispositifs d'entree/sortie locaux et globaux et interface graphique comportant un tel systeme de traitement de donnee
Zhang et al. Dynamic VM provisioning for Torque in a cloud environment
Sagar et al. Embedded operating systems for real-time applications
EP0264317B1 (de) Vorrichtung zur Optimierung des Leistungsvermögens von Echtzeit-Primitivoperationen eines Echtzeitsteuerprogrammkerns auf Multiprozessorarchitekturen
EP1410178B1 (de) Verfahren und system zur zeitverwaltung in einem echtzeitsystem
Gu et al. Dynamic Reconfiguration Mechanism for Distributed Integrated Modular Avionics System
Durant Embedded real-time system considerations
Demeure et al. A scheduling framework for the automatic support of temporal QoS constraints
Khurana Operating System (For Anna)
Gouicem Thread scheduling in multi-core operating systems: how to understand, improve and fix your scheduler
Barros Real-Time Software Transactional Memory
Brandenburg et al. Joint Opportunities for Real-Time Linux and Real-Time Systems Research
Burns Why the expressive power of programming languages such as Ada is needed for future cyber physical systems
Rottman et al. A Common Interface Real-Time Multiprocessor Operating System for Embedded Systems
Grolleau Introduction to Real‐Time Scheduling
Grösbrink Adaptive virtual machine scheduling and migration for embedded real-time systems
Furht et al. Open systems for time-critical applications in telemetry
JP3764282B2 (ja) プログラム制御システムの制御装置

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: 19920819

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): DE GB IT

GRAG Despatch of communication of intention to grant

Free format text: ORIGINAL CODE: EPIDOS AGRA

GRAG Despatch of communication of intention to grant

Free format text: ORIGINAL CODE: EPIDOS AGRA

GRAH Despatch of communication of intention to grant a patent

Free format text: ORIGINAL CODE: EPIDOS IGRA

17Q First examination report despatched

Effective date: 19970827

GRAH Despatch of communication of intention to grant a patent

Free format text: ORIGINAL CODE: EPIDOS IGRA

GRAA (expected) grant

Free format text: ORIGINAL CODE: 0009210

AK Designated contracting states

Kind code of ref document: B1

Designated state(s): DE GB IT

GBT Gb: translation of ep patent filed (gb section 77(6)(a)/1977)

Effective date: 19980402

REF Corresponds to:

Ref document number: 69224954

Country of ref document: DE

Date of ref document: 19980507

ITF It: translation for a ep patent filed

Owner name: STUDIO GLP S.R.L.

PLBE No opposition filed within time limit

Free format text: ORIGINAL CODE: 0009261

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

Free format text: STATUS: NO OPPOSITION FILED WITHIN TIME LIMIT

26N No opposition filed
PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: GB

Payment date: 20010809

Year of fee payment: 10

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: DE

Payment date: 20011029

Year of fee payment: 10

REG Reference to a national code

Ref country code: GB

Ref legal event code: IF02

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: GB

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20020813

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: DE

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20030301

GBPC Gb: european patent ceased through non-payment of renewal fee

Effective date: 20020813

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: IT

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES;WARNING: LAPSES OF ITALIAN PATENTS WITH EFFECTIVE DATE BEFORE 2007 MAY HAVE OCCURRED AT ANY TIME BEFORE 2007. THE CORRECT EFFECTIVE DATE MAY BE DIFFERENT FROM THE ONE RECORDED.

Effective date: 20050813