|
|
(18 dazwischenliegende Versionen von einem anderen Benutzer werden nicht angezeigt) |
Zeile 1: |
Zeile 1: |
| <p>
| |
| ''Prozess'' ist der wohl zentralste Begriff beim Thema ''Betriebssysteme''. Es wird daher die folgende aus dem Kapitel [[Vom Programm zum Prozess]] bereits bekannte Definition noch einmal wiederholt:
| |
| </p>
| |
|
| |
| <br /> | | <br /> |
| ==== Definition: Prozess ==== | | == So geht es weiter: == |
| <p> | | <p> |
| {{#index:Prozess|Programm in Ausführung}}
| | <loop_area type="arrangement"><loop_toc> </loop_toc></loop_area> |
| <loop_area type="definition"> | |
| <p> | |
| Ein '''Prozess''' ist ein Programm in Ausführung.
| |
| </p> | |
| </loop_area> | |
| </p> | | </p> |
|
| |
|
| <p>
| |
| Es folgen eine Reihe weiterer grundlegender Definitionen.
| |
| </p>
| |
|
| |
| <p>
| |
| <br /> | | <br /> |
| ==== Definition: Prozesskontext ==== | | == Alternative Webquelle zum Thema == |
| {{#index:Prozesskontext|Kontext, Prozess}}
| |
| <loop_area type="definition">
| |
| <p> | | <p> |
| Unter dem '''Prozesskontext''' oder '''Kontext eines Prozesses''' versteht man die Gesamtheit aller Informationen, die der betreffende Prozess während seiner Ausführung auf der CPU benötigt.
| | <loop_area type="websource"> |
| </p> | |
| </loop_area>
| |
| </p>
| |
| | |
| <p> | | <p> |
| Zum Kontext eines Prozesses gehören damit unter anderem:
| | Operating Systems: Processes<br /> |
| * Die Werte in den betreffenden Registern der CPU (Program Counter, Instruction Register, etc.).
| | <small>http://www.cs.uic.edu/~jbell/CourseNotes/OperatingSystems/3_Processes.html</small> |
| * Die Belegung des Caches mit Befehlen und Daten des Prozesses.
| |
| * Die Belegung des Hauptspeichers mit Programmtext und Daten des Prozesses.
| |
| </p> | | </p> |
|
| |
| <p> | | <p> |
| Aus dem Kapitel [[Quasi-gleichzeitige Ausführung mehrerer Prozesse]] ist bereits bekannt, dass mehrere Prozesse sich bei ihrer Abarbeitung auf der CPU abwechseln können. Man spricht in diesem Zusammenhang von Kontextwechseln, die auf der CPU stattfinden.
| | [http://www.cs.uic.edu/~jbell/ Dr. John T. Bell]<br /> |
| </p> | | Department of Computer Science<br /> |
| | | University of Illinois, Chicago<br /> |
| <p>
| |
| <br /> | |
| ==== Definition: Kontextwechsel ====
| |
| {{#index:Kontextwechsel|CPU, Kontextwechsel}}
| |
| <loop_area type="definition"> | |
| <p>
| |
| Unter einem '''Kontextwechsel''' auf der CPU versteht man alle erforderlichen Tätigkeiten, um einen gerade auf der CPU aktiven Prozess A, durch einen anderen Prozess B zu ersetzen.
| |
| </p> | | </p> |
| </loop_area> | | </loop_area> |
| </p>
| |
|
| |
| <p>
| |
| Zu den dafür erforderlichen Tätigkeiten gehören unter anderem:
| |
| * Sichere alle notwendigen Registerinformationen des scheidenden Prozesses A an einer bekannten Stelle (damit sie von dort später wiederhergestellt werden können).
| |
| * Lade alle notwendigen Registerinformationen des neuen Prozesses B in die entsprechenden Register auf der CPU.
| |
| * Lade alle notwendigen Befehle und Daten des neuen Prozesses B in den Cache.
| |
| </p>
| |
|
| |
| <br />
| |
| ==== So geht es weiter: ====
| |
| <p>
| |
| <loop_area type="arrangement"><loop_toc> </loop_toc></loop_area>
| |
| </p> | | </p> |
|
| |
|