DE4011745C2 - - Google Patents

Info

Publication number
DE4011745C2
DE4011745C2 DE4011745A DE4011745A DE4011745C2 DE 4011745 C2 DE4011745 C2 DE 4011745C2 DE 4011745 A DE4011745 A DE 4011745A DE 4011745 A DE4011745 A DE 4011745A DE 4011745 C2 DE4011745 C2 DE 4011745C2
Authority
DE
Germany
Prior art keywords
task
information
interrupt
change
tracking
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
DE4011745A
Other languages
English (en)
Other versions
DE4011745A1 (de
Inventor
Ikuyoshi Kobe Hyogo Jp Hiroshima
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric 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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Publication of DE4011745A1 publication Critical patent/DE4011745A1/de
Application granted granted Critical
Publication of DE4011745C2 publication Critical patent/DE4011745C2/de
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/362Software debugging
    • G06F11/3636Software debugging by tracing the execution of the program

Landscapes

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

Description

Die Erfindung betrifft ein Verfahren zur Taskverfolgung bei einer durch ein Betriebssystem gesteuerten Datenver­ arbeitungsanlage für Multitaskingbetrieb gemäß dem Oberbegriff des Patentanspruches 1.
Fig. 1 ist ein grundsätzliches Blockdiagramm eines Multi­ tasking-Betriebssystems von der Art, wie es in "Analyzing Multitask" (2. Ausgabe, CQ Publications Inc., Tokyo, 1988, S. 18) von S. Sasaki beschrieben ist. In der Figur ist mit 1 jeweils ein Anwendungstask bezeichnet; 2 ist ein Supervisor, der die Anwendungstasks verwaltet und steuert; 3 ist ein Speicherverwaltungsteil, der Ein-Ausgabedaten der Anwendungstasks 1 verwaltet; 4 ist ein Datenverwaltungsteil, der Ein-Ausgabedaten der Anwendungstasks verwaltet; 5 ist ein Prozeßverwaltungsteil, der Multitasking-Operationen verwaltet; und 6 ist ein Ein-Ausgabeverwaltungsteil, der vorgesehene Ein-Ausgabevorrichtungen verwaltet und steuert. Die Teile 1-6 bilden gemeinsam ein als Kern 7 bezeichnetes Betriebssystem.
Fig. 2 ist ein Blockdiagramm einer bekannten Prozeßverwal­ tungsroutine, die in "Analyzing-Multitask" (S. 48) gezeigt ist und einen Teil des dort beschriebenen Betriebssystem bildet. Dabei ist 2 ein Supervisor, der von außen angefor­ derte Unterbrechungen und von Programmen ausgegebene Sy­ stemaufrufe überwacht; 5 ist eine Routine, die den Prozeß verwaltet; 11 ist eine Synchronisationssteuereinheit zur Sychronisation mit Ein-Ausgabevorrichtungen; 12 ist ein Prozeß-Prioritätssteuerteil, der eine Taskwarteschlange entsprechend den Prioritäten der betroffenen Tasks erzeugt; 13 ist eine Prozeßliste, die die Tasks in der Warteschlange enthält; und 14 ist ein Prozeßverteiler, der den Task mit der höchsten Priorität in der Warteschlange der CPU zu­ weist. Fig. 3 zeigt eine Hardwareauslegung, die die vorge­ nannte Einrichtung umfaßt.
Es folgt nunmehr eine Beschreibung der Art und Weise, wie ein Taskwechsel stattfindet. Es gibt drei Gründe für den Taskwechsel: eine extern erzeugte Unterbrechung, eine Ein- Ausgabesynchronisations-Unterbrechung und einen Systemauf­ ruf. Extern erzeugte Unterbrechungen umfassen solche von außerhalb des Systems und solche von außerhalb der CPU, wie etwa eine Überwachungstaktgeber-Unterbrechung. Ein-Ausgabe­ synchronisations-Unterbrechungen werden erzeugt, um die CPU mit peripheren Einrichtungen, die andere Betriebsgeschwin­ digkeiten haben, zu synchronisieren, z. B. mit Disketten­ laufwerken, Druckern, Magnetbandeinheiten und Festplatten­ laufwerken. Jeder dieser drei Gründe kann beim Auftreten einen Taskwechsel auslösen.
Die Fig. 4(a) bis 4(c) zeigen Beispiele der drei Arten von Taskwechsel, die aus einem dieser Gründe erfolgen. Fig. 4(a) zeigt ein Beispiel für das Auftreten eines Taskwech­ sels im Fall einer extern erzeugten Unterbrechung. Die Unterbrechung tritt auf, während der Task A ausgeführt wird. Dadurch wird Task B, der sich bisher im Wartezustand befand, in einen Bereitschaftszustand gebracht. Nunmehr befinden sich beide Tasks A und B im Bereitsschaftszustand. Wenn Task B die höhere Priorität als Task A hat, wird der CPU Task B zugewiesen. Fig. 4(b) zeigt ein Beispiel einer Ein-Ausgabesynchronisations-Unterbrechung, die zu einem Taskwechsel führt. Task B fordert während seiner Ausführung eine periphere Vorrichtung auf, einen bestimmten Prozeß auszuführen. Dann tritt Task B in einen Wartezustand und verbleibt dort, bis die Vorrichtung ihren Prozeß beendet hat. Während sich Task B im Wartezustand befindet, wird der CPU Task A zugewiesen, der sich im Bereitschaftszustand befand, jedoch wegen seiner gegenüber Task B niedrigeren Priorität inaktiv war. Wenn die periphere Vorrichtung ihren Prozeß beendet hat, erfolgt eine Ein-Ausgabesynchronisa­ tions-Unterbrechung. Dadurch ändert Task B seinen Wartezu­ stand in einen Bereitschaftszustand. Somit erfolgt ein Taskwechsel von Task A zu Task B. Fig. 4(c) zeigt ein Bei­ spiel für die Auslösung eines Taskwechsels durch einen Systemaufruf. Task A wird ausgeführt, während sich Task B im Wartezustand befindet. Dann liefert Task A einen System­ aufruf, durch den Task B seinen Wartezustand in einen Be­ reitschaftszustand ändert. Wenn die Priorität von Task B höher als diejenige von Task A ist, erfolgt ein Taskwechsel von Task A zu Task B.
Unter Bezugnahme auf Fig. 5 werden die Operationen be­ schrieben, die ausgeführt werden, wenn eine Ein-Ausgabe­ synchronisations-Unterbrechung einen Taskwechsel bewirkt. In Schritt ST 1 tritt eine Ein-Ausgabeunterbrechung auf. In Schritt ST 2 wird das Auftreten der Unterbrechung über den Synchronisationssteuerteil 11 dem Supervisor 2 und dem Prozeß-Prioritätssteuerteil 12 gemeldet. In Schritt ST 3 bringt der Prozeß-Prioritätssteuerteil 12 einen Task in den Bereitschaftszustand, der auf die Ein-Ausgabeverarbeitung gewartet hat, und trägt den Task in die Prozeßliste 13 ein. In Schritt ST 4 meldet der Supervisor 2 dem Prozeßwechsler 14 den Vorgang, so daß der Wechsel zum neuen Task erfolgen kann. In Schritt ST 5 entnimmt der Prozeßwechsler 14 aus der Prozeßliste 13 die Information über den Task, zu dem ge­ wechselt werden soll. In Schritt ST 6 wird die Information in Register oder dergleichen der CPU gesetzt. Nachdem die Information bezüglich des neuen Tasks auf diese Weise auf­ gebaut worden ist, erfolgt der Taskwechsel.
Unter Bezugsnahme auf Fig. 6 werden die Operationen be­ schrieben, die ausgeführt werden, wenn von einem System­ aufruf oder von einer Unterbrechung ein Taskwechsel aus­ gelöst wird. In Schritt ST 11 tritt ein Systemaufruf oder eine Unterbrechung auf, die einen Taskwechsel erforderlich macht. In Schritt ST 12 wird dem Supervisor 2 dieses Auf­ treten gemeldet. In Schritt ST 13 informiert der Supervisor 2 den Prozeßwechsler 14 über einen Taskwechsel. In Schritt ST 14 entnimmt der Prozeßwechsler 14 aus der Prozeßliste 13 die Information über den zu wechselnden Task. In Schritt ST 15 wird die Information in Register oder dergleichen der CPU gesetzt. Dann erfolgt der Taskwechsel.
Wenn es notwendig ist, Multitasking-Software zu entwickeln, die eine wiederholte Ausführung der oben beschriebenen Taskwechsel während des Betriebs verlangt, gibt es Fälle, in denen zur Überwachung des Protokolls solcher Taskwechsel eine Taskverfolgungseinrichtung verwendet wird. Nachstehend folgt eine Beschreibung der Durchführung einer Taskverfol­ gung. Der Prozeßwechsler in der Prozeßverwaltungsroutine zeichnet Taskwechsel zum Zweck der Taskverfolgung auf. Diese Aufzeichnungen bilden Informationen, die nur vom Prozeßwechsler gesammelt werden. Die Informationen enthal­ ten nur Taskwechsel von einem Task zu einem anderen. Unter Bezugsnahme auf Fig. 7 erfolgt eine Taskverfolgung bei einer bekannten Einrichtung wie folgt: In Schritt ST 21 wird die Taskverfolgung mit einer Bedienerschnittstelle, etwa einer Kathodenstrahlröhre, ausgelöst. In Schritt ST 22 wird der Prozeßwechsler von der Aktivierung der Taskverfolgung in­ formiert. Beim Taskwechsel sammelt der Prozeßwechsler in Schritt ST 23 Informationen über den Taskwechsel von welchem Task zu welchem Task. In Schritt ST 24 wird die gesammelte Information konsekutiv in einen Verfolgungspuffer gesetzt. In Schritt ST 25 verlegt die Bedienerschnittstellenvorrich­ tung, daß der Inhalt des Verfolgerpuffers an eine geeig­ nete Ausgabevorrichtung (Kathodenstrahlrähre etc.) ausge­ geben wird. In Schritt ST 26 wird der Inhalt ders Verfol­ gungspuffers auf dem Bildschirm angezeigt. Bei der Soft­ ware-Entwicklung prüft der verantwortliche Software-De­ signer auf der Basis der in dieser Weise ausgegebenen In­ formationen, ob die Taskwechsel wie vorgegeben ausgeführt werden.
Die Arbeitsweise der typischen bekannten Taskverfolgungs­ einrichtung wurde vorstehend beschrieben. Es ist ersicht­ lich, daß das Protokoll der Taskausführung, d. h. das Pro­ tokoll von Taskwechseln von einem Task zu einem anderen, als Verfolgungsinformation gesammelt wird. Ein bei der be­ kannten Einrichtung bestehendes Problem liegt darin, daß es bisher nicht möglich ist zu erfahren, welcher Task die gerade laufende Taskausführung gestoppt hat, aus welchem Grund dies geschieht, welcher Task die Ausführung wieder aufgenommen hat und warum. Da diese Faktoren nicht bekannt sind, dauert es viele Stunden, um den Grund für einen uner­ warteten Taskwechsel herauszufinden. Die Entwicklung von Multitasking-Systemen benötigt daher außerordentlich viel Zeit.
Aus Zilker, M. "Praxis des Multitasking", Franzis-Verlag GmbH, 1987, ist es bekannt, durch Aufzeichnen von Registerzuständen und nachfolgendes Auslesen der Register den Grund für einen Interrupt innerhalb eines Programmzyklus zu ermitteln. Hierfür ist ein zusätzlicher Interrupt-Handler erforderlich, der über eine große Anzahl von Eingängen entsprechend der Anzahl mögli­ cher Interrupts verfügen muß. Eine Fehleranalyse bezüglich möglicher Interruptursachen ist hierbei nicht realisierbar, da auf die Registerinhalte extern nicht ohne weiteres zugegriffen werden kann.
Auch ist es bekannt, bei der Programmierung von Multitasksystemen maschinennahe Grundprogramme als Teil des Entwicklungssystems mit zu nutzen.
Insbesondere bei der Echtzeitsimulation des zu testenden Programms ist es mittels eines Monitorunterprogramms möglich, existierende Tasks mit Status und Zeitzyklusangaben zu erken­ nen und gegebenenfalls anzuzeigen.
Jedoch kann hierbei nicht erkannt werden, welches konkrete Ergebnis einen Taskwechsel initiiert hat und warum der Taskwechsel erfolgte.
Die Untersuchung dieser Umstände erfordert daher einen hohen Zeitaufwand, so daß es schwierig ist, Programmabläufe ausrei­ chend zu testen und Fehlerursachen zu ermitteln.
Aufgabe der Erfindung ist die Bereitstellung eines Verfahrens zur Taskverfolgung bei einer durch ein Betriebssystem gesteuerten Datenverarbeitungsanlage für Multitaskingbetrieb, wobei insbesondere beim Software-Design ein effektives Prüfen und Testen dadurch ermöglicht werden soll, daß erkennbar wird, welches Ereignis den Taskwechsel herbeigeführt hat.
Diese Aufgabe wird durch die kennzeichnenden Merkmale des Patentanspruches 1 gelöst, wobei eine bevorzugte Weiter­ entwicklung des erfindungsgemäßen Verfahrens in Anspruch 2 beschrieben ist.
Dementsprechend ist zur Durchführung des erfindungsgemäßen Verfahrens ein die Taskausführung steuerndes Betriebssystem vorgesehen, wobei jeder Task mit einer Tabelle zur Speicherung von Unterbrechnungs- und Systemaufruf-Informationen versehen ist. Die Unterbrechungsinformationen umfassen die Gründe für die einen Taskwechsel auslösenden Unterbrechungen. Die Systemaufruf-Informationen umfassen Systemaufrufnummern, die bei der Ausgabe von Systemaufrufen zugeteilt werden. Wenn eine Unterbrechung auftritt oder ein Systemaufruf ausgegeben wird, wird die relevante Information in der Tabelle gespeichert. Wenn die Taskverfolgung gestartet wird, um das Protokoll der Taskausführung aufzuzeichnen, werden sowohl die Unterbrechungsinformation als auch die Systemaufrufinformation zusammen mit Taskwechselinformationen ausgegeben.
Nachstehend wird die Erfindung anhand von Ausführungs­ beispielen und unter Bezugnahme auf die beiliegenden Zeichnungen näher erläutert. Die Zeichnungen zeigen in
Fig. 1 ein grundsätzliches Blockdiagramm eines Multi­ tasking-Betriebssystems, das sowohl auf be­ kannte Einrichtung als auch auf die Erfindung anwendbar ist
Fig. 2 ein Blockdiagramm einer bekannten Prozeßver­ waltungsroutine;
Fig. 3 ein Blockdiagramm von Hardware, die sowohl auf die bekannte Einrichtung als auch die Er­ findung anwendbar ist;
Fig. 4a bis 4c Diagramme, die Taskwechsel in bekannten Ein­ richtungen erläutern;
Fig. 5 ein Flußdiagramm, das den Ablauf von Task­ wechseln zeigt, die bei Auftreten einer Ein- Ausgabeunterbrechung in einer bekannten Ein­ richtung durchgeführt werden;
Fig. 6 ein Flußdiagramm, das den Verlauf von Task­ welchseln zeigt, die bei Auftreten einer Unter­ brechung oder Ausgabe eines Systemaufrufs in einer bekannten Einrichtung durchgeführt werden;
Fig. 7 ein Flußdiagramm, das den Ablauf von Task­ wechseln zeigt, die während der bekannten Taskverfolgung ausgeführt werden;
Fig. 8 ein Blockdiagramm des Ablauf der Taskver­ folgung nach dem bevorzugten Ausführungs­ beispiel;
Fig. 9 ein Flußdiagramm, das den Ablauf von Opera­ tionen des bevorzugten Ausführungsbeispiels beim Auftreten einer Unterbrechung oder bei Ausgabe eines Systemaufrufs zeigt; und
Fig. 10 ein Flußdiagramm, das den Ablauf von Opera­ tionen des bevorzugten Ausführungsbeispiels beim Auftreten eines Taskwechsels während der Taskverfolgung zeigt.
Nachstehend wird das bevorzugte Ausführungsbeispiel erläu­ tert. In Fig. 8 ist 21 ein Unterbrechungsinformationssamm­ ler, der Informationen betreffend den Grund für jede Unter­ brechung bei deren Auftreten sammelt; 22 ist ein System­ aufrufinformationssammler, der die Nummer jedes Systemauf­ rufs bei dessen Auftreten sammelt; und 23 ist ein Ein-Aus­ gabesynchronisations-Unterbrechungsinformations-Sammler, der Informationen darüber sammelt, welche Ein-Ausgabevor­ richtung eine Ein-Ausgabesynchronisations-Unterbrechung angefordert hat. Die Tabelle jedes Tasks zur Speicherung der drei Informationsarten ist in einem Speicher enthalten.
Das Flußdiagramm von Fig. 9 zeigt Operationen beim Auftre­ ten eines Taskwechsels. Dabei ist angenommen, daß der hier gezeigte Taskwechsel durch eine Unterbrechung bedingt ist. In Schritt ST 31 tritt eine Unterbrechung ein. In Schritt ST 32 wird in der Tabelle des momentan ausgeführten Tasks Unterbrechungsinformation, die zu diesem Zeitpunkt gültig ist, gespeichert. In Schritt ST 33 wird das Auftreten der Unterbrechung dem Supervisor 2 mitgeteilt. In Schritt ST 34 wird der Prozeßwechsler 14 vom Supervisor 2 über das Auf­ treten der Unterbrechung informiert und führt eine Umschal­ tung zu einem anderen Task durch. In Schritt ST 35 entnimmt der Prozeßwechsler 14 aus der Prozeßliste 13 die Informa­ tion über den zu wechselnden Task. In Schritt ST 36 wird die Information in Register oder dergleichen der CPU gesetzt. Im Fall eines Systemaufrufs oder einer Ein-Ausgabesynchro­ nisations-Unterbrechung wird relevante Information in ähn­ licher Weise gesammelt und in die Tabelle für den laufenden Task eingeschrieben.
Nachstehend wird der Betrieb während der Taskverfolgung unter Bezugnahme auf das Flußdiagramm von Fig. 10 beschrie­ ben. In Schritt ST 41 wird die Taskverfolgung mit einer Bedienerschnittstellenvorrichtung, etwa einer Kathoden­ strahlröhre, ausgelöst. In Schritt ST 42 wird dem Prozeß­ wechsler 14 die Aktivierung der Taskverfolgung mitgeteilt. In Schritt ST 43 sammelt der Prozeßwechsler 14 Informationen über die Umschaltung von welchem Task zu welchem Task. In Schritt ST 44 wird die so gesammelte Information konsekutiv in einem Verfolgungspuffer gespeichert. In Schritt ST 45 werden die Unterbrechungs- und die Systemaufrufinformatio­ nen in der Tabelle jedes Task in den Verfolgungspuffer eingeschrieben. In Schritt ST 46 verlangt die Bediener­ schnittstellenvorrichtung vom Verfolgungspuffer die Ausgabe von dessen Inhalt an eine geeignete Ausgabevorrichtung (Kathodenstrahlröhre etc.). In Schritt ST 47 wird der Inhalt des Verfolgungspuffers auf dem Bildschirm angezeigt.
Bei dem nachstehend erläuterten Ausführungsbeispiel wird die Nummer jedes Systemaufrufs als Systemaufrufinformation ge­ sammelt. Alternativ werden die gleichen Ergebnisse erzielt, wenn auf jeden Systemaufruf zutreffende Parameter, die Adresse eines Anwendungstasks, der bei Ausgabe eines Sy­ stemaufrufs abläuft, und/oder die Adresse eines Anwendungs­ tasks, der bei Erzeugung einer Unterbrechung abläuft, ge­ sammelt werden.
Wenn die Taskverfolgung initiiert wird, um ein Protokoll der Taskausführung aufzuzeichnen, werden sowohl die Unter­ brechungs- als auch die Systemaufrufinformationen zusammen mit der Taskwechselinformation ausgegeben. Diese ermöglicht nicht nur die Erstellung des Protokolls der Taskwechselaus­ führung, sondern auch des Protokolls von Unterbrechungen und Systemaufrufen, die Taskwechsel auslösen. Durch diese Information ist der Grund für einen bestimmten Task­ wechsel leicht feststellbar, so daß Software-Designer in die Lage versetzt werden, ohne Schwierigkeiten Multi­ tasking-Software zu entwickeln.

Claims (2)

1. Verfahren zur Taskverfolgung bei einer durch ein Betriebssystem gesteuerten Datenverarbeitungsanlage für Multitaskingbetrieb, bei dem im Fall eines Taskwechsels Informationen über die Tasks vor und nach dem Taskwechsel als Taskwechselinformationen in entsprechenden Speichermitteln ab­ speicherbar sind;
wobei Gründe für einen Taskwechsel entweder Unterbrechungen oder Systemaufrufe sind; und die Unterbrechungsinformationen, die Systemaufrufinformationen bzw. die Taskwechselinformationen auf entsprechenden Ausgabemitteln ausgebbar sind,
dadurch gekennzeichnet, daß Unterbrechungsinformationen über die Gründe von den Taskwechsel auslösenden Unterbrechungen bzw. eine Systemaufrufnummer umfassende Systemaufrufinformationen für jeden Task in entsprechenden Speichermitteln abspeicherbar sind.
2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß die Unterbrechungsinformation sowohl extern erzeugte Unterbrechungsinformationen als auch Ein- Ausgabesynchronisationsinformation umfassen.
DE4011745A 1989-04-13 1990-04-11 Taskverfolgungseinrichtung Granted DE4011745A1 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP1093709A JPH02271435A (ja) 1989-04-13 1989-04-13 タスクトレース装置

Publications (2)

Publication Number Publication Date
DE4011745A1 DE4011745A1 (de) 1990-10-18
DE4011745C2 true DE4011745C2 (de) 1992-07-16

Family

ID=14089945

Family Applications (1)

Application Number Title Priority Date Filing Date
DE4011745A Granted DE4011745A1 (de) 1989-04-13 1990-04-11 Taskverfolgungseinrichtung

Country Status (5)

Country Link
US (1) US5379427A (de)
JP (1) JPH02271435A (de)
KR (1) KR930000592B1 (de)
CN (1) CN1021087C (de)
DE (1) DE4011745A1 (de)

Families Citing this family (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2733149B2 (ja) * 1991-05-21 1998-03-30 三菱電機株式会社 割込みトレース方式
US5379432A (en) * 1993-07-19 1995-01-03 Taligent, Inc. Object-oriented interface for a procedural operating system
DE4332993C1 (de) * 1993-09-28 1994-11-24 Siemens Ag Tracer-System zur Fehleranalyse in laufenden Realzeitsystemen
JP2692609B2 (ja) * 1994-09-26 1997-12-17 日本電気株式会社 マルチタスクのプログラムデバッグ方法とその装置
US6226659B1 (en) * 1996-09-16 2001-05-01 Oracle Corporation Method and apparatus for processing reports
US6083281A (en) * 1997-11-14 2000-07-04 Nortel Networks Corporation Process and apparatus for tracing software entities in a distributed system
US6237073B1 (en) 1997-11-26 2001-05-22 Compaq Computer Corporation Method for providing virtual memory to physical memory page mapping in a computer operating system that randomly samples state information
US6332178B1 (en) 1997-11-26 2001-12-18 Compaq Computer Corporation Method for estimating statistics of properties of memory system transactions
US6175814B1 (en) 1997-11-26 2001-01-16 Compaq Computer Corporation Apparatus for determining the instantaneous average number of instructions processed
US6195748B1 (en) 1997-11-26 2001-02-27 Compaq Computer Corporation Apparatus for sampling instruction execution information in a processor pipeline
US6237059B1 (en) 1997-11-26 2001-05-22 Compaq Computer Corporation Method for estimating statistics of properties of memory system interactions among contexts in a computer system
US6442585B1 (en) * 1997-11-26 2002-08-27 Compaq Computer Corporation Method for scheduling contexts based on statistics of memory system interactions in a computer system
US6163840A (en) * 1997-11-26 2000-12-19 Compaq Computer Corporation Method and apparatus for sampling multiple potentially concurrent instructions in a processor pipeline
US6549930B1 (en) 1997-11-26 2003-04-15 Compaq Computer Corporation Method for scheduling threads in a multithreaded processor
US6374367B1 (en) 1997-11-26 2002-04-16 Compaq Computer Corporation Apparatus and method for monitoring a computer system to guide optimization
US6212653B1 (en) 1998-02-18 2001-04-03 Telefonaktiebolaget Lm Ericsson (Publ) Logging of events for a state driven machine
US6334159B1 (en) * 1998-12-22 2001-12-25 Unisys Corporation Method and apparatus for scheduling requests within a data processing system
US6345295B1 (en) 1999-01-22 2002-02-05 International Business Machines Corporation Conducting traces in a computer system attachment network
GB0022952D0 (en) * 2000-09-19 2000-11-01 Sgs Thomson Microelectronics Monitoring interrupts
US7111283B2 (en) * 2000-11-29 2006-09-19 Microsoft Corporation Program history in a computer programming language
US8799113B2 (en) 2001-12-28 2014-08-05 Binforma Group Limited Liability Company Quality management by validating a bill of materials in event-based product manufacturing
US7357298B2 (en) * 2001-12-28 2008-04-15 Kimberly-Clark Worldwide, Inc. Integrating event-based production information with financial and purchasing systems in product manufacturing
US7035877B2 (en) 2001-12-28 2006-04-25 Kimberly-Clark Worldwide, Inc. Quality management and intelligent manufacturing with labels and smart tags in event-based product manufacturing
US7380213B2 (en) 2001-12-28 2008-05-27 Kimberly-Clark Worldwide, Inc. User interface for reporting event-based production information in product manufacturing
US6968250B2 (en) * 2001-12-28 2005-11-22 Kimberly-Clark Worldwide, Inc. Intelligent agent system and method for evaluating data integrity in process information databases
US7032816B2 (en) * 2001-12-28 2006-04-25 Kimberly-Clark Worldwide, Inc. Communication between machines and feed-forward control in event-based product manufacturing
JP2004199265A (ja) * 2002-12-17 2004-07-15 Mitsubishi Electric Corp プロセス制御のトラッキング機能自動生成システムおよび制御プログラム自動生成システム
US20060101415A1 (en) * 2004-11-01 2006-05-11 Evans Mark S Service logic program tracing
US20080098398A1 (en) * 2004-11-30 2008-04-24 Koninklijke Philips Electronics, N.V. Efficient Switching Between Prioritized Tasks
US7707394B2 (en) * 2006-05-30 2010-04-27 Arm Limited Reducing the size of a data stream produced during instruction tracing
EP1909173B1 (de) * 2006-10-06 2010-02-24 Hewlett-Packard Development Company, L.P. Verwaltung von Einstellungsdaten in einem Datenverarbeitungsbetriebsystem
JP2008102778A (ja) * 2006-10-19 2008-05-01 Fujitsu Ltd 情報処理装置、情報処理装置の制御方法及びプログラム
SG163452A1 (en) * 2009-01-23 2010-08-30 Yokogawa Electric Corp An apparatus and method for managing task information of a plant
CN104272256B (zh) * 2012-05-24 2018-07-27 瑞萨电子株式会社 任务处理装置
US10990439B1 (en) * 2019-09-26 2021-04-27 Facebook Technologies, Llc Tracing task execution across services in microkernel-based operating systems

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4598364A (en) * 1983-06-29 1986-07-01 International Business Machines Corporation Efficient trace method adaptable to multiprocessors
JPS6011948A (ja) * 1983-07-01 1985-01-22 Matsushita Electric Ind Co Ltd タスク状態遷移監視装置
US4845615A (en) * 1984-04-30 1989-07-04 Hewlett-Packard Company Software performance analyzer
DD239481A1 (de) * 1985-07-15 1986-09-24 Robotron Rationalisierung Einrichtung zum protokollieren von programmablaeufen
US4809170A (en) * 1987-04-22 1989-02-28 Apollo Computer, Inc. Computer device for aiding in the development of software system

Also Published As

Publication number Publication date
CN1046404A (zh) 1990-10-24
DE4011745A1 (de) 1990-10-18
KR900016884A (ko) 1990-11-14
CN1021087C (zh) 1993-06-02
US5379427A (en) 1995-01-03
JPH02271435A (ja) 1990-11-06
KR930000592B1 (ko) 1993-01-25

Similar Documents

Publication Publication Date Title
DE4011745C2 (de)
DE69515958T2 (de) Verfahren und Einrichtung zum Beseitigen von Fehlern in Multitask-Programmen
DE68922769T2 (de) Verfahren zum Erzeugen eines temporären Anhaltens von Tasken, die in einem virtuellen Datenverarbeitungssystem ablaufen.
DE69026379T2 (de) Nachrichtenorientierte Fehlerbeseitigungsverfahren
DE3686873T2 (de) Untersystem fuer virtuelle terminals.
DE3687805T2 (de) Ein-ausgabesteuersystem in einem virtuellen maschinensystem.
DE69031233T2 (de) Adaptive Arbeitsfolgeplanung für Mehrfachverarbeitungssysteme
DE69908682T2 (de) Prozessor mit Echtzeit-Ablaufsteuerung zur Fehlerbeseitigung ohne Fehlerbeseitigungsmonitor
DE3685863T2 (de) Rechnersystem zur steuerung virtueller maschinen.
DE2722099C2 (de)
DE69919404T2 (de) On-line fehlerbeseitigungs- und ablaufverfolgungssytem und verfahren
DE4205372C2 (de) Verfahren zum Laden von geänderten Programmteilen in eine programmierbare Steuerung
DE69622832T2 (de) Vorrichtung und verfahren für kooperative unterbrechungen in einer preemptiven prozessablauffolgeplanungsumgebung
DE3942669A1 (de) Virtuelles maschinensystem
DE3855289T2 (de) Maus-Zeiger mit umschaltbarem Emulations-Betriebsmodus
DE19728726A1 (de) Robotercontroller und dessen Steuerverfahren
DE2243956A1 (de) Speicherprogrammierte datenverarbeitungsanlage
CH654943A5 (de) Pruefeinrichtung fuer mikroprogramme.
DE2244402A1 (de) Datenverarbeitungsanlage
EP0368190A1 (de) Verfahren zur Beobachtung des zeitlichen Ablaufs eines von einem Rechnersystem ausgeführten Objektprogrammes und Beobachtungswerkzeug zur Durchführung dieses Verfahrens
DE3886756T2 (de) Betriebsmittelzugriff für Multiprozessorrechnersystem.
DE69128908T2 (de) Verfahren zum Durchführen von erlässlichen Befehlen in einem Rechner
EP0048991B1 (de) Verfahren und Anordnung zur Behandlung von Unterbrechungsbedingungen während des Arbeitsablaufes in Datenverarbeitungsanlagen mit Mikroprogrammsteuerung
DE4223454A1 (de) Datenuebertragungssystem fuer eine digitale signalverarbeitungsvorrichtung
EP0450116B1 (de) Automatisierungsgerät mit Test in einzelnen Schritten

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8125 Change of the main classification

Ipc: G06F 11/28

D2 Grant after examination
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee