DE19857333C1 - Procedure to synchronize processes - Google Patents

Procedure to synchronize processes

Info

Publication number
DE19857333C1
DE19857333C1 DE1998157333 DE19857333A DE19857333C1 DE 19857333 C1 DE19857333 C1 DE 19857333C1 DE 1998157333 DE1998157333 DE 1998157333 DE 19857333 A DE19857333 A DE 19857333A DE 19857333 C1 DE19857333 C1 DE 19857333C1
Authority
DE
Germany
Prior art keywords
waiting
information processing
processes
processing step
completion
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
DE1998157333
Other languages
German (de)
Inventor
Dieter Esswein
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.)
Siemens AG
Original Assignee
Siemens AG
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 Siemens AG filed Critical Siemens AG
Priority to DE1998157333 priority Critical patent/DE19857333C1/en
Application granted granted Critical
Publication of DE19857333C1 publication Critical patent/DE19857333C1/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

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/52Program synchronisation; Mutual exclusion, e.g. by means of semaphores

Abstract

A synchronization request of each process (Pa,Pw) is indicated by a change of a semaphore. Synchronization occurs dependent on the indicator flags formed dependent on the changes of the semaphore. The process (Pa) carries out an information processing step. The other process (Pw) waits on the conclusion of the first process, indicated to the first process with a waiting flag. The conclusion of the information processing step is indicated dependent on the waiting flag and is informed to the other processes (Pw). The conclusion of the processing step is indicated to an operating system in the processing unit (E) while the other processes (Pw) is registered as waiting on the conclusion of the processing step. The operating system (BS) activates another process (Pw). During the processing (Pa) one of the processors (CPU1,2) of the unit is set to a non-privileged operating mode.

Description

In einer zeitgemäßen Informationsverarbeitungseinrichtung kommen üblicherweise eine Vielzahl von Informationsverarbei­ tungsvorgängen - auch 'Prozesse' genannt - auf den in der In­ formationsverarbeitungseinrichtung vorgesehenen prozeßverar­ beitenden Einrichtungen, z. B. Prozessoren, zum Ablauf. Hier­ bei versteht man unter einem Prozeß den Vorgang einer algo­ rithmisch, d. h. in einer Abfolge von einzelnen Informations­ verarbeitungschritten, ablaufenden Informationsverarbeitung. Beispiele für Prozesse sind das Bearbeiten einer Datei oder die Erstellung eines Programms. Beispiele für Informations­ verarbeitungsschritte sind das Öffnen, Drucken und/oder Spei­ chern einer Datei oder das Ändern eines Speicherbereichs im Arbeitsspeicher.In a modern information processing facility there is usually a lot of information processing processes - also called 'processes' - on the in formation processing device provided process processing processing facilities, e.g. B. processors, for execution. Here a process means the process of an algo rithmic, d. H. in a sequence of individual pieces of information processing steps, ongoing information processing. Examples of processes are editing a file or the creation of a program. Examples of information Processing steps are opening, printing and / or saving save a file or change a storage area in the Random access memory.

Die Ausführung eines Informationsverarbeitungschritts durch einen Prozessor erfolgt unter der Steuerung eines Programms, das aus einer Folge von Anweisungen - auch 'Maschinenbefehle' genannt - besteht. Hierbei werden durch unterschiedliche Ma­ schinenbefehle unterschiedliche elementare Verarbeitungs­ schritte des Prozessors gekennzeichnet. Beispiele für elemen­ tare Verarbeitungsschritte sind arithmetische Operationen, z. B. ganzzahlige Addition oder Subtraktion. Durch das Pro­ gramm wird dem Prozessor somit angezeigt, welche seiner ele­ mentaren Verarbeitungsschritte in welcher Reihenfolge er­ bracht werden sollen.The execution of an information processing step by a processor is under the control of a program, that from a sequence of instructions - also 'machine commands' called - exists. Here are different Ma line commands different elementary processing marked steps of the processor. Examples of elements Tare processing steps are arithmetic operations, e.g. B. integer addition or subtraction. By the pro The processor is thus shown which of its ele mentary processing steps in what order he should be brought.

Um eine möglichst optimale Auslastung aller Komponenten einer Informationsverarbeitungseinrichtung - auch 'Betriebsmittel' genannt - zu gewährleisten, werden die Prozesse üblicherweise nebenläufig, d. h. zeitlich ineinander verzahnt, ausgeführt. Diese Verzahnung wird auch 'Interleaving' genannt. Beispiele für Betriebsmittel sind Drucker, Prozessoren, Speicherplatz oder Dateien. Beim Interleaving wird üblicherweise der Ablauf eines ersten Prozesses mit Hilfe einer Unterbrechung - auch 'Interrupt' genannt - zu einem frei wählbaren Zeitpunkt un­ terbrochen. Die Unterbrechung erfolgt üblicherweise zwischen der Verarbeitung von zwei Maschinenbefehlen, da diese nicht weiter zerlegbare, d. h. nicht unterbrechbare, Einheiten dar­ stellen. Nach Auswahl eines zweiten Prozesses, z. B. durch ein Betriebssystem, wird mit dem Ablauf des zweiten Prozesses fortgefahren.To ensure the best possible utilization of all components of a Information processing facility - also 'equipment' The processes are usually called - to ensure concurrent, d. H. interlocked in time, executed. This interlocking is also called 'interleaving'. Examples for resources are printers, processors, storage space  or files. Interleaving is usually the process an initial process with the help of an interruption - too Called 'interrupt' - at a freely selectable time and broken. The interruption is usually between the processing of two machine commands since these are not further dismantled, d. H. non-interruptible units put. After selecting a second process, e.g. B. by a Operating system will run with the second process continued.

Da im allgemeinen aus Wirtschaftlichkeitsgründen nicht genü­ gend Betriebsmittel zur Verfügung stehen, um die Anforderun­ gen aller Prozesse gleichzeitig zu erfüllen, können infolge des Interleaving durch gleichzeitige, d. h. wechselseitige oder gemeinsame, Benutzung der Betriebsmittel Konflikte ent­ stehen - beispielsweise, wenn zwei Prozesse gleichzeitig auf demselben Drucker Daten ausgeben oder gleichzeitig auf die gleiche Datei schreibend zugreifen möchten. Auch ohne gemein­ same Benutzung der Betriebsmittel können durch die Verzahnung der Prozesse Konflikte entstehen, beispielsweise wenn ein Prozeß einen anderen Prozeß beenden möchte, während der an­ dere Prozeß aktuell einen Informationsverarbeitungsschritt ausführt, der nicht unterbrochen werden darf - z. B. das Ab­ speichern einer Datei. Ein Informationsverarbeitungsschritt eines Prozesses, der von anderen Prozessen nicht unterbrochen werden darf, wird auch 'kritischer Abschnitt' genannt.Since generally not enough for reasons of economy sufficient resources are available to meet the requirements As a result, all processes can be carried out simultaneously of interleaving through simultaneous, d. H. mutual or shared, use of resources conflicts stand - for example, when two processes at the same time Output data to the same printer or simultaneously to the want to have write access to the same file. Even without mean Same use of the equipment can be done through the teeth the processes conflict, for example when a Wants to end another process during the process whose process is currently an information processing step executes that must not be interrupted - e.g. B. the Ab save a file. An information processing step a process that is not interrupted by other processes may also be called a 'critical section'.

