DE102015203695A1 - Elektronische steuereinheit - Google Patents

Elektronische steuereinheit Download PDF

Info

Publication number
DE102015203695A1
DE102015203695A1 DE102015203695.2A DE102015203695A DE102015203695A1 DE 102015203695 A1 DE102015203695 A1 DE 102015203695A1 DE 102015203695 A DE102015203695 A DE 102015203695A DE 102015203695 A1 DE102015203695 A1 DE 102015203695A1
Authority
DE
Germany
Prior art keywords
task
execution
relationship
execution order
determination
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.)
Pending
Application number
DE102015203695.2A
Other languages
English (en)
Inventor
c/o DENSO CORPORATION Maruyama Yuuki
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.)
Denso Corp
Original Assignee
Denso Corp
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 Denso Corp filed Critical Denso Corp
Publication of DE102015203695A1 publication Critical patent/DE102015203695A1/de
Pending 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/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5066Algorithms for mapping a plurality of inter-dependent sub-tasks onto a plurality of physical CPUs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/5018Thread allocation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/506Constraint

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

Eine elektronische Steuereinheit beinhaltet eine erste Aufgabenausführungseinheit (11, S130), eine zweite Aufgabenausführungseinheit (12, S130), und eine Ausführungsreihenfolgeänderungseinrichtung (11, 12, S10 bis S100). Die erste Aufgabenausführungseinheit (11, S130) führt sequenziell mehrere Aufgaben in einer vorbestimmten ersten Ausführungsreihenfolge aus. Die zweite Aufgabenausführungseinrichtung (12, S130) führt sequenziell die mehreren Aufgaben in einer vorbestimmten zweiten Ausführungsreihenfolge parallel zu der ersten Aufgabenausführungseinrichtung (11, S130) aus. Die Ausführungsreihenfolgeänderungseinrichtung (11, 12, S10 bis S100) ändert die erste Ausführungsreihenfolge und die zweite Ausführungsreihenfolge, wenn eine erste Aufgabenausführungszeit mit einer zweiten Aufgabenausführungszeit überlappt, und realisiert eine vorbestimmte Ausführungserlaubnisbeziehung zwischen einer ersten Aufgabe und einer zweiten Aufgabe.

Description

  • Die Erfindung betrifft eine elektronische Steuereinheit, die es ermöglicht, mehrere Aufgaben parallel auszuführen.
  • Herkömmlich wird eine exklusive Steuerung, die vorübergehend eine Aufgabenunterbrechung verhindert, um die Konsistenz gemeinsamer Daten aufrechtzuerhalten, durchgeführt, wenn es mehrere Aufgaben ermöglichen, auf die gemeinsamen Daten Bezug zu nehmen bzw. zuzugreifen und diese zu aktualisieren (vergleiche beispielsweise die Patentliteratur 1).
    Patentliteratur 1: JP-2003-131893 A
  • Jedoch kann in einem Fall, in dem mehrere Aufgaben parallel ausgeführt werden können, dann, wenn zumindest eine der mehreren Aufgaben, die parallel ausgeführt werden, daran gehindert wird, ausgeführt zu werden, um die Konsistenz gemeinsamer Daten zu bewahren, die Effizienz der Aufgabenausführung abnehmen.
  • Der Erfindung liegt als eine Aufgabe zugrunde, eine Technologie bereitzustellen, die verhindert, dass die Effizienz der Aufgabenausführung abnimmt.
  • Eine elektronische Steuereinheit gemäß der Erfindung beinhaltet eine erste Aufgabenausführungseinrichtung, eine zweite Ausgabenausführungseinrichtung und eine Ausführungsreihenfolgeänderungseinrichtung.
  • Die erste Aufgabenausführungseinrichtung führt mehrere Aufgaben in einer vorbestimmten ersten Ausführungsreihenfolge aus. Die zweite Aufgabenausführungseinrichtung führt mehrere Aufgaben in einer vorbestimmten zweiten Ausführungsreihenfolge parallel zu bzw. mit der ersten Aufgabenausführungseinrichtung aus.
  • Eine Aufgabe, die die erste Aufgabenausführungseinrichtung ausführt, entspricht einer ersten Aufgabe. Eine Aufgabe, die die zweite Aufgabenausführungseinrichtung ausführt, entspricht einer zweiten Aufgabe. Die Ausführungsreihenfolgeänderungseinrichtung ändert die erste Ausführungsreihenfolge und die zweite Ausführungsreihenfolge in einem Fall, in dem eine erste Aufgabenausführungszeit dann, wenn die erste Aufgabenausführungseinrichtung die erste Aufgabe ausführt, zumindest teilweise mit einer zweiten Aufgabenausführungszeit dann, wenn die zweite Aufgabenausführungseinrichtung die zweite Aufgabe ausführt, überlappt, so dass die erste Aufgabe und die zweite Aufgabe, deren Ausführungszeiten einander überlappen, eine vorbestimmte Ausführungserlaubnisbeziehung aufweisen, die eine parallele Ausführung erlaubt.
  • In Übereinstimmung mit der elektronischen Steuereinheit kann es möglich sein, die zweite Aufgabe, die parallel zu bzw. mit der ersten Aufgabe ausgeführt werden darf, anstelle einer zweiten Aufgabe auszuführen, deren Ausführung parallel zu bzw. mit der ersten Ausgabe nicht erlaubt ist, während die erste Aufgabe ausgeführt wird. Auf ähnliche Art und Weise kann es möglich sein, die erste Aufgabe, die parallel zu bzw. mit der zweiten Aufgabe ausgeführt werden darf, anstelle einer ersten Aufgabe auszuführen, deren Ausführung parallel zu bzw. mit der zweiten Aufgabe nicht erlaubt ist, während die zweite Aufgabe ausgeführt wird.
  • Daher kann es möglich sein, zumindest einen Fall zu verhindern, in dem die zweite Aufgabe nicht ausgeführt wird, während die erste Aufgabe ausgeführt wird, und/oder einen Fall zu verhindern, in dem die erste Aufgabe nicht ausgeführt wird, während die zweite Aufgabe ausgeführt wird, und kann es möglich sein, zu verhindern, dass die Effizienz der Aufgabenausführung abnimmt.
  • Die vorstehenden und weitere Ziele, Merkmale und Vorteile der Erfindung sind der nachfolgenden detaillierten Beschreibung unter Bezugnahme auf die beigefügten Zeichnungen deutlicher zu entnehmen. Es zeigen:
  • 1 ein Blockdiagramm, das eine Konfiguration einer elektronischen Steuereinheit darstellt;
  • 2 ein Ablaufdiagramm, das eine Aufgabenausführungsverarbeitung darstellt;
  • 3 ein Diagramm, das ein eine Aufgabenausführungsreihenfolge in der Aufgabenausführungsverarbeitung änderndes Beispiel darstellt;
  • 4 ein Diagramm, das ein einen Betriebsablauf von CPU-Kernen darstellendes erstes Zeitverlaufsdiagramm zeigt; und
  • 5 ein Diagramm, das ein einen Betriebsablauf von CPU-Kernen darstellendes zweites Zeitverlaufsdiagramm zeigt; Nachstehend wird ein Ausführungsbeispiel der Erfindung unter Bezugnahme auf die Zeichnungen beschrieben.
  • Eine elektronische Steuereinheit 1 (die nachstehend als eine ECU 1 bezeichnet wird) in dem vorliegenden Ausführungsbeispiel ist in einem Fahrzeug verbaut, um einen (nicht gezeigten) Motor des Fahrzeugs zu steuern. Die elektronische Steuereinheit 1 bzw ECU 1 kann auch als eine elektronische Steuervorrichtung bezeichnet werden.
  • Die ECU 1 beinhaltet einen Mikrocomputer 2 wie in 1 gezeigt.
  • Der Mikrocomputer 2 steuert den Motor und gibt ein Steuersignal zum Steuern einer an dem Fahrzeug vorgesehenen elektrischen Last (beispielsweise ein Injektor) aus.
  • Der Mikrocomputer 2 beinhaltet CPU-Kerne (bzw. Kerne einer zentralen Verarbeitungseinheit) 11, 12, ein Flash-ROM 13, ein RAM 14 und einen Bus 15. Der Bus 15 verbindet die CPU-Kerne 11, 12, das Flash-ROM 13 und das RAM 14 miteinander.
  • Die CPU-Kerne 11, 12 beinhalten eine arithmetische Einheit bzw. Recheneinheit, ein Register oder dergleichen, um ein Programm durchzuführen.
  • Das Flash-ROM 13 ist ein nicht flüchtiger Speicher, der es ermöglicht, Daten neu einzuschreiben. Das Flash-ROM 13 speichert ein Betriebssystemprogramm 21, das ein Echtzeitbetriebssystem (nachstehend als ein RTOS bezeichnet) steuert, und ein Fahrzeugsteuerprogramm 22, das den in einem Fahrzeug verbauten Motor oder dergleichen steuert.
  • Das RAM 14 ist ein flüchtiger Speicher und speichert vorübergehend ein Betriebsablaufergebnis oder dergleichen der CPU-Kerne 11, 12. Das RAM 14 beinhaltet einen Warteschlangenspeicher 31, einen Warteschlangenspeicher 32, einen Ausführungsaufgabeinformationsspeicher 41 und einen Ausführungsaufgabeinformationsspeicher 42.
  • Das Fahrzeugsteuerprogramm 22 beinhaltet mehrere Aufgaben 50. Jede Aufgabe 50 beinhaltet ein Aufgabenprogramm 51 zum Ausführen einer entsprechenden Aufgabe, eine Aufgabenabhängigkeitsbeziehungsidentifikationsnummer 52, welche festgelegt ist, um eine Aufgabenabhängigkeitsbeziehung zu bestimmen, und eine Ausführungskerneinschränkungsinformation 53. Die Ausführungskerneinschränkungsinformation 53 stellt dar, ob ein eine entsprechende Aufgabe ausführender CPU-Kern (diesbezüglich) eingeschränkt ist bzw. ob Einschränkungen dahingehend bestehen, ob ein zur Ausführung einer Aufgabe vorgesehener CPU-Kern die Aufgabe ausführen muss bzw. darf.
  • Die Aufgabenabhängigkeitsbeziehungsidentifikationsnummer 52 in mehreren Aufgaben mit derselben Aufgabenabhängigkeitsbeziehung hat eine identische Nummer. Wenn zum Beispiel eine Aufgabe A die Aufgabenabhängigkeitsbeziehung mit einer Aufgabe B hat, ist die Aufgabenabhängigkeitsbeziehungsidentifikationsnummer 52 in der Aufgabe A und der Aufgabe B auf beispielsweise 0x00001234 festgelegt. Wenn die Aufgaben A, B keine Aufgabenabhängigkeitsbeziehung mit einer Aufgabe C haben, ist die Aufgabenabhängigkeitsbeziehungsidentifikationsnummer 52 der Aufgabe C auf beispielsweise 0x00005678 festgelegt.
  • Die Aufgabenabhängigkeitsbeziehung bestimmt, ob mehrere Aufgaben wechselseitig auf gemeinsame Daten Bezug nehmen bzw. zugreifen und diese aktualisieren. Wenn zum Beispiel die Aufgabe A und die Aufgabe B wechselseitig auf gemeinsame Daten zugreifen und diese aktualisieren, wird ermittelt, dass die Aufgabe A die Aufgabenabhängigkeitsbeziehung mit der Aufgabe B hat.
  • Nebenbei bemerkt kann hierin die Aufgabenabhängigkeitsbeziehungsidentifikationsnummer 52 ein Beispiel einer Erlaubnisbeziehungsidentifikationsinformation sein, und kann hierin die Aufgabenabhängigkeitsbeziehung ein Beispiel einer Ausführungserlaubnisbeziehung sein.
  • Die Ausführungskerneinschränkungsinformation 53 ist zum Beispiel auf 1 festgelegt, wenn ein CPU-Kern, der eine entsprechende Aufgabe ausführt, eingeschränkt bzw. limitiert ist, und ist auf zum Beispiel 0 festgelegt, wenn ein CPU-Kern, der die entsprechende Aufgabe ausführt, nicht eingeschränkt bzw. nicht limitiert ist.
  • Die CPU-Kerne 11, 12 führen ein Betriebssystemprogramm 21 aus, das in dem Flash-ROM 13 gespeichert ist, um das RTOS auszuführen.
  • Wenn eine Aufgabenverarbeitungsanforderung, die eine Ausführung einer das Fahrzeugsteuerprogramm 22 konfigurierenden Aufgabe anfordert, auftritt, führt das RTOS einen Ablaufplan durch, um eine Ausführungsreihenfolge von Aufgaben derart zu bestimmen, dass eine Aufgabe mit einer hohen Aufgabenpriorität auf der Grundlage einer Aufgabenpriorität vorrangig ausgeführt wird. Die Aufgabenpriorität wird für die Aufgabe im Voraus festgelegt.
  • Im Einzelnen stellt die Aufgabenadressinformation eine Anfangs- bzw. Kopfadresse dar, die bzw. an der ein entsprechendes Aufgabenprogramm 51 speichert bzw. abgelegt ist. Das RTOS ordnet die Aufgabenadressinformation in absteigender Reihenfolge der Aufgabenprioritäten an. Das RTOS speichert die Aufgabenadressinformation in den Warteschlangenspeicher 31 oder den Warteschlangenspeicher 32 und bestimmt eine Ausführungsreihenfolge der auf die Ausführung wartenden Aufgaben. Folglich ist es durch Extrahieren der Aufgabenadressinformation mit der frühesten Ausführungsreihenfolge bzw. dem frühesten Ausführungszeitpunkt aus dem Warteschlangenspeicher 31 oder dem Warteschlangenspeicher 32 möglich, eine Aufgabe in der Ausführungsreihenfolge auszuführen, welche durch das RTOS festgelegt ist.
  • In der ECU 1 führen die CPU-Kerne 11, 12 eine Aufgabenausführungsverarbeitung aus.
  • Die durch den CPU-Kern 11 (12) ausgeführte Aufgabenausführungsverarbeitung wird nachstehend erklärt. Die Aufgabenausführungsverarbeitung wird jedes Mal dann ausgeführt, wenn die Aufgabenadressinformation mit der frühesten Ausführungsreihenfolge aus dem Warteschlangenspeicher 31 (32) extrahiert wird.
  • Wenn die Aufgabenausführungsverarbeitung ausgeführt wird, führt der CPU-Kern 11 (12) eine Verarbeitung wie in 2 beschrieben durch. In einem Schritt S10 liest der CPU-Kern 11 (12) die Aufgabenabhängigkeitsbeziehungsidentifikationsnummer 52 des in einer Kopfadresse gespeicherten Aufgabenprogramms 51 (nachstehend als eine extrahierte Aufgabenadresse oder Extraktionsaufgabenadresse bezeichnet), die die extrahierte Aufgabenadressinformation darstellt, aus dem Flash-ROM 13 auf der Grundlage der extrahierten Aufgabenadresse. Die Aufgabenabhängigkeitsbeziehungsidentifikationsnummer 52 wird in eine Adresse gespeichert, die dem Additionswert entspricht, der durch Addieren eines vorbestimmten Identifikationsnummersuchwerts zu einem Wert der Kopfadresse erhalten wird. Alle Aufgaben 50, die das Fahrzeugsteuerprogramm 22 konfigurieren bzw. bilden, verwenden in dem vorliegenden Ausführungsbeispiel den identischen Identifikationsnummersuchwert. Die Aufgabenabhängigkeitsbeziehungsidentifikationsnummer 52, welche aus dem Flash-ROM 13 gelesen wird, wird als eine Bestimmungsobjektaufgabenidentifikationsnummer 52 bezeichnet.
  • In einem Schritt S20 wird die in dem Ausführungsaufgabeninformationsspeicher 42 (41) gespeicherte Aufgabenabhängigkeitsbeziehungsidentifikationsnummer 52 gelesen. Die Aufgabenabhängigkeitsbeziehungsidentifikationsnummer 52, die in Schritt S20 gelesen wird, wird als eine Ausführungsaufgabenidentifikationsnummer 52 bezeichnet.
  • In einem Schritt S30 wird ermittelt, ob die Aufgabenabhängigkeitsbeziehungsidentifikationsnummer 52 (entsprechend zu einer neuesten Bestimmungsobjektaufgabenidentifikationsnummer 52), welche als letzte aus dem Flash-ROM 13 gelesen wird, mit der Aufgabenabhängigkeitsbeziehungsidentifikationsnummer 52 (entsprechend zu der Ausführungsaufgabenidentifikationsnummer 52), welche in Schritt S20 gelesen wird, übereinstimmt.
  • Wenn die neueste Bestimmungsobjektaufgabenidentifikationsnummer 52 mit der Ausführungsaufgabenidentifikationsnummer 52 übereinstimmt (S30: JA), wird in einem Schritt S40 die in der Kopfadresse gespeicherte Ausführungskerneinschränkungsinformation 53 des Aufgabenprogramms 51 aus dem Flash-ROM 13 auf der Grundlage einer neuesten Extraktionsaufgabenadresse gelesen. Die Ausführungskerneinschränkungsinformation 53 wird an eine Adresse eines Additionswerts, der durch Addieren eines vorbestimmten Einschränkungsinformationssuchwerts zu dem Wert der Kopfadresse erhalten wurde, gespeichert. Alle das Fahrzeugsteuerprogramm 22 konfigurierenden Aufgaben 50 verwenden denselben Einschränkungsinformationssuchwert.
  • In einem Schritt S50 wird auf der Grundlage der in Schritt S40 gelesenen Ausführungskerneinschränkungsinformation 53 ermittelt, ob der CPU-Kern 11 (12) es erfordert, eine Aufgabe (nachstehend als eine Bestimmungsobjektaufgabe bezeichnet) auszuführen, die durch ein an der neuesten Extraktionsaufgabenadresse gespeichertes Aufgabenprogramm 51 ausgeführt wird. Im Einzelnen wird dann, wenn die Ausführungskerneinschränkungsinformation 53, welche ausgelesen wurde, auf 1 gesetzt ist, ermittelt, dass der CPU-Kern 11 (12) die Aufgabe ausführt. Wenn die Ausführungskerneinschränkungsinformation 53 auf 0 gesetzt ist, wird ermittelt, dass der CPU-Kern 11 (12) die Aufgabe nicht ausführen muss bzw. darf, d. h., es wird ermittelt, dass die Aufgabe durch den CPU-Kern 11 (12) nicht auszuführen ist.
  • Wenn der CPU-Kern 11 (12) die Bestimmungsobjektaufgabe nicht ausführt (S50: NEIN), wird (zur Bezugnahme auf einen anderen CPU-Kern) eine Anderkernspeicheranweisung i in einem Schritt S60 inkrementiert (d. h., 1 wird zu der Anderkernspeicheranweisung i addiert). Die Anderkernspeicheranweisung i kann auch als eine andere Kern-Speicheranweisung i bezeichnet werden. Darüber hinaus wird in einem Schritt S70, damit eine Aufgabe, die der durch die neueste Extraktionsaufgabenadresse dargestellte Aufgabenadressinformation entsprechenden Aufgabe entspricht, in einer durch die Anderkernspeicheranweisung i dargestellten Ausführungsreihenfolge ausgeführt wird, die Aufgabenadressinformation in den Warteschlangenspeicher 32 (31) gespeichert. Die Ausführungsreihenfolge der auf Ausführung wartenden Aufgabe in dem CPU Kern 12 (11) wird neu bestimmt, und die Verarbeitung schreitet zu einem Schritt S100 fort. Wenn zum Beispiel der Anderkernspeicheranweisungswert i gleich 1 ist, wird die die neueste Extraktionsaufgabenadresse darstellende Aufgabenadressinformation in den Warteschlangenspeicher 32 (31) gespeichert, so dass die Ausführungsreihenfolge in der auf Ausführung wartenden Aufgaben in dem CPU Kern 12 (11) die erste wird bzw. als erste zur Ausführung kommt.
  • Die Anderkernspeicheranweisung kann auch als eine anderer-Kern-Speicheranweisung bezeichnet werden.
  • Wenn der CPU-Kern 11 (12) (als ein Subjekt-Kern bzw. aktuell betrachteter Kern) die Bestimmungsobjektaufgabe (als ein Ziel der Ausführung) ausführen muss (S50: JA), wird ein Subjektkernspeicheranweisungswert j in einem Schritt S80 inkrementiert. In einem Schritt S90 wird, damit eine Aufgabe, die der die neueste Extraktionsaufgabenadresse darstellenden Aufgabenadresseninformation entspricht, nächstliegend zu der durch den Subjektkernspeicheranweisungswert j dargestellten Ausführungsreihenfolge ausgeführt wird, die Aufgabenadressinformation in dem Warteschlangenspeicher 31 (32) gespeichert. Die Ausführungsreihenfolge der auf Ausführung wartenden Aufgaben in dem CPU Kern 11 (12) wird neu bestimmt, und die Verarbeitung schreitet zu Schritt S100 fort. Wenn zum Beispiel der Subjektkernspeicheranweisungswert j gleich 1 ist, wird die Aufgabenadressinformation, die die neueste Extraktionsaufgabenadresse darstellt, in den Warteschlangenspeicher 31 (32) gespeichert, so dass die Ausführungsreihenfolge in den auf Ausführung wartenden Aufgaben in dem CPU-Kern 11 (12) die zweitnächste wird bzw. als zweite zur Ausführung kommt.
  • Wenn die Verarbeitung zu Schritt S100 fortschreitet, wird die Aufgabenadressinformation, die zurzeit die früheste Ausführungsreihenfolge hat, aus dem Warteschlangenspeicher 31 (32) gelesen. Dann schreitet die Verarbeitung zu Schritt S30 fort.
  • Nebenbei bemerkt schreitet in Schritt S30 dann, wenn die neueste Bestimmungsobjektaufgabenidentifikationsnummer 52 nicht mit der Ausführungsaufgabenidentifikationsnummer 52 übereinstimmt (S30: NEIN), die Verarbeitung zu einem Schritt S110 fort. In Schritt S110 werden der Anderkernspeicheranweisungswert i und der Subjektkernspeicheranweisungswert j auf 0 gesetzt. In einem Schritt S120 speichert der Ausführungsaufgabeninformationsspeicher 41 (42) die neueste Bestimmungsobjektaufgabenidentifikationsnummer 52, so dass der Ausführungsaufgabeninformationsspeicher 41 (42) Information überschreibt. In einem Schritt S130 wird auf der Grundlage der neuesten Extraktionsaufgabenadresse das Aufgabenprogramm 51 aus dem Flash-ROM 13 gelesen, wird eine Aufgabe ausgeführt, und wird eine Aufgabenausführungsverarbeitung abgeschlossen.
  • Nachstehend wird ein Beispiel dahingehend, dass die Warteschlangenspeicher 31, 32 die Aufgabenadressinformation speichern, erklärt.
  • Zum Beispiel speichert der Warteschlangenspeicher 31 die Aufgabenadressinformation einer Aufgabe B, einer Aufgabe C, und einer Aufgabe D in der Reihenfolge einer frühen Ausführung der auf Ausführung wartenden Aufgaben wie in 3 gezeigt. Der Warteschlangenspeicher 32 speichert die Aufgabenadressinformation einer Aufgabe P, eine Aufgabe Q, einer Aufgabe R, einer Aufgabe S und einer Aufgabe T in der Reihenfolge einer frühen Ausführung von auf Ausführung wartenden Aufgaben.
  • Darüber hinaus wird angenommen, dass der CPU-Kern 11 eine Aufgabe A ausführt, und der CPU-Kern 12 damit beginnt, eine neue Aufgabe auszuführen.
  • Zu diesem Zeitpunkt liest der CPU-Kern 12 initial die Aufgabenadressinformation der Aufgabe P aus dem Warteschlangenspeicher 32. Es sei angenommen, dass die Aufgabe P die Aufgabenabhängigkeitsbeziehung mit der Aufgabe A hat, und dass der CPU-Kern 12 die Aufgabe P nicht ausführen muss bzw. darf. Die Aufgabenadressinformation der Aufgabe P wird in den Warteschlangenspeicher 31 gespeichert (vergleiche einen Pfeil AL1), so dass die Ausführungsreihenfolge in den auf Ausführung wartenden Aufgaben in dem CPU Kern 11 die erste wird bzw. als erste zur Ausführung kommt. Demgemäß speichert der Warteschlangenspeicher 31 die Aufgabenadressinformation der Aufgabe P, der Aufgabe B, der Aufgabe C und der Aufgabe D in der Reihenfolge einer frühen Ausführung der auf Ausführung wartenden Aufgaben (vergleiche einen Pfeil AL1). Der Warteschlangenspeicher 32 speichert die Aufgabe Q, die Aufgabe R, die Aufgabe S und die Aufgabe P in der Reihenfolge einer frühen Ausführung der auf Ausführung wartenden Aufgaben (vergleiche einen Pfeil AL11).
  • Darauffolgend liest der CPU Kern 12 die Aufgabenadressinformation der Aufgabe Q aus dem Warteschlangenspeicher 32. Es sei angenommen, dass die Aufgabe Q die Aufgabenabhängigkeitsbeziehung mit der Aufgabe A hat, und dass der CPU-Kern 12 die Aufgabe Q nicht ausführen muss. Daher wird die Aufgabenadressinformation der Aufgabe Q in den Warteschlangenspeicher 31 gespeichert (vergleiche einen Pfeil AL2), so dass die Ausführungsreihenfolge in den auf Ausführung wartenden Aufgaben in dem CPU Kern 11 die zweite wird bzw. als zweite zur Ausführung kommt. Demgemäß speichert der Warteschlangenspeicher 31 die Aufgabenadressinformation der Aufgabe P, der Aufgabe Q, der Aufgabe B, der Aufgabe C und der Aufgabe D in der Reihenfolge einer frühen Ausführung der auf Ausführung wartenden Aufgaben (vergleiche einen Pfeil AL12). Der Warteschlangenspeicher 32 speichert die Aufgabe R, die Aufgabe S und die Aufgabe T in der Reihenfolge einer frühen Ausführung der auf Ausführung wartenden Aufgaben (vergleiche einen Pfeil AL12).
  • Darauf folgend liest der CPU Kern 12 die Aufgabenadressinformation der Aufgabe R aus dem Warteschlangenspeicher 32. Es sei angenommen, dass die Aufgabe R die Aufgabenabhängigkeitsbeziehung mit der Aufgabe A hat, und dass der CPU-Kern 12 die Aufgabe R ausführen muss. Daher wird die Aufgabenadressinformation der Aufgabe R in den Warteschlangenspeicher 32 gespeichert (vergleiche einen Pfeil AL3), so dass die Ausführungsreihenfolge in den auf Ausführung wartenden Aufgaben in dem CPU-Kern 12 die zweite wird bzw. als zweite zur Ausführung kommt. Folglich speichert der Warteschlangenspeicher 32 die Aufgabe S, die Aufgabe R und die Aufgabe T in der Reihenfolge einer frühen Ausführung der auf Ausführung wartenden Aufgaben (vergleiche einen Pfeil AL13).
  • Der CPU-Kern 12 liest die Aufgabenadressinformation der Aufgabe S aus dem Warteschlangenspeicher 32. Es sei angenommen, dass die Aufgabe S die Aufgabenabhängigkeitsbeziehung mit der Aufgabe A hat, und dass der CPU-Kern 12 die Aufgabe S ausführen muss. Daher wird die Aufgabenadressinformation der Aufgabe S in den Warteschlangenspeicher 32 gespeichert (vergleiche einen Pfeil AL4), so dass die Ausführungsreihenfolge in den auf Ausführung wartenden Aufgaben in dem CPU-Kern 12 die dritte wird bzw. als dritte zur Ausführung kommt. Folglich speichert der Warteschlangenspeicher 32 die Aufgabe T, die Aufgabe R und die Aufgabe S in der Reihenfolge einer frühen Ausführung der auf Ausführung wartenden Aufgaben (vergleiche einen Pfeil AL13).
  • Der CPU-Kern 12 liest die Aufgabenadressinformation der Aufgabe T aus dem Warteschlangenspeicher 32. Es sei angenommen, dass die Aufgabe T keine Aufgabenabhängigkeitsbeziehung mit der Aufgabe A hat. Daher liest der CPU-Kern 12 das Aufgabenprogramm 51 der Aufgabe T aus dem Flash-ROM 13 und führt die Aufgabe T aus.
  • In Übereinstimmung mit der ECU 1 führt der CPU-Kern 11 sequenziell mehrere Aufgaben in einer Ausführungsreihenfolge (die als eine erste Ausführungsreihenfolge bezeichnet wird), die durch den Warteschlangenspeicher 31 bestimmt wird, aus (S130). Darüber hinaus führt der CPU-Kern 12 sequenziell mehrere Aufgaben in einer Ausführungsreihenfolge (die als eine zweite Ausführungsreihenfolge bezeichnet wird), die durch den Warteschlangenspeicher 32 bestimmt wird, aus (S130).
  • Die ECU 1 ändert die erste Ausführungsreihenfolge und die zweite Ausführungsreihenfolge dann, wenn eine Ausführungszeit dann, wenn der CPU-Kern 11 eine Aufgabe ausführt, mit einer Ausführungszeit dann, wenn der CPU-Kern 12 eine Aufgabe ausführt, überlappt, so dass die durch den CPU-Kern 11 ausgeführte Aufgabe keine Abhängigkeit mit der durch den CPU-Kern 12 ausgeführten Aufgabe aufweist (S10 bis S100).
  • Es kann möglich sein, dass während der CPU-Kern 11 eine Aufgabe ausführt, der CPU-Kern 12 eine Aufgabe ausführt, die parallel zu der durch den CPU-Kern 11 ausgeführten Aufgabe ausgeführt werden darf, anstelle einer Aufgabe, die nicht parallel zu der durch den CPU-Kern 11 ausgeführten Aufgabe ausgeführt werden darf. Es kann möglich sein, dass während der CPU-Kern 12 eine Aufgabe ausführt, der CPU-Kern 11 eine Aufgabe ausführt, die parallel zu der durch den CPU-Kern 12 ausgeführten Aufgabe ausgeführt werden darf, anstelle einer Aufgabe, die nicht parallel zu der durch den CPU-Kern 12 ausgeführten Aufgabe ausgeführt werden darf.
  • Daher kann es möglich sein, einen Fall zu verhindern, in dem der CPU-Kern 12 keine Aufgabe ausführt, während der CPU-Kern 11 eine Aufgabe ausführt, und einen Fall zu verhindern, in dem der CPU-Kern 11 keine Aufgabe ausführt, während der CPU-Kern 12 eine Aufgabe ausführt, und kann es möglich sein, zu verhindern, dass sich die Effizienz der Aufgabenausführung verringert.
  • Der CPU-Kern 11 ermittelt, ob eine primäre Aufgabe in der ersten Ausführungsreihenfolge die Aufgabenabhängigkeitsbeziehung mit bzw. zu einer Aufgabe aufweist, die der CPU-Kern 12 ausführt (S30). Wenn der CPU-Kern 11 ermittelt, dass die Aufgabenabhängigkeitsbeziehung vorliegt (S30: JA), ändert der CPU-Kern 11 die erste Ausführungsreihenfolge so, dass die Ausführungsreihenfolge der Aufgabe, die einem Bestimmungsobjekt entspricht, später liegt als erste (S90). Der CPU-Kern 12 ermittelt, ob eine primäre Aufgabe in der zweiten Ausführungsreihenfolge die Aufgabenabhängigkeitsbeziehung mit einer Aufgabe aufweist, die der CPU-Kern 11 ausführt (S30). Wenn der CPU-Kern 12 ermittelt, dass die Aufgabenabhängigkeitsbeziehung vorliegt (S30: JA), ändert der CPU-Kern 12 die zweite Ausführungsreihenfolge so, dass eine Ausführungsreihenfolge der Aufgabe, die einem Bestimmungsobjekt entspricht, später liegt als die erste (S90).
  • Nebenbei bemerkt entspricht die primäre Aufgabe in jeder der ersten Ausführungsreihenfolge und der zweiten Ausführungsreihenfolge einer Aufgabe, die in jeder der Reihenfolgen an der ersten Stelle platziert ist.
  • Es kann möglich sein, dass die ECU 1 den CPU-Kern 11 veranlasst, eine Aufgabe auszuführen, die die Aufgabenabhängigkeitsbeziehung mit einer Aufgabe aufweist, die der CPU-Kern 12 ausgeführt hat, nach dem der CPU-Kern 12 eine Ausführung der Aufgabe beendet. Es kann möglich sein, dass die ECU 1 den CPU-Kern 12 veranlasst, eine Aufgabe auszuführen, die die Aufgabenabhängigkeitsbeziehung mit einer Aufgabe aufweist, die der CPU-Kern 11 ausgeführt hat, nach dem der CPU-Kern 11 eine Ausführung der Aufgabe beendet.
  • Zum Beispiel sei wie in 4 gezeigt angenommen, dass der CPU-Kern 11 eine Aufgabe A ausführt, und der CPU-Kern 12 damit beginnt, eine neue Aufgabe auszuführen. Zu diesem Zeitpunkt führt der CPU-Kern 12 eine Aufgabe G aus, die die Aufgabenabhängigkeitsbeziehung mit der Aufgabe A nicht aufweist, anstelle einer Aufgabe F, die die Aufgabenabhängigkeitsbeziehung mit der Aufgabe A aufweist. Der CPU-Kern 12 führt die Aufgabe F aus, nachdem die Aufgabe A und die Aufgabe G abgeschlossen sind.
  • Der CPU-Kern 11 ermittelt, ob eine primäre Aufgabe in der ersten Ausführungsreihenfolge die Aufgabenabhängigkeitsbeziehung mit einer Aufgabe aufweist, die der CPU-Kern 12 ausführt (S30). Wenn der CPU-Kern 11 ermittelt, dass die Aufgabenabhängigkeitsbeziehung vorliegt (S30: JA), ändert der CPU-Kern 11 die erste Ausführungsreihenfolge und die zweite Ausführungsreihenfolge so, dass der CPU-Kern 12 die Aufgabe entsprechend einem Bestimmungsobjekt ausführt (S70). Der CPU-Kern 12 ermittelt, ob eine primäre Aufgabe in der zweiten Ausführungsreihenfolge die Aufgabenabhängigkeitsbeziehung mit einer Aufgabe aufweist, die der CPU-Kern 11 ausführt (S30). Wenn der CPU-Kern 12 ermittelt, dass die Aufgabenabhängigkeitsbeziehung vorliegt (S30: JA), ändert der CPU-Kern 12 die erste Ausführungsreihenfolge und die zweite Ausführungsreihenfolge so, dass der CPU-Kern 11 die einem Bestimmungsobjekt entsprechende Aufgabe ausführt (S70).
  • Es kann möglich sein, dass die ECU 1 den CPU-Kern 12 veranlasst, eine Aufgabe auszuführen, die die Aufgabenabhängigkeitsbeziehung mit einer Aufgabe aufweist, die der CPU-Kern 12 ausgeführt hat, nach dem der CPU-Kern 12 eine Ausführung der Aufgabe beendet. Es kann möglich sein, dass die ECU 1 den CPU-Kern 12 veranlasst, eine Aufgabe auszuführen, die die Aufgabenabhängigkeitsbeziehung mit einer Aufgabe aufweist, die der CPU-Kern 11 ausgeführt hat, nach dem der CPU-Kern 11 eine Ausführung der Aufgabe beendet.
  • Zum Beispiel sei wie in 5 gezeigt angenommen, dass der CPU-Kern 11 eine Aufgabe A ausführt, und der CPU-Kern 12 damit beginnt, eine neue Aufgabe auszuführen. Zu diesem Zeitpunkt führt der CPU-Kern 12 eine Aufgabe G aus, die die Aufgabenabhängigkeitsbeziehung mit der Aufgabe A nicht aufweist, anstelle einer Aufgabe F, die die Aufgabenabhängigkeitsbeziehung mit der Aufgabe A aufweist. Nachdem die Aufgabe A abgeschlossen ist, führt der CPU-Kern 11 die Aufgabe F aus.
  • Wenn der CPU-Kern 11 ermittelt, dass eine primäre Aufgabe in der ersten Ausführungsreihenfolge die Aufgabenabhängigkeitsbeziehung mit einer Aufgabe aufweist, die der CPU-Kern 12 ausführt (S30: JA), ermittelt der CPU-Kern 11, ob der CPU-Kern 12 die dem Bestimmungsobjekt entsprechende Aufgabe nicht ausführen darf (S50). Wenn der CPU-Kern 11 ermittelt, dass der CPU-Kern 12 die Aufgabe nicht ausführen darf (S50: JA), ändert der CPU-Kern 11 die erste Ausführungsreihenfolge so, dass die Ausführungsreihenfolge der dem Bestimmungsobjekt entsprechenden Aufgabe später liegt als erste (S90). Wenn der CPU-Kern 11 ermittelt, dass der CPU-Kern 12 nicht daran gehindert ist, die Aufgabe auszuführen (S50: NEIN), ändert der CPU-Kern 11 die erste Ausführungsreihenfolge und die zweite Ausführungsreihenfolge so, dass der CPU-Kern 12 die dem Bestimmungsobjekt entsprechende Aufgabe ausführt (S70).
  • Wenn der CPU-Kern 12 ermittelt, dass eine primäre Aufgabe in der zweiten Ausführungsreihenfolge die Aufgabenabhängigkeitsbeziehung mit einer Aufgabe aufweist, die der CPU-Kern 11 ausführt (S30: JA), ermittelt der CPU-Kern 12, ob der CPU-Kern 12 die dem Bestimmungsobjekt entsprechende Aufgabe nicht ausführen darf (S50). Wenn der CPU-Kern 12 ermittelt, dass der CPU-Kern 11 die Aufgabe nicht ausführen darf (S50: JA), ändert der CPU-Kern 12 die zweite Ausführungsreihenfolge so, dass die Ausführungsreihenfolge der dem Bestimmungsobjekt entsprechenden Aufgabe später liegt als erste (S90). Wenn der CPU-Kern 12 ermittelt, dass der CPU-Kern 11 nicht daran gehindert ist, die Aufgabe auszuführen (S50: NEIN), ändert der CPU-Kern 12 die erste Ausführungsreihenfolge und die zweite Ausführungsreihenfolge so, dass der CPU-Kern 11 die dem Bestimmungsobjekt entsprechende Aufgabe ausführt (S70).
  • Demgemäß kann es möglich sein, dass die ECU 1 den CPU-Kern 11 veranlasst, sicher eine Aufgabe auszuführen, welche der CPU-Kern 12 nicht ausführen darf. Es kann möglich sein, dass die ECU 1 den CPU-Kern 12 veranlasst, sicher eine Aufgabe auszuführen, welche der CPU-Kern 11 nicht ausführen darf.
  • Mehrere Aufgaben, die nicht wechselseitig die Aufgabenabhängigkeitsbeziehung aufweisen, haben unterschiedliche Aufgabenabhängigkeitsbeziehungsidentifikationsnummern 52. Die ECU 1 vergleicht die Aufgabenabhängigkeitsbeziehungsidentifikationsnummer 52, die für eine durch den CPU-Kern 11 ausgeführte Aufgabe festgelegt ist, mit der Aufgabenabhängigkeitsbeziehungsidentifikationsnummer 52, die für eine durch den CPU-Kern 12 ausgeführte Aufgabe festgelegt ist, so dass die ECU 1 ermittelt, ob die Aufgabenabhängigkeitsbeziehung vorliegt.
  • Demgemäß kann es möglich sein, dass die ECU 1 in einer einfachen Art und Weise dadurch, ob die Aufgabenabhängigkeitsbeziehungsidentifikationsnummern 52 identisch zueinander sind, ermittelt, ob die Aufgabenabhängigkeitsbeziehung vorliegt.
  • In dem vorliegenden Ausführungsbeispiel entspricht eine Verarbeitung in Schritt S130 durch den CPU-Kern 11 einer ersten Aufgabenausführungseinrichtung, entspricht eine Verarbeitung in Schritt S130 durch den CPU-Kern 12 einer zweiten Aufgabenausführungseinrichtung, und entspricht eine Verarbeitung in den Schritten S10 bis S100 durch die CPU-Kerne 11, 12 einer Ausführungsreihenfolgeänderungseinrichtung.
  • Eine Verarbeitung in Schritt S30 durch den CPU-Kern 11 entspricht einer ersten Beziehungsermittlungseinrichtung, eine Verarbeitung in Schritt S90 durch den CPU-Kern 11 entspricht einer ersten Änderungseinrichtung, eine Verarbeitung in Schritt S30 durch den CPU-Kern 12 entspricht einer zweiten Beziehungsermittlungseinrichtung, eine Verarbeitung in Schritt S90 durch den CPU-Kern 12 entspricht einer zweiten Änderungseinrichtung, eine Verarbeitung in Schritt S70 durch den CPU-Kern 11 entspricht einer dritten Änderungseinrichtung, und eine Verarbeitung in Schritt S70 durch den CPU-Kern 12 entspricht einer vierten Änderungseinrichtung.
  • Eine Verarbeitung in Schritt S50 durch den CPU-Kern 11 entspricht einer ersten Verhinderungsbestimmungseinrichtung, eine Verarbeitung in Schritt S90 durch den CPU-Kern 11 entspricht einer ersten Ausführungsreihenfolgeänderungseinrichtung, eine Verarbeitung in Schritt S70 durch den CPU-Kern 11 entspricht einer zweiten Ausführungsreihenfolgeänderungseinrichtung, eine Verarbeitung in Schritt S50 durch den CPU-Kern 12 entspricht einer zweiten Verhinderungsbestimmungseinrichtung, eine Verarbeitung in Schritt S90 durch den CPU-Kern 12 entspricht einer dritten Ausführungsreihenfolgeänderungseinrichtung, und eine Verarbeitung in Schritt S70 durch den CPU-Kern 12 entspricht einer vierten Ausführungsreihenfolgeänderungseinrichtung.
  • In dem vorliegenden Ausführungsbeispiel beinhaltet der Mikrocomputer zwei CPU-Kerne als Beispiel. Der Mikrocomputer kann drei oder mehr CPU-Kerne beinhalten.
  • Der Mikrocomputer in dem vorliegenden Ausführungsbeispiel beinhaltet mehrere CPU-Kerne. Der Mikrocomputer kann jedoch einen CPU-Kern beinhalten, und kann unter Verwendung einer Ressource des einen CPU-Kerns in zeitlicher Aufteilung als mehrere CPU-Kerne arbeiten, die virtuell existieren.
  • Während die Erfindung unter Bezugnahme auf bevorzugte Ausführungsbeispiele derselben beschrieben wurde, versteht sich, dass die Offenbarung nicht auf die bevorzugten Ausführungsbeispiele und Anordnungen beschränkt ist. Die Offenbarung zielt darauf ab, verschiedene Modifikationen und äquivalente Anordnungen abzudecken. Während verschiedene Kombinationen und Konfigurationen bevorzugt sind, liegen darüber hinaus andere Kombinationen und Konfigurationen mit mehr, weniger oder nur einem einzelnen Element ebenfalls innerhalb des Schutzumfangs der Erfindung.
  • ZITATE ENTHALTEN IN DER BESCHREIBUNG
  • Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
  • Zitierte Patentliteratur
    • JP 2003-131893 A [0002]

