Skip to main content
Top

1991 | OriginalPaper | Chapter

Geräte-Prozesse, Nebenläufigkeit und Interrupts

Author : Professor Dr. Niklaus Wirth

Published in: Programmieren in Modula-2

Publisher: Springer Berlin Heidelberg

Activate our intelligent search to find suitable subject content or patents.

search-config
loading …

Im letzten Kapitel diskutierten wir Systeme mit mehreren Prozessen und die Simulation nebenläufiger Prozesse auf einem einzigen Prozessor durch Verteilen der Prozessorzeiten auf die einzelnen Prozesse (time sharing). Jetzt betrachten wir die umgekehrte Situation, in der sich mehrere Prozessoren die Ausführung eines einzigen Prozesses teilen. Schauen wir uns der Einfacheit halber einen zyklischen Prozeß an, bestehend aus einem produzierenden und einem konsumierenden Teil. Der Prozeß soll so formuliert sein:

LOOP produce(x); consume(x) END

Nehmen wir an, daß jeder Teil nur von einem speziellen Prozessor ausgeführt werden kann. Wie wir wissen, kann zu einem gegebenen Zeitpunkt nur einer der beiden Prozessoren aktiv sein. Sie müssen synchronisiert werden. Man erreicht dies leicht durch Einführung einer Synchronisationsvariablen s. Sie hat die Bedeutung von, sagen wir “der Verbraucher ist gerade aktiv” (mit Anfangswert FALSE). Jeder der beiden sequentiellen Prozessoren kann nun durch ein eigenes Programm beschrieben werden, das wiederum zyklisch ist.

Metadata
Title
Geräte-Prozesse, Nebenläufigkeit und Interrupts
Author
Professor Dr. Niklaus Wirth
Copyright Year
1991
Publisher
Springer Berlin Heidelberg
DOI
https://doi.org/10.1007/978-3-662-00116-5_31

Premium Partner