Die übliche Strategie zur Vermeidung der Konflikte ist eine Abstimmung - auch 'Synchronisation' genannt - der nebenläufi­ gen Prozesse aufeinander. Hierbei werden die zeitlich inein­ ander verzahnt ausgeführten Informationsverarbeitungsschritte der einzelnen Prozesse im Konfliktfall sequentiell, also nacheinander, ausgeführt. Diese Konfliktlösung wird auch 'Prinzip des wechselseitigen Ausschlusses' - in der Fachwelt auch 'mutual exclusion' - genannt, d. h. in Informationsvear­ beitungsschritte eines Prozesses, die kritische Abschnitte darstellen, werden keine Informationsvearbeitungsschritte an­ derer Prozesse "eingeschoben". Die Synchronisation wird mit Hilfe von mehreren, sich voneinander unterscheidenden Prozeß­ zuständen AKTIV, BEREIT, und BLOCKIERT gesteuert. Diese Pro­ zeßzustände sind folgendermaßen definiert:
AKTIV: ein Prozeß setzt seinen Ablauf fort, z. B. durch Ausführung auf einem Prozessor.
BEREIT: ein Prozeß kann seinen Ablauf fortsetzen und war­ tet auf die Zuteilung eines Prozessors.
BLOCKIERT: ein Prozeß wartet auf bestimmte Ereignisse, die für seinen weiteren Ablauf erforderlich sind, z. B. auf die Zuteilung von Speicherplatz, die Antwort auf eine Anfrage, oder den Abschluß eines Informationsverarbeitungsschritts eines anderen Prozesses.
The usual strategy for avoiding conflicts is to coordinate the parallel processes with one another - also known as 'synchronization'. In the event of a conflict, the information processing steps of the individual processes, which are interlinked in time, are carried out sequentially, that is to say one after the other. This conflict resolution is also called the 'principle of mutual exclusion' - in the professional world also 'mutual exclusion' - that is, in information processing steps of a process that represent critical sections, no information processing steps are "inserted" in the other processes. The synchronization is controlled with the aid of several different process states, ACTIVE, READY, and BLOCKED. These pro cess states are defined as follows:
ACTIVE: a process continues, e.g. B. by execution on a processor.
READY: a process can continue and is waiting for a processor to be assigned.
BLOCKED: a process is waiting for certain events that are necessary for its further execution, e.g. B. the allocation of storage space, the answer to a request, or the completion of an information processing step of another process.

Die Synchronisation wird dadurch bewirkt, daß lediglich die aktivierten Prozesse, d. h. Prozesse im Zustand AKTIV oder BE- REIT, ihren Ablauf fortsetzen. Hierdurch ergibt sich eine Se­ quentialisierung der Prozesse.The synchronization is effected in that only the activated processes, d. H. Processes in the ACTIVE or BE- state REIT, continue their process. This results in a Se process quantization.

Zur Ermittlung des Eintretens der für den weiteren Ablauf ei­ nes wartenden Prozesses erforderlichen Ereignisse sind Ver­ fahren bekannt, bei denen ein wartender Prozeß, also ein Pro­ zeß im Zustand BLOCKIERT, ein bestimmtes Ereignis, z. B. den Abschluß eines Informationsverarbeitungsschritts eines ande­ ren Prozesses, unter der zeitlichen Steuerung eines Timers erkennt. Hierbei initiiert der wartende Prozeß einen Timer und unterbricht anschließend seinen eigenen Ablauf bis zum Ende des Timers. Nach dessen Ende prüft der wartende Prozeß erneut, ob das Ereignis erfolgt ist. Diese Prozedur wird ge­ gebenenfalls sooft wiederholt, bis das Ereignis erfolgt. Hierbei ergibt sich üblicherweise zwischen dem Abschluß des Informationsverarbeitungsschritts und dem Ende des Timers ein zeitlicher Versatz. Ist z. B. einer Timer mit 1.000 ms initi­ iert und ein Prozessor mit 300 MHz getaktet, was ca. 300.000.000 Verarbeitungszyklen des Prozessors pro 1.000 ms entspricht, so bedeutet dies, daß der wartende Prozeß im Ex­ tremfall, d. h. bei Eintreten des Ereignisses unmittelbar nach dem Beginn des Timers, bis zu 300.000.000 Verarbeitungszyklen wartet, bevor er den Eintritt des Ereignisses erkennt. Dies ist insbesondere für Prozesse mit Echtzeitcharakter, d. h. für die minimale Verzögerungs- und Reaktionszeiten gefordert wer­ den, nicht geeignet. Die Verzögerungszeiten können zwar durch schnell ablaufende Timer reduziert werden, hierbei erhöht sich jedoch die Anzahl der Timer. Die Verwaltung vieler Timer führt jedoch zu dem Problem, daß die für die Verwaltung der Timer erforderliche Rechenzeit nicht mehr für die Bearbeitung der Prozesse mit Echtzeitcharakter zur Verfügung steht, wo­ durch diese bei einer steigenden Anzahl von Timern zunehmend verzögert werden.To determine the occurrence of the ei The events required in the waiting process are Ver drive known in which a waiting process, so a pro in the BLOCKED state, a certain event, e.g. B. the Completion of another information processing step process, under the time control of a timer recognizes. The waiting process initiates a timer and then interrupts its own process until End of timer. After the end, the waiting process checks again if the event has occurred. This procedure is used if necessary, repeated until the event occurs. This usually results between the completion of the Information processing step and the end of the timer time offset. Is z. B. initiate a timer with 1,000 ms and a processor clocked at 300 MHz, which is approx. 300,000,000 processor processing cycles per 1,000 ms corresponds, this means that the waiting process in Ex tremfall, d. H. when the event occurs immediately after  the start of the timer, up to 300,000,000 processing cycles waits before recognizing the occurrence of the event. This is particularly suitable for processes with real-time character, i.e. H. For the minimum delay and response times required not suitable. The delay times can be through fast-running timers are reduced, increasing them however, the number of timers. Management of many timers leads, however, to the problem that the management of the Timer no longer required computing time for processing the processes with real-time character are available where through this with an increasing number of timers be delayed.

Der vorhergehend beschriebene technische Hintergrund ist in Engesser, Hermann [Hrsg.]; Claus, Volker [Bearb.]; Duden "Informatik"; 1. Auflage; Mannheim; Wien; Zürich: Dudenver­ lag; 1988; ISBN 3-411-02421-6; offenbart. Siehe insbesondere Seite 78 (Echtzeit), Seite 79 (Betriebsmittel), Seite 404-409 (Nebenläufigkeit), Seite 471-475 (Prozesse und Prozeßzu­ stände), und Seite 588-589 (Synchronisation).The technical background described above is in Engesser, Hermann [ed.]; Claus, Volker [arr.]; Duden "Computer science"; 1st edition; Mannheim; Vienna; Zurich: Dudenver lay; 1988; ISBN 3-411-02421-6; disclosed. See in particular Page 78 (real time), Page 79 (equipment), Page 404-409 (Concurrency), page 471-475 (Processes and process add stands), and page 588-589 (synchronization).

Aus Giloi, Wolfgang; Rechnerarchitektur; Springer-Verlag Ber­ lin, Heidelberg, New York; 1981; ISBN 3-540-10352-X ist be­ kannt, daß ein Warten eines Prozesses durch ein Sprachkon­ strukt WAIT bewirkt wird.From Giloi, Wolfgang; Computer architecture; Springer publishing house Ber lin, Heidelberg, New York; 1981; ISBN 3-540-10352-X is be knows that waiting for a process through a Sprachkon structure WAIT is effected.

In dem US-Patent 5,742,824 ist beschrieben, daß ein nach Aus­ führung des Sprachkonstrukts WAIT wartender Prozeß durch eine Wiederaufnahmesteuerung aktiviert wird, sofern von einem zu­ gehörigen vorrangigen Prozeß ein Sprachkonstrukt ENDE ausge­ führt wird.In U.S. Patent 5,742,824 it is described that an after guidance of the WAIT language construct through a waiting process Readmission control is activated, if any proper priority process a language construct END leads.

Der Erfindung liegt nun die Aufgabe zugrunde, ein Verfahren der eingangs genannten Art auszugestalten, bei dem nach Ab­ schluß eines synchronisierten Informationsverarbeitungs­ schritts weitere Prozesse, die wegen des synchronisierten In­ formationsverarbeitungsschritts blockiert sind, effizient ak­ tiviert werden.The invention is based on the object of a method of the type mentioned at the beginning, in which according to Ab conclusion of a synchronized information processing step further processes that are due to the synchronized In  formation processing step are blocked, efficiently ak be activated.

Die Aufgabe wird durch die Merkmale des Patentanspruchs 1 ge­ löst.The task is ge by the features of claim 1 solves.

Die Erfindung liegt im wesentlichen darin, daß einem Prozeß, von dem ein synchronisierter Informationsverarbeitungsschritt vorgenommen wird, mit Hilfe eines Warteindikators angezeigt wird, ob von weiteren Prozessen auf den Abschluß dieses In­ formationsverarbeitungsschritts gewartet wird. In Abhängig­ keit von diesem Warteindikator wird von dem Prozeß der Ab­ schluß des Informationsverarbeitungsschritts mitgeteilt. Der wesentliche Vorteil des erfindungsgemäßen Verfahrens ergibt sich daraus, daß von dem Prozeß sehr effizient ermittelt wer­ den kann, ob auf den Abschluß des Informationsverarbeitungs­ schritts gewartet wird, da für die Bewertung eines entspre­ chend einfach ausgestalteten Warteindikators, z. B. eines Speicherbereichs vom Datentyp INTEGER, lediglich eine einfa­ che Prüfoperation, z. B. ein Vergleich gegen Null, erforder­ lich ist. Prüfoperationen werden von Prozessoren üblicher­ weise innerhalb weniger Verarbeitungszyklen bewirkt. Für den Vergleich eines Warteindikators vom Datentyp INTEGER gegen Null sind beispielsweise zwei Verarbeitungsschritte erforder­ lich: (1) Laden des Warteindikators aus dem Speicher in den Prozessor, (2) Bewerten des geladenen Warteindikators inner­ halb des Prozessors. Ein weiterer Vorteil liegt darin, daß die Mitteilung des Abschlusses des Informationsverarbeitungs­ schritts unmittelbar nach dem Abschluß des Informationsverar­ beitungsschritts erfolgt. Dies ist besonders vorteilhaft für Informationsverarbeitungseinrichtungen mit Prozessen mit Echtzeitcharakter, da hierdurch schnellstmöglich zu einem wartenden Prozeß gewechselt werden kann, der beispielsweise wegen einer kurzen geforderten Reaktionszeit eine hohe Prio­ rität hat.The invention lies essentially in the fact that a process one of which is a synchronized information processing step is displayed with the help of a waiting indicator whether there are further processes to complete this In formation processing step is serviced. Depending This waiting indicator is determined by the process of Ab  communicated at the end of the information processing step. The gives significant advantage of the inventive method from the fact that the process is determined very efficiently can, whether on the completion of information processing step is waited, since for the assessment of a chend simply designed waiting indicator, z. B. one Memory area of data type INTEGER, only one simple che test operation, e.g. B. a comparison to zero required is. Test operations are becoming more common with processors wise within a few processing cycles. For the Comparison of a waiting indicator of the data type INTEGER against For example, zero processing steps are required Lich: (1) loading the waiting indicator from the memory into the Processor, (2) evaluating the loaded wait indicator internally half of the processor. Another advantage is that the notification of the completion of information processing immediately after completing information processing step. This is particularly beneficial for Information processing facilities with processes with Real-time character, as a result of this as quickly as possible waiting process can be changed, for example a high priority due to the short required response time rity has.

In einer Weiterbildung des erfindungsgemäßen Verfahren ist vorgesehen, daß der Abschluß des Informationsverarbeitungs­ schritts mitgeteilt wird, sofern der Warteindikator vorhanden ist - Anspruch 2. Hiermit wird vorteilhaft bewirkt, daß eine Mitteilung des Abschlusses des Informationsverarbeitungs­ schritts unterbleibt, wenn keine weiteren Prozessen auf den Abschluß des Informationsverarbeitungsschritts warten, d. h. es ist keine Rechenzeit für die Mitteilung erforderlich. Dies ist besonders vorteilhaft, da die Wahrscheinlichkeit eines Konflikts üblicherweise niedrig ist, oft < 10%, und deshalb häufig keine weiteren Prozesse auf den Abschluß des Informa­ tionsverarbeitungsschritts warten. In a further development of the method according to the invention provided that the completion of information processing step, if the waiting indicator is available is - Claim 2. This advantageously has the effect that a Notification of the completion of information processing step is omitted if there are no further processes on the Wait for the information processing step to complete, i. H. no computing time is required for the notification. This is particularly advantageous because the probability of a Conflict is usually low, often <10%, and therefore often no further processes for completing the informa wait processing step.  

Gemäß einer Ausgestaltung des erfindungsgemäßen Verfahrens wird der Abschluß des Informationsverarbeitungsschritts den weiteren Prozessen mitgeteilt - Anspruch 3. Die hat den Vor­ teil, daß die weiteren Prozesse nach Erhalt der Mitteilung individuell auf diese Mitteilung reagieren können.According to an embodiment of the method according to the invention the completion of the information processing step communicated to other processes - claim 3. It has the intent part that the further processes after receiving the notification can respond individually to this message.

In einer alternativen Ausgestaltung des erfindungsgemäßen Verfahrens ist in der Informationsverarbeitungseinrichtung zumindest ein Betriebssystem vorgesehen, in dem die weiteren Prozesse als wartend auf den Abschluß des Informationsverar­ beitungsschritts registriert sind und dem der Abschluß des Informationsverarbeitungsschritts mitgeteilt wird - Anspruch 4. Damit sind die weiteren Prozesse vorteilhaft zentral re­ gistriert, wodurch Reaktionen auf die Mitteilung ermöglicht werden, die eine zentrale Registrierung voraussetzen.In an alternative embodiment of the invention Procedure is in the information processing facility at least one operating system is provided in which the other Processes as waiting for information processing to complete processing step are registered and the completion of the Information processing step is communicated - claim 4. The other processes are thus advantageously central registered, which enables reactions to the message that require central registration.

In einer Weiterbildung des erfindungsgemäßen Verfahrens wird von dem Betriebssystem einer der weiteren Prozesse aktiviert - Anspruch 5. Hierbei wird von dem Betriebssystem vorteilhaft z. B. die Reihenfolge festgelegt, in der die weiteren Prozesse aktiviert werden. Zudem ist keine Zuteilung von Rechenzeit an die nicht aktivierten weiteren Prozesse erforderlich.In a development of the method according to the invention one of the other processes is activated by the operating system - Claim 5. Here, the operating system is advantageous e.g. B. determines the order in which the further processes to be activated. In addition, there is no allocation of computing time the additional processes not activated are required.

In einer alternativen Weiterbildung des erfindungsgemäßen Verfahrens werden von dem Betriebssystem die weiteren Pro­ zesse aktiviert - Anspruch 6. Hierbei können die aktivierten Prozesse vorteilhaft bewerten, ob eine erneute Synchronisa­ tion erforderlich ist. Zudem können die einzelnen Prozesse die Mitteilung des Abschlusses des Informationsverarbeitungs­ schritts vorteilhaft verarbeiten, beispielsweise durch Proto­ kollierung in eine Logdatei oder durch Hinweisfenster.In an alternative development of the invention The other Pro Processes activated - Claim 6. Here the activated Processes evaluate advantageously whether a new synchronization tion is required. In addition, the individual processes the notification of the completion of information processing Process advantageous steps, for example by Proto collation in a log file or through a message window.

Gemäß einer Ausgestaltung des erfindungsgemäßen Verfahrens ist ein in der Informationsverarbeitungseinrichtung (E) vor­ gesehener Prozessor bei der Bearbeitung des zumindest einen Prozesses auf einen nicht privilegierten Betriebsmodus ein­ gestellt - Anspruch 7. Somit wirken sich wegen der in diesem Betriebsmodus vorgesehenen Schutzmaßnahmen Programmfehler in­ nerhalb des Prozesses vorteilhaft nicht auf die Informations­ verarbeitungseinrichtung als Ganze aus. Zudem kann der Prozeß vorteilhaft beendet werden - z. B. durch einen Prozeßabbruch- Interrupt -, da ein zeitgemäßer, auf einen nicht privilegier­ ten Betriebsmodus eingestellter, Prozessors üblicherweise zwischen zwei aufeinanderfolgenden Maschinenbefehlen unter­ brochen werden kann. Diese Unterbrechbarkeit kann von einem im nicht privilegierten Betriebsmodus ablaufenden Prozeß nicht verhindert werden, da die Ausführung eines diese Unter­ brechbarkeit verhindernder Maschinenbefehl üblicherweise im nicht privilegierten Betriebsmodus untersagt ist.According to an embodiment of the method according to the invention is in front of the information processing device (E) Processor seen when processing the at least one Process to a non-privileged operating mode posed - claim 7. So act because of this in this  Protective measures provided in operating mode not beneficial to the information within the process processing device as a whole. In addition, the process be ended advantageously - z. B. by a process termination Interrupt - as a contemporary, on a non privileged operating mode of the set processor, usually between two successive machine commands below can be broken. This interruptibility can be from one process running in the non-privileged operating mode cannot be prevented since running this sub Machine command usually prevents breakability in non-privileged operating mode is prohibited.

Das erfindungsgemäße Verfahren wird im folgenden anhand von zwei Figuren näher erläutert. Dabei zeigtThe method according to the invention is described below with the aid of two figures explained. It shows

Fig. 1 in einem Blockschaltbild eine Informationsverar­ beitungseinrichtung und Fig. 1 in a block diagram an information processing processing device and

Fig. 2 in einem Ablaufdiagram das erfindungsgemäße Ver­ fahren. Fig. 2 drive the United Ver in a flowchart.

In Fig. 1 ist beispielhaft eine Informationsverarbeitungs­ einrichtung E dargestellt, die prozeßverarbeitende Einrich­ tungen, die durch einen ersten Prozessor CPU1 und einen zwei­ ten Prozessor CPU2 gebildet sind, sowie Speichermittel, die als RAM-Speicher MEM ausgebildet sind, enthält. In dem Spei­ cher MEM sind in Speicherbereichen SB gespeicherte, prozeß­ spezifische Informationen enthaltende, Prozeßkontrollblöcke PCB vorgesehen. Hierbei sind in einen ersten Prozeßkontroll­ block PCB1 prozeßspezifische Informationen eines ersten Pro­ zesses Pa, in einen zweiten Prozeßkontrollblock PCB2 prozeß­ spezifische Informationen eines zweiten Prozesses Pw (2) und in einen dritten Prozeßkontrollblock PCB3 prozeßspezifische Informationen eines dritten Prozesses Pw (3) gespeichert - der erste Prozeß Pa wird im weiteren auch der aktive Prozeß Pa, der zweite Prozeß Pw (2) und der dritte Prozeß (3) werden im weiteren auch die wartenden Prozessen Pw genannt. Zudem sind in dem Speicher MEM in Speicherbereichen SB gespeicherte Warteindikatoren WAITING FLAG vorgesehen, die z. B. den War­ teindikator WF1 enthalten. Durch den Warteindikator WF1 wird dem aktiven Prozeß Pa angezeigt, ob von dem zweiten Prozeß Pw (2) und/oder dem dritten Prozeß Pw (3) auf den Abschluß eines von ihm bearbeiteten Informationsverarbeitungsschritts IVS gewartet wird. Der Warteindikator WF1 ist z. B. vom einem ganzzahligen Datentyp INTEGER. Hierbei wird durch den War­ teindikator WF1 mit dem Wert "1" die Information 'Es warten weitere Prozesse', und durch den Warteindikator WF1 mit dem Wert "0" die Information 'Es warten keine weitere Prozesse' repräsentiert. Die beiden Prozessoren CPU1, CPU2 und der Speicher MEM sind durch einen Zugriffsbus ZB miteinander ver­ bunden, wobei die Zuteilung des Zugriffsbusses ZB an die Pro­ zessoren CPU1 und CPU2 von einer an den Zugriffsbus ZB ange­ schlossenen Zugriffsbussteuereinrichtung ZBS gesteuert wird. Aufgrund des gemeinsamen Zugriffs der beiden Prozessoren CPU1, CPU2 ist der Speicher RAM als gemeinsamer Speicher SHA- RED MEMORY ausbildet, d. h. auf in dem gemeinsamen Speicher SHARED MEMORY gespeicherte Informationen, z. B. Warteindikato­ ren WAITING FLAG, kann sowohl von dem ersten Prozessor CPU1 als auch dem zweiten Prozessor CPU2 zugegriffen werden, wo­ durch die für eine Synchronisation erforderliche Interprozeß­ kommunikation bewirkt wird. Der Betrieb der Einrichtung E wird durch ein in der Einrichtung E vorgesehenes Betriebssy­ stem BS gesteuert - in Fig. 1 durch die Bezeichnung E (BS) angedeutet. Der Betriebsmodus BM der beiden Prozessoren CPU1, CPU2 ist während der Ausführung der Prozesse Pa, Pw auf einen nicht privilegierten Betriebsmodus NPM und während der Aus­ führung des Betriebssystems BS auf einen privilegierten Be­ triebsmodus PM eingestellt.In Fig. 1, an information processing device E is shown as an example, the process processing devices, which are formed by a first processor CPU1 and a second processor CPU2, as well as memory means, which are designed as RAM memory MEM. Process control blocks PCB are stored in the memory MEM and are stored in memory areas SB and contain process-specific information. Process-specific information of a first process Pa is stored in a first process control block PCB1, process-specific information of a second process Pw (2) is stored in a second process control block PCB2, and process-specific information of a third process Pw (3) is stored in a third process control block PCB3 - the first Process Pa is also referred to as the active process Pa, the second process Pw (2) and the third process (3) are also referred to below as the waiting processes Pw. In addition, waiting indicators WAITING FLAG stored in memory areas SB are provided. B. contain the goods indicator WF1. The waiting indicator WF1 indicates to the active process Pa whether the second process Pw (2) and / or the third process Pw (3) is waiting for the completion of an information processing step IVS that it is processing. The waiting indicator WF1 is e.g. B. of an integer data type INTEGER. The information 'There are further processes waiting' by the waiting indicator WF1 with the value "1", and the information 'There are no further processes waiting' represented by the waiting indicator WF1 with the value "0". The two processors CPU1, CPU2 and the memory MEM are connected to one another by an access bus ZB, the allocation of the access bus ZB to the processors CPU1 and CPU2 being controlled by an access bus control device ZBS connected to the access bus ZB. Due to the shared access of the two processors CPU1, CPU2, the memory RAM is designed as a shared memory SHA-RED MEMORY, that is, information stored in the shared memory SHARED MEMORY, eg. B. WAITINGIKAG ren WAITING FLAG, can be accessed by both the first processor CPU1 and the second processor CPU2, where communication is effected by the interprocess required for synchronization. The operation of the device E is controlled by an operating system BS provided in the device E - indicated in FIG. 1 by the designation E (BS). The operating mode BM of the two processors CPU1, CPU2 is set to a non-privileged operating mode NPM during the execution of the processes Pa, Pw and to a privileged operating mode PM during the execution of the operating system BS.

