Kapitel 3 Flashcards

1
Q

Was ist ein Programm?

A
  • statische Folge von Anweisungen in einer Programmiersprache unter Nutzung von Daten
  • dient zur Codierung eines Algorithmus und liegt im Allgemeinen als Datei vor
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Was ist ein Prozess?

A
  • eine dynamische Folge von Aktionen, die durch Ausführung eines Programms auf einem Prozessor zustande kommen
  • Prozess ist insbesondere durch zeitlich veränderlichen Zustand gekennzeichnet, er wird im Betriebssystem infolge eines Auftrags erzeugt
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Wie ist der Zusammenhang zwischen Programm und Prozess?

A
  • Ein Programm kann mehreren Prozessen zugeordnet sein, ein Prozess ist aus Sicht des Benutzer eine Ausführungseinheit
  • Aktivität des Prozesses zeigt sich durch Transformation von Eingangs- und Ausgangsoperanden, deren Werte z.B. CPU-Registern oder Speicherzellen liegen
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Was ist ein Adressraum?

A
  • umfasst alle einem Prozess zugeordneten Speicherbereiche für Programmcode, statische oder dynamische Daten und Stack
  • Das Betriebssystem kann einen Zugriffsschutz relaisieren für diesen Bereich
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Was kann einen Auftrag zur Erzeugung eines Prozesses auslösen?

A
  • von einem Bediener, z.B. durch eine Kommandoeingabe
  • direkt aus der Umgebung mithilfe von Interrupts
  • von anderen Prozessen, durch Aufruf von Systemdiensten
  • in der Regel wird der Prozess nach beenden des Auftrags beendet, Ausnahme sind periodische Prozesse, wie z.B. Dienstleistungsprozesse, welche auf neue Aufträge warten
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Was ist ein paralleler Prozess?

A
  • wenn zur selben Zeit mehrere Prozesse im System existieren, werden sie parallele Prozesse genannt, unabhängig davon, ob ein Ein- oder Mehrprozessorsystem vorliegt
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Was sind Prozesse für das Betriebssystem und wie können sie bearbeitet werden?

A
  • sind Verwaltungseinheiten, welche parallel ablaufen können (Multi-Tasking)
  • wenn nur ein Prozessor zur Verfügung steht werden sie quasi-parallel bearbeitet, die Nebenläufigkeit wird dann durch zeitliche Verschachtelung (Scheduling) der Prozesse erreicht
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Welche Arten von Prozessen werden vom Betriebssystem verwaltet?

A
  • Anwendungsprozesse, also Prozesse die vom Benutzer initiiert werden
  • Systemprozesse, welche Betriebssystemleistungen ausführen
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Welche Modi hat das Betriebssystem zur Auswahl?

A
  • Benutzermodus, welcher nur die nichtpriviligierten Befehle des Prozessors zur Verfügung hat (Benutzer- oder Systemprozesse)
  • Systemmodus, welcher auch priviligierte Befehle zulässt (z.B. Routinen des Betriebssystem-Kerns)
  • Verwendung priviligierter Befehle im Benutzermodus führt bei vielen Betriebssystemen zu Fehlermeldungen
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Was ist die Prozessverwaltung

A
  • basiert auf Zustandsmodell, welches die Zustände, welche ein Prozess während seiner Existenz annehmen kann, sowie die zulässigen Zustandsübergänge enthält
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Welche Grundzustände für Prozesse gibt es?

A
  1. aktiv - der Prozess hat einen Prozessor zugeteilt bekommen und läuft
  2. bereit - der Prozess wartet auf die Zuteilung eines Prozessors
  3. wartend - der Prozess muss auf die Erfüllung mindestens einer Wartebedingung warten
  4. nicht existent - formaler Zustand für Prozesse, die noch nicht oder nicht mehr im System existieren
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Was ist der Kontext eines Prozesses?

A
  • enthält alle relevanten Informationen über einen Prozess und ist für die Verwaltung durch das Betriebssystem besonders wichtig
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Was sind die typischen Bestandteile des Prozess-Kontextes?

A
  1. Benutzer-Kontext: Inhalt des Adressraums des Prozesses, das Speicherabbild des Prozesses
  2. Hardware-Kontext: auch Register-Kontext oder Registerabbild, der Inhalt aller Prozessregister
  3. System-Kontext: Inhalt der betriebssysteminternen Verwaltungsdaten über den Prozess
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Was sind die Informationen, die im System-Kontext enthalten sind?

A
  1. Prozess-Identifikator: Name oder Nummer des Prozesses
  2. Auftrag/Auftraggeber: Pfadname des Programms, Name des auftraggebenden Benutzers
  3. Ablaufpriorität: wenn vom OS berücksichtigt
  4. Verwandschaftsbeziehungen: Identifikatoren von Vater- oder Sohnprozessen, falls es eine Prozesshierarchie gibt
  5. Zustand: Zustand des Prozesses
  6. Zugriffsrechte: vom Prozess für Dateien, Speicherbereiche etc.
  7. Betriebsmittel: angeforderte oder zugeteilte Betriebsmittel und eventuell Auslastung dieser
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Was ist ein Prozesswechsel?

A
  • die Änderung der Prozessorzuteilung
  • der aktive Prozess gibt den Prozessor entweder freiwillig ab oder wird ihm entzogen
  • Vorgang wird vom Prozessumschalter gesteuert, Auswahl des nächsten Prozesses wird durch den Scheduler bestimmt (anhand gewählter Strategie)
  • Wechsel kann in der Regel nur bei Unterbrechung stattfinden, Hardwareunterbrechung oder Softwareunterbrechung
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Was muss das Betriebssystem bei Prozesswechsel tuen?

A
  1. Sicherung des gesamten Kontext des unterbrochenen Prozesses
  2. Änderung des Zustandes des unterbrochenen Prozesses in bereit oder wartend, je nach Grund für die Unterbrechung
  3. Scheduling: Auswahl des nächsten, zu aktivierenden Prozesses
  4. Änderung des Zustands dieses Prozesses von bereit auf aktiv
  5. Wiederherstellung des Kontextes dieses Prozesses, durch das Laden des Prozessorregisters wird der Prozess fortgesetzt
17
Q

Was ist eine Kernsperre?

A
  • verhindert die Unterbrechung von Abläufen innerhalb eines Betriebssystem-Kerns
  • vollständige Kernsperre ist einfach und sicher, aber setzt voraus, dass im Kern keine Wartezustände auftreten
18
Q

Was ist ein Leerprozess?

A
  • eine Warteschleife, sodass er problemlos abgelöst werden kann, wird nur benötigt wenn beim Scheduling kein anderer Prozess laufbereit ist
19
Q

Was ist ein Thread?

A
  • ein Aktivitätsträger mit minimalem Kontext innerhalb eines Prozesses
  • Jeder Prozess besitzt mindestens einen initialen Thread, alle Threads die zum selben Prozess gehören, benutzen den gleichen Adressraum und andere Betriebsmittel des Prozesses
  • durch den gemeinsamen Kontext ist der Wechsel zwischen Threads desselben Prozesses sehr einfach
  • es ist allerdings zusätzliche Synchronisation der Threads nötig