Claims (5)

  1. Elektronische Steuereinheit, mit: einer ersten Aufgabenausführungseinrichtung (11, S130), die sequenziell eine Vielzahl von Aufgaben (50) in einer vorbestimmten ersten Ausführungsreihenfolge ausführt; einer zweiten Aufgabenausführungseinrichtung (12, S130), die sequenziell die Vielzahl von Aufgaben (50) in einer vorbestimmten zweiten Ausführungsreihenfolge parallel zu der ersten Aufgabenausführungseinrichtung (11, S130) ausführt; und eine Ausführungsreihenfolgeänderungseinrichtung (11, 12, S10 bis S100), die die erste Ausführungsreihenfolge und die zweite Ausführungsreihenfolge ändert, wenn einer erste Aufgabenausführungszeit mit einer zweiten Aufgabenausführungszeit überlappt und eine vorbestimmte Ausführungserlaubnisbeziehung zwischen einer ersten Aufgabe und einer zweiten Aufgabe realisiert, wobei die erste Aufgabenausführungseinrichtung (11, S130) die erste Aufgabe während der ersten Aufgabenausführungszeit ausführt, die zweite Aufgabenausführungseinrichtung (12, S130) die zweite Aufgabe während der zweiten Aufgabenausführungszeit ausführt, und es in der Ausführungserlaubnisbeziehung erlaubt ist. die erste Aufgabe und die zweite Aufgabe parallel auszuführen, wenn die erste Aufgabenausführungszeit mit der zweiten Aufgabenausführungszeit überlappt.
  2. Elektronische Steuereinheit nach Anspruch 1, bei der die Ausführungsreihenfolgeänderungseinrichtung (11, 12, S10 bis S100) beinhaltet: eine erste Beziehungsermittlungseinrichtung (11, S30), die ermittelt, ob eine primäre Aufgabe der ersten Aufgabe in der ersten Ausführungsreihenfolge die Ausführungserlaubnisbeziehung mit der zweiten Aufgabe aufweist, welche die zweite Aufgabenausführungseinrichtung (12, S130) ausführt, eine erste Änderungseinrichtung (11, S90) die erste Ausführungsreihenfolge ändert, wenn die erste Beziehungserlaubnisermittlungseinrichtung (11, S30) ermittelt, dass die Ausführungserlaubnisbeziehung nicht existiert und eine Bedingung realisiert, dass eine Ausführungsreihenfolge der ersten Aufgabe, die ein Ziel einer Ermittlung durch die erste Beziehungsermittlungseinrichtung (11, S30) ist, später wird als eine erste, eine zweite Beziehungsermittlungseinrichtung (12, S30), die ermittelt, ob eine primäre Aufgabe der zweiten Aufgabe in der zweiten Ausführungsreihenfolge die Ausführungserlaubnisbeziehung mit der ersten Aufgabe aufweist, welche die erste Aufgabenausführungseinrichtung (11, S130) ausführt, und eine zweite Änderungseinrichtung (12, S90) die zweite Ausführungsreihenfolge ändert, wenn die zweite Beziehungserlaubnisermittlungseinrichtung (12, S30) ermittelt, dass die Ausführungserlaubnisbeziehung nicht existiert und eine Bedingung realisiert, dass eine Ausführungsreihenfolge der zweiten Aufgabe, die ein Ziel einer Ermittlung durch die zweite Beziehungsermittlungseinrichtung (11, S30) ist, später wird als eine erste.
  3. Elektronische Steuereinheit nach Anspruch 1, bei der die Ausführungsreihenfolgeänderungseinrichtung (11, 12, S10 bis S100) beinhaltet: eine erste Beziehungsermittlungseinrichtung (11, S30), die ermittelt, ob eine primäre Aufgabe der ersten Aufgabe in der ersten Ausführungsreihenfolge die Ausführungserlaubnisbeziehung mit der zweiten Aufgabe aufweist, welche die zweite Aufgabenausführungseinrichtung (12, S130) ausführt, eine dritte Änderungseinrichtung (11, S70) die erste Ausführungsreihenfolge und die zweite Ausführungsreihenfolge ändert, wenn die erste Beziehungserlaubnisermittlungseinrichtung (11, S30) ermittelt, dass die Ausführungserlaubnisbeziehung nicht existiert und eine Bedingung realisiert, dass die zweite Aufgabenausführungseinrichtung (12, S130) die erste Aufgabe ausführt, die ein Ziel einer Ermittlung durch die erste Beziehungsermittlungseinrichtung (11, S30) ist, eine zweite Beziehungsermittlungseinrichtung (12, S30), die ermittelt, ob eine primäre Aufgabe der zweiten Aufgabe in der zweiten Ausführungsreihenfolge die Ausführungserlaubnisbeziehung mit der ersten Aufgabe aufweist, welche die erste Aufgabenausführungseinrichtung (11, S130) ausführt, und eine vierte Änderungseinrichtung (12, S70) die erste Ausführungsreihenfolge und die zweite Ausführungsreihenfolge ändert, wenn die zweite Beziehungserlaubnisermittlungseinrichtung (12, S30) ermittelt, dass die Ausführungserlaubnisbeziehung nicht existiert und eine Bedingung realisiert, dass die erste Aufgabenausführungseinrichtung (11, S130) die zweite Aufgabe ausführt, die ein Ziel einer Ermittlung durch die zweite Beziehungsermittlungseinrichtung (11, S30) ist.
  4. Elektronische Steuereinheit nach Anspruch 1, bei der die Ausführungsreihenfolgeänderungseinrichtung (11, 12, S10 bis S100) beinhaltet: eine erste Beziehungsermittlungseinrichtung (11, S30), die ermittelt, ob eine primäre Aufgabe der ersten Aufgabe in der ersten Ausführungsreihenfolge die Ausführungserlaubnisbeziehung mit der zweiten Aufgabe aufweist, welche die zweite Aufgabenausführungseinrichtung (12, S130) ausführt, eine erste Verbietungsermittlungseinrichtung (11, S50), die ermittelt, ob die zweite Aufgabenausführungseinrichtung daran gehindert ist, die erste Aufgabe auszuführen, die ein Ziel einer Ermittlung durch die erste Beziehungsermittlungseinrichtung (11, S30) ist, wenn die erste Beziehungsermittlungseinrichtung (11, S30) ermittelt, dass die Ausführungserlaubnisbeziehung nicht existiert, eine erste Ausführungsreihenfolgeänderungseinrichtung (11, S90), die die erste Ausführungsreihenfolge ändert, wenn die erste Verbietungsermittlungseinrichtung ermittelt, dass die zweite Aufgabenausführungseinrichtung (12, S130) daran gehindert ist, die erste Aufgabe auszuführen, die das Ziel einer Ermittlung durch die erste Beziehungsermittlungseinrichtung (11, S30) ist und eine Bedingung realisiert, dass eine Ausführungsreihenfolge der ersten Aufgabe, die das Ziel einer Ermittlung durch die erste Beziehungsermittlungseinrichtung (11, S30) ist, später wird als eine erste, eine zweite Ausführungsreihenfolgeänderungseinrichtung (11, S870), die die erste Ausführungsreihenfolge und die zweite Ausführungsreihenfolge ändert, wenn die erste Verbietungsermittlungseinrichtung (11, S50) ermittelt, dass es der zweiten Aufgabenausführungseinrichtung (12, S130) erlaubt ist, die erste Aufgabe auszuführen, die das Ziel einer Ermittlung durch die erste Beziehungsermittlungseinrichtung (11, S30) ist und eine Bedingung realisiert, dass die zweite Aufgabenausführungseinrichtung (12, S30) die erste Aufgabe, die das Ziel einer Ermittlung durch die erste Beziehungsermittlungseinrichtung (11, S30) ist, ausführt, eine zweite Beziehungsermittlungseinrichtung (12, S30), die ermittelt, ob eine primäre Aufgabe der zweiten Aufgabe in der ersten Ausführungsreihenfolge die Ausführungserlaubnisbeziehung mit der ersten Aufgabe aufweist, welche die erste Aufgabenausführungseinrichtung (12, S130) ausführt, eine zweite Verbietungsermittlungseinrichtung (12, S50), die ermittelt, ob die erste Aufgabenausführungseinrichtung daran gehindert ist, die zweite Aufgabe auszuführen, die ein Ziel einer Ermittlung durch die zweite Beziehungsermittlungseinrichtung (12, S30) ist, wenn die zweite Beziehungsermittlungseinrichtung (12, S30) ermittelt, dass die Ausführungserlaubnisbeziehung nicht existiert, eine dritte Ausführungsreihenfolgeänderungseinrichtung (12, S90), die die zweite Ausführungsreihenfolge ändert, wenn die zweite Verbietungsermittlungseinrichtung (12, S50) ermittelt, dass die erste Aufgabenausführungseinrichtung (12, S130) daran gehindert ist, die zweite Aufgabe auszuführen, die das Ziel einer Ermittlung durch die zweite Beziehungsermittlungseinrichtung (12, S30) ist und eine Bedingung realisiert, dass eine Ausführungsreihenfolge der zweiten Aufgabe, die das Ziel einer Ermittlung durch die zweite Beziehungsermittlungseinrichtung (12, S30) ist, später wird als die erste, und eine vierte Ausführungsreihenfolgeänderungseinrichtung (12, S70), die die erste Ausführungsreihenfolge und die zweite Ausführungsreihenfolge ändert, wenn die zweite Verbietungsermittlungseinrichtung (12, S50) ermittelt, dass es der ersten Aufgabenausführungseinrichtung (11, S130) erlaubt ist, die zweite Aufgabe auszuführen, die das Ziel einer Ermittlung durch die zweite Beziehungsermittlungseinrichtung (12, S30) ist und eine Bedingung realisiert, dass die erste Aufgabenausführungseinrichtung (11, S130) die zweite Aufgabe, die das Ziel einer Ermittlung durch die zweite Beziehungsermittlungseinrichtung (12, S30) ist, ausführt.
  5. Elektronische Steuereinheit nach einem der Ansprüche 1 bis 4, bei der die erste Aufgabe und die zweite Aufgabe unterschiedliche Erlaubnisbeziehungsidentifikationsinformation aufweisen, wenn die erste Aufgabe die Ausführungserlaubnisbeziehung mit der zweiten Aufgabe aufweist, die Ausführungsreihenfolgeänderungseinrichtung (11, 12, S10 bis S100) die Erlaubnisbeziehungsidentifikationsinformation der ersten Aufgabe mit der Erlaubnisbeziehungsidentifikationsinformation der zweiten Aufgabe vergleicht, und die Ausführungsreihenfolgeänderungseinrichtung (11, 12, S10 bis S100) ermittelt, ob die erste Aufgabe die Ausführungserlaubnisbeziehung mit der zweiten Aufgabe aufweist.