In Fig. 2 ist beispielhaft dargestellt, in welcher Reihen­ folge der Warteindikator WAITING FLAG von den wartenden Pro­ zessen Pw und dem aktiven Prozeß Pa bearbeitet wird. Hierzu sind die Anzeigeaktion INDICATE, mit der der Warteindikator WAITING FLAG gesetzt wird, und die Bewertungsaktion EVALUATE, mit der der Warteindikator WAITING FLAG bewertet wird, vorge­ sehen. Die Anzeigeaktion INDICATE erfolgt entweder direkt durch die wartenden Prozesse Pw mit Hilfe der prozeßindivi­ duellen Anzeigeaktion INDICATE_Pw, z. B. einer Zuweisung des Wertes "1", oder indirekt durch das Betriebssystem BS, wobei die wartenden Prozesse Pw durch eine erste Anzeigeteilaktion INDICATE_BS (1) von dem Betriebssystem BS als wartend auf den Abschluß des Informationsverarbeitungsschritts IVS regi­ striert werden und der Warteindikator WAITING FLAG daraufhin von dem Betriebssystem BS zumindest einmal durch eine zweite Anzeigeteilaktion INDICATE_BS (2) gesetzt wird. Die Bewerte­ aktion EVALUATE ist immer prozeßindividuell und erfolgt durch eine erste Bewerteteilaktion LOAD, mit dem der Warteindikator WAITING FLAG vom Speicher MEM in denjenigen Prozessor CPU1 .. CPU2 geladen wird, auf dem der aktive Prozeß Pa zum Ab­ lauf kommt, und eine anschließende zweite Bewerteteilaktion EVALUATE (WAITING FLAG), z. B. einem Vergleich mit der Zahl "0", mit dem der Warteindikator WAITING FLAG durch den akti­ ven Prozeß Pa bewertet wird. Zudem ist eine optionale Mittei­ lungsaktion INFORM - die Optionalität ist durch eine gestri­ chelte Darstellung angedeutet - vorgesehen, mit der den war­ tenden Prozessen Pw der Abschluß des Informationsverarbei­ tungsschritts IVS mitgeteilt wird. Die Mitteilungsaktion IN­ FORM erfolgt entweder direkt durch den aktiven Prozeß Pa mit Hilfe der prozeßindividuellen Mitteilungsaktion INFORM_Pa, z. B. einem Event, oder indirekt durch das Betriebssystem BS, wobei das Betriebssystem BS von dem aktiven Prozeß Pa durch eine erste Mitteilungsteilaktion INFORM_BS (1) über den Ab­ schluß des Informationsverarbeitungsschritts IVS informiert wird und zumindest einer der wartenden Prozesse Pw daraufhin von dem Betriebssystem BS aktiviert wird - diese Aktivierung ist als eine zweite Mitteilungsteilaktion INDICATE_BS (2) an­ gedeutet.In Fig. 2 is shown by way of example, in which rows follow the waiting indicator WAITING FLAG of the waiting Pro processes Pw and the active process Pa is processed. The INDICATE display action, with which the WAITING FLAG waiting indicator is set, and the EVALUATE evaluation action, with which the WAITING FLAG waiting indicator is evaluated, are provided for this purpose. The INDICATE display action takes place either directly through the waiting processes Pw with the aid of the process-individual display action INDICATE_Pw, e.g. B. an assignment of the value "1", or indirectly by the operating system BS, the waiting processes Pw are regi strated by a first display sub-action INDICATE_BS (1) from the operating system BS as waiting for the completion of the information processing step IVS and the waiting indicator WAITING FLAG thereupon the operating system BS is set at least once by a second display sub-action INDICATE_BS (2). The evaluation action EVALUATE is always process-specific and is carried out by a first evaluation sub-action LOAD, with which the waiting indicator WAITING FLAG is loaded from the memory MEM into the processor CPU1 ... CPU2 on which the active process Pa is running, and a subsequent second evaluation sub-action EVALUATE (WAITING FLAG), e.g. B. a comparison with the number "0", with which the waiting indicator WAITING FLAG is evaluated by the active process Pa. In addition, an optional notification action INFORM - the optionality is indicated by a dashed line - is provided, with which the waiting processes Pw are informed of the completion of the information processing step IVS. The notification action IN FORM is carried out either directly by the active process Pa using the process-specific notification action INFORM_Pa, e.g. B. an event, or indirectly through the operating system BS, the operating system BS being informed by the active process Pa through a first notification sub-action INFORM_BS (1) about the completion of the information processing step IVS and at least one of the waiting processes Pw thereupon from the operating system BS is activated - this activation is indicated as a second sub-action INDICATE_BS (2).

Für das Ausführungsbeispiel wird angenommen, daß der erste Prozeß Pa von dem ersten Prozessor CPU1 und der dritte Prozeß Pw (3) von dem zweiten Prozessor CPU2 bearbeitet wird. Der erste Prozeß Pa bewirkt den Informationsverarbeitungsschritt IVS - in Fig. 1 durch die Bezeichnung CPU (Pa (IVS)) ange­ deutet -, z. B. das Speichern einer Datei. Der dritte Prozeß Pw (3) bearbeitet die gleiche Datei und möchte ebenfalls ein Speichern der Datei bewirken. Er hat auf eine für die Erfin­ dung unwesentliche und deshalb nicht näher erläuterte Art und Weise ermittelt, daß der Informationsverarbeitungsschritt IVS gerade vorgenommen wird und die Entscheidung getroffen, auf den Abschluß des Informationsverarbeitungsschritts IVS zu warten. Dies teilt der dem ersten Prozeß Pa mit, indem er durch die Anzeigeaktion INDICATE den Warteindikator WAITING FLAG bildet. Hierbei repräsentiert der Warteindikator WAITING FLAG zumindest die Information, daß auf den Abschluß des In­ formationsverarbeitungsschritts IVS gewartet wird. In glei­ cher Weise wird von allen wartenden Prozessen Pw, z. B. dem zweiten Prozeß Pw (2), verfahren, die auf den Abschluß des Informationsverarbeitungsschritts IVS warten.For the exemplary embodiment it is assumed that the first process Pa is processed by the first processor CPU1 and the third process Pw (3) by the second processor CPU2. The first process Pa causes the information processing step IVS - indicated in Fig. 1 by the designation CPU (Pa (IVS)) -, for. B. saving a file. The third process Pw (3) processes the same file and also wants to save the file. He determined in a manner that is insignificant for the invention and therefore not explained in more detail that the information processing step IVS is currently being carried out and has made the decision to wait for the completion of the information processing step IVS. This communicates this to the first process Pa by forming the waiting indicator WAITING FLAG through the display action INDICATE. In this case, the waiting indicator WAITING FLAG at least represents the information that the information processing step IVS is awaiting completion. In the same manner, Pw, z. B. the second process Pw (2), waiting for the completion of the information processing step IVS.

Nach Abschluß des Informationsverarbeitungsschritts IVS wird der Warteindikator WAITING FLAG von dem ersten Prozeß Pa mit Hilfe der Bewerteaktion EVALUATE bewertet. In Abhängigkeit von dem Ergebnis der Bewertung wird von dem ersten Prozeß Pa der Abschluß des Informationsverarbeitungsschritts IVS mit Hilfe der Mitteilungsaktion INFORM mitgeteilt. Die Mittei­ lungsaktion INFORM kann ungezielt, d. h. ohne Angabe von Em­ pfängern, erfolgen, beispielsweise mit Hilfe eines Signali­ sierungsmechanismus - auch 'Event' genannt -, oder mit Hilfe eines Indikatormechanismus - auch 'Flag' genannt. Die Mittei­ lungsaktion INFORM kann alternativ gezielt, d. h. unter Angabe von Empfängern, erfolgen, beispielsweise indem die wartenden Prozesse Pw durch dem Prozeß Pa mit Hilfe der prozeßindividu­ ellen Mitteilungsaktion INFORM_Pw informiert werden. Zur Er­ mittlung der Empfänger ist der Warteindikator WAITING FLAG in dieser alternativen Ausgestaltung der Erfindung beispiels­ weise als eine Liste von Empfangsadressen ausgebildet. Die Anzeigeaktion INDICATE ist hierbei derart ausgebildet, daß die Empfangsadresse eines wartenden Prozesses Pw in die Liste der Empfangsadressen eingetragen wird.After completion of the information processing step IVS the wait indicator WAITING FLAG from the first process Pa with Using the EVALUATE rating action. Dependent on from the result of the evaluation, Pa the completion of the information processing step IVS with Communicated with the help of the INFORM communication campaign. The middle Action INFORM can be non-targeted, i. H. without giving Em catch, take place, for example with the help of a signal mechanism - also called 'event' - or with the help an indicator mechanism - also called a 'flag'. The middle Alternatively, INFORM can be targeted. H. stating by recipients, for example, by waiting Processes Pw through the process Pa using the process individual Notification campaign INFORM_Pw will be informed. To Er The recipient indicator is the WAITING FLAG in this alternative embodiment of the invention, for example as a list of receive addresses. The Display action INDICATE is designed such that  the receiving address of a waiting process Pw in the list of the receiving addresses is entered.