DE102015203695.2A 2014-03-07 2015-03-02 Elektronische steuereinheit Pending DE102015203695A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2014-045155 2014-03-07
JP2014045155A JP6252259B2 (ja) 2014-03-07 2014-03-07 電子制御装置

Publications (1)

Publication Number Publication Date
DE102015203695A1 true DE102015203695A1 (de) 2015-09-10

Family

ID=53884180

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102015203695.2A Pending DE102015203695A1 (de) 2014-03-07 2015-03-02 Elektronische steuereinheit

Country Status (2)

Country Link
JP (1) JP6252259B2 (de)
DE (1) DE102015203695A1 (de)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020080119A (ja) * 2018-11-14 2020-05-28 日本電信電話株式会社 処理要求管理装置、処理要求管理方法及びプログラム

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003131893A (ja) 2001-10-23 2003-05-09 Sony Corp 演算処理システム、コンピュータ・システム上でのタスク制御方法、並びに記憶媒体

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1185543A (ja) * 1997-08-30 1999-03-30 Nec Corp 排他制御方法及びプログラムを記録した機械読み取り可能な記録媒体
JP4039145B2 (ja) * 2002-07-03 2008-01-30 日本電気株式会社 マルチプロセッサシステム及びそれに用いる負荷分散制御方法並びにそのプログラム
JP5347451B2 (ja) * 2008-11-26 2013-11-20 富士通株式会社 マルチプロセッサシステム、競合回避プログラム及び競合回避方法
JP2011161830A (ja) * 2010-02-10 2011-08-25 Bridgestone Corp タイヤ製造用ブラダーの製造方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003131893A (ja) 2001-10-23 2003-05-09 Sony Corp 演算処理システム、コンピュータ・システム上でのタスク制御方法、並びに記憶媒体

Also Published As

Publication number Publication date
JP6252259B2 (ja) 2017-12-27
JP2015170180A (ja) 2015-09-28

Similar Documents

Publication Publication Date Title
DE69023499T2 (de) Rechner mit erweitertem virtuellem Speicher.
DE102010043569A1 (de) Verfahren und Vorrichtung zum Planen von Aufgaben zur Steuerung von Hardwareeinrichtungen
DE102016014152A1 (de) Numerische Steuervorrichtung
DE112019005584T5 (de) Arithmetiksteuervorrichtung
DE102017210126A1 (de) Parallelisierungsverfahren, Parallelisierungswerkzeug und fahrzeuginterne Vorrichtung
DE102012209789B4 (de) Fahrzeuggebundene elektrische steuervorrichtung
DE102007051803A1 (de) Verfahren und Vorrichtung zur Datenverarbeitung
DE102016219403A1 (de) Parallelisierungsverarbeitung, parallelisierungswerkzeug und fahrzeuggebundene vorrichtung
DE102018114322A1 (de) Architektur und Dienste zur Unterstützung der rekonfigurierbaren Synchronisation in einem Multiprozessorsystem
DE102016221526A1 (de) Vorrichtung und Verfahren zum Bearbeiten einer Mehrzahl Aufgaben
DE102016204970A1 (de) Parallelisierungskompilierverfahren, Parallelisierungskomplierer und Fahrzeugvorrichtung
DE102015203695A1 (de) Elektronische steuereinheit
DE102016219449A1 (de) Parallelisierungsverfahren, Parallelisierungswerkzeug und fahrzeugverbaute Einrichtung
DE102017130552B3 (de) Verfahren zur Datenverarbeitung und speicherprogrammierbare Steuerung
DE102019217427A1 (de) Steuern und/oder Überwachen einer Maschinenanordnung
DE102016224206A1 (de) Fahrzeugsteuervorrichtung
DE102004059972A1 (de) Thread-Scheduling-Verfahren, und Einrichtung zur Verwendung bei einem Thread-Scheduling-Verfahren
EP3705993B1 (de) System und verfahren zum auffinden und identifizieren von rechenknoten in einem netzwerk
DE102016206490A1 (de) Elektronische steuereinheit
DE112018003505T5 (de) Zugriffssteuereinrichtung
DE102015218589A1 (de) Verfahren und Vorrichtung zum Betreiben eines Many-Core-System
DE102014215561A1 (de) Mikrocomputer
DE102013204045B4 (de) Mikrocomputer
DE102020105613A1 (de) Echtzeit-steuersystem für ein fahrzeug und verfahren zur ausführung der steuerung des fahrzeugs über das echtzeit-steuerungssystem
DE102018123563B4 (de) Verfahren zur Zwischenkernkommunikation in einem Mehrkernprozessor

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R084 Declaration of willingness to licence