Sofern kein Warteindikator WAITING FLAG vorhanden ist, unter­ bleibt die Mitteilungsaktion INFORM - dies ist durch die ge­ strichelte Darstellung der Mitteilungsaktion INFORM in Fig. 2 angedeutet. Dies ist besonders vorteilhaft, da erfah­ rungsgemäß lediglich in 10% aller möglichen Synchronisatio­ nen tatsächlich eine Mitteilungsaktion INFORM erforderlich ist und somit in 90% aller Fälle durch ihren Wegfall die für die Bearbeitung der aller Prozesse Pw, Pa zur Verfügung ste­ hende Rechenzeit erhöht wird.If there is no WAITING FLAG waiting indicator, the message action INFORM remains below - this is indicated by the dashed representation of the message action INFORM in FIG. 2. This is particularly advantageous, since experience has shown that a notification action INFORM is actually only required in 10% of all possible synchronizations, and thus in 90% of all cases the elimination of the computing time available for processing all processes Pw, Pa increases.

In einer Variante des erfindungsgemäßen Verfahrens werden die Anzeigeaktion INDICATE und die Mitteilungsaktion INFORM unter Mitwirkung des Betriebssystems BS erbracht. Hierbei wird je­ der wartende Prozeß Pw infolge der ersten Anzeigeteilaktion INDICATE_BS (1) von dem Betriebssystem BS als wartend auf den Abschluß des Informationsverarbeitungsschritts IVS regi­ striert. Von dem Betriebssystem BS wird daraufhin der Warte­ indikator WAITING FLAG mit Hilfe der zweite Anzeigeteilaktion INDICATE_BS (2) gebildet. Nach Abschluß des Informationsver­ arbeitungsschritts IVS wird die Mitteilungsaktion INFORM da­ durch erbracht, daß das Betriebssystem BS von dem aktiven Prozeß Pa durch die erste Mitteilungsteilaktion INFORM_BS (1) von dem Abschluß des Informationsverarbeitungsschritts IVS informiert wird, und von dem Betriebsssystem BS daraufhin zu­ mindest einer der wartenden Prozesse Pw aktiviert wird - diese Aktivierung ist in durch die zweite Mitteilungsteilak­ tion INFORM_BS (2) angedeutet. Wegen der Aktivierung kann bei der zweiten Mitteilungsteilaktion INFORM_BS (2) vorteilhaft auf explizite Nachrichten an die wartenden Prozesse Pw ver­ zichtet werden, da durch die Aktivierung implizit mitgeteilt wird, daß der Informationsverarbeitungsschritt IVS abge­ schlossen ist. Durch die Aktivierung eines wartenden Prozes­ ses Pw, z. B. des dritten Prozesses Pw (3), wird vorteilhaft eine effiziente Synchronisation der wartenden Prozesse Pw be­ wirkt, da für die nicht aktivierten, also weiterhin wartenden Prozesse Pw, z. B. dem zweiten Prozeß Pw (2), keine Rechenzeit erforderlich ist.In a variant of the method according to the invention, the Display action INDICATE and the notification action INFORM at Participation of the operating system BS provided. Here, each the waiting process Pw as a result of the first display sub-action INDICATE_BS (1) from the operating system BS as waiting for the Completion of the information processing step IVS regi strictly. The operating system then issues the control room indicator WAITING FLAG using the second display sub-action INDICATE_BS (2) formed. After completing the Informationsver step IVS, the notification campaign INFORM is there provided that the operating system BS from the active Process Pa through the first notification sub-action INFORM_BS (1) from the completion of the information processing step IVS is informed and thereupon by the operating system BS at least one of the waiting processes Pw is activated - this activation is in through the second communication part tion INFORM_BS (2) indicated. Because of the activation can the second message sub-action INFORM_BS (2) advantageous to explicit messages to the waiting processes Pw ver to be waived, because the activation implicitly communicates it is that the information processing step IVS abge is closed. By activating a waiting process ses Pw, z. B. the third process Pw (3), is advantageous an efficient synchronization of the waiting processes Pw be  works as for those who are not activated, so who are still waiting Processes Pw, e.g. B. the second process Pw (2), no computing time is required.

Bei einer alternativ vorgesehenen Aktivierung aller wartenden Prozesse Pw wird diesen vorteilhaft die Möglichkeit gegeben, prozeßindividuell auf den Abschluß des Informationsverarbei­ tungsschritts IVS zu reagieren. Die prozeßindividuelle Reak­ tion kann z. B. ein Abbruch eines der wartenden Prozesses Pw sein oder eine erneute Synchronisation mit den anderen war­ tenden Prozessen Pw. Diese erfolgt wiederum gemäß dem erfin­ dungsgemäßen Verfahren.With an alternative intended activation of all waiting Processes Pw are advantageously given the opportunity to process-specific to the completion of the information processing step IVS to respond. The process-specific reac tion z. B. a termination of one of the waiting processes Pw or was a new synchronization with the others processes Pw. This in turn takes place according to the inventions method according to the invention.

Claims (7)

1. Verfahren zur Synchronisation von Prozessen (Pa, Pw) in einer Informationsverarbeitungseinrichtung (E), bei dem
  • - von zumindest einem Prozeß (Pa) ein Informationsverarbei­ tungsschritt (IVS) vorgenommen wird,
  • - von weiteren Prozessen (Pw) auf den Abschluß des Informa­ tionsverarbeitungsschritts (IVS) gewartet wird, was dem zu­ mindest einen Prozeß (Pa) mit Hilfe eines Warteindikators (WAITING FLAG) angezeigt wird, und
  • - von dem zumindest einen Prozeß (Pa) der Abschluß des Infor­ mationsverarbeitungsschritts (IVS) in Abhängigkeit von dem Warteindikator (WAITING FLAG) mitgeteilt wird.
1. Process for the synchronization of processes (Pa, Pw) in an information processing device (E), in which
  • - An information processing step (IVS) is carried out by at least one process (Pa),
  • - More processes (Pw) wait for the completion of the information processing step (IVS), which is indicated to at least one process (Pa) with the help of a waiting indicator (WAITING FLAG), and
  • - Of the at least one process (Pa) the completion of the information processing step (IVS) is notified depending on the waiting indicator (WAITING FLAG).
2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß der Abschluß des Informationsverarbeitungsschritts (IVS) mitgeteilt wird, sofern der Warteindikator (WAITING FLAG) vorhanden ist.2. The method according to claim 1, characterized, that the completion of the information processing step (IVS) is communicated, provided the waiting indicator (WAITING FLAG) is available. 3. Verfahren nach einem der Ansprüche 1 oder 2, dadurch gekennzeichnet, daß der Abschluß des Informationsverarbeitungsschritts (IVS) den weiteren Prozessen (Pw) mitgeteilt wird.3. The method according to any one of claims 1 or 2, characterized, that the completion of the information processing step (IVS) the other processes (Pw) is communicated. 4. Verfahren nach einem der vorstehenden Ansprüche, dadurch gekennzeichnet, daß der Abschluß des Informationsverarbeitungsschritts (IVS) einem in der Informationsverarbeitungseinrichtung (E) vorge­ sehenen Betriebssystem (BS) mitgeteilt wird, in dem die wei­ teren Prozesse (Pw) als wartend auf den Abschluß des Informa­ tionsverarbeitungsschritts (IVS) registriert sind. 4. The method according to any one of the preceding claims, characterized, that the completion of the information processing step (IVS) one in the information processing device (E) seen operating system (BS) is communicated in which the white processes (Pw) than waiting for the completion of the informa tion processing step (IVS) are registered.   5. Verfahren nach Anspruch 4, dadurch gekennzeichnet, daß von dem Betriebssystem (BS) einer der weiteren Prozesse (Pw) aktiviert wird.5. The method according to claim 4, characterized, that the operating system (BS) one of the other processes (Pw) is activated. 6. Verfahren nach Anspruch 4, dadurch gekennzeichnet, daß von dem Betriebssystem (BS) die weiteren Prozesse (Pw) aktiviert werden.6. The method according to claim 4, characterized, that the other processes (Pw) of the operating system (BS) to be activated. 7. Verfahren nach einem der vorstehenden Ansprüche, dadurch gekennzeichnet, daß ein in der Informationsverarbeitungseinrichtung (E) vor­ gesehener Prozessor (CPU1 . . . CPU2) bei der Bearbeitung des zu­ mindest einen Prozesses (Pa) auf einen nicht privilegierten Betriebsmodus (NPM) eingestellt ist.7. The method according to any one of the preceding claims, characterized, that one in the information processing device (E) before seen processor (CPU1... CPU2) while processing the to at least one process (Pa) for a non-privileged one Operating mode (NPM) is set.
DE1998157333 1998-12-11 1998-12-11 Procedure to synchronize processes Expired - Fee Related DE19857333C1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE1998157333 DE19857333C1 (en) 1998-12-11 1998-12-11 Procedure to synchronize processes

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE1998157333 DE19857333C1 (en) 1998-12-11 1998-12-11 Procedure to synchronize processes

Publications (1)

Publication Number Publication Date
DE19857333C1 true DE19857333C1 (en) 2000-06-15

Family

ID=7890835

Family Applications (1)

Application Number Title Priority Date Filing Date
DE1998157333 Expired - Fee Related DE19857333C1 (en) 1998-12-11 1998-12-11 Procedure to synchronize processes

Country Status (1)

Country Link
DE (1) DE19857333C1 (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5742824A (en) * 1993-11-08 1998-04-21 Fanuc Ltd. Program control system in multitask environment

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5742824A (en) * 1993-11-08 1998-04-21 Fanuc Ltd. Program control system in multitask environment

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
GILOI, W.: Rechnerarchitektur, Springer-Verlag, Berlin, 1971, Heidelberger Taschenbücher, SammlungInformatik, S. 52 *

Similar Documents

Publication Publication Date Title
DE2714805C2 (en)
DE2411963C3 (en) Electronic data processing system with a priority control circuit with changeable control blocks
DE2629459C2 (en)
DE4104781C2 (en) Memory access control
DE3152435C2 (en)
EP0010194B1 (en) Maintenance interface device for a data processing installation with a central processing unit and with a service processor, and process for its operation
DE2856483C2 (en)
DE3942669A1 (en) VIRTUAL MACHINE SYSTEM
DE3508291A1 (en) REAL-TIME DATA PROCESSING SYSTEM
DE2317417A1 (en) CLOCK AND CONTROL LOGIC CIRCUIT
DE2648229A1 (en) SWITCH-ON CIRCUIT AS LOADER FOR DIGITAL COMPUTER
DE2933474C2 (en)
DE60036923T2 (en) DRAM REFRESH MONITORING AND CUTTING DISTRIBUTED BUSARBITRATION IN A MULTIPROCESSOR ENVIRONMENT
EP0799441B1 (en) System for controlling technical processes
DE19857333C1 (en) Procedure to synchronize processes
DE112019007853T5 (en) CONTROL DEVICE
EP1282274A2 (en) Subscriber unit for a synchronous master-slave network
DE10228778B4 (en) Hardware method for implementing atomic semaphore operations using code macros
DE102018123563B4 (en) Method for inter-core communication in a multi-core processor
EP0970426B1 (en) Dependency controller for overlapping memory access operations
DE2507405A1 (en) PROCEDURE AND ARRANGEMENT FOR SYNCHRONIZING THE TASKS IN PERIPHERAL DEVICES IN A DATA PROCESSING SYSTEM
EP1151368B1 (en) Method for protected access to at least one variable in a preemptive multitasking-controlled processor system
DE4028317B4 (en) A method downstream of a bus arbitration method for decentralized monitoring of access to shared components of a multi-microcomputer system
DE10155486A1 (en) Arrangement for managing of peripheral status information by a computer processor in which additional flag register positions are created that are then set to the states of peripheral status registers, thus reducing polling
DE4424375C1 (en) Interruption request and process call-up handling system for multi-processor system

Legal Events

Date Code Title Description
8100 Publication of the examined application without publication of unexamined application
D1 Grant (no unexamined application published) patent law 81
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee