vms_iowait, vms_iowaitf-Kernel-Services
Zweck
Wartet auf den Abschluss aller Auslagerungsoperationen für Seiten im virtuellen Speicherobjekt.
Syntax
Parameter
| Element | Beschreibung |
|---|---|
| vmid | Gibt das virtuelle Speicherobjekt an, auf das gewartet werden soll |
| Flags | Optionale Flags, die vom Benutzer übergeben werden |
Beschreibung
Der Kernel-Dienst vms_iowait erfüllt zwei Aufgaben. Zunächst wird die E/A-Ebene ermittelt, bei der alle derzeit geplanten Auslagerungen für das durch den Parameter vmid angegebene virtuelle Speicherobjekt abgeschlossen sind. Dann versetzt der vms_iowait-Dienst den aktuellen Prozess in einen Wartezustand, bis diese E/A-Stufe erreicht ist.
Der Wert für die E/A-Stufe ist die Anzahl der Auslagerungsoperationen, die für jedes virtuelle Speicherobjekt beibehalten werden.
Die E/A-Ebene berücksichtigt die Verarbeitung außerhalb der Reihenfolge, indem die E/A-Ebene für neue Auslagerungsanforderungen nicht erhöht wird, bis alle vorherigen Anforderungen abgeschlossen sind. Aus diesem Grund können Prozesse, die auf verschiedenen E/A-Ebenen warten, nach Abschluss einer einzelnen Auslagerungsoperation aktiviert werden.
Wenn der Aufrufer die Kernelsperre hält, gibt der Dienst vms_ iowait die Kernelsperre frei, bevor er wartet, und nimmt sie anschließend wieder ein.
Die Funktion vms_iowait ist ein Spezialfall der Funktion vms_iowaitf, bei der das Flag V_WAITERR gesetzt ist.
Flags
| Ihren Namen | Zweck |
|---|---|
| V_WAITERR | Wartet, bis die gesamte Ein-/Ausgabe abgeschlossen ist, sofern kein Fehler auftritt. |
| V_WAITALL | Wartet, bis die gesamte Ein-/Ausgabe abgeschlossen ist, unabhängig davon, ob E/A-Fehler auftreten. |
Ausführungsumgebung
Die Kernel-Dienste vms_iowait und vms_iowaitf können nur aus der Prozessumgebung aufgerufen werden.
Sie können nur von Dateisegmenten verwendet werden.
Rückgabewerte
| Element | Beschreibung |
|---|---|
| 0 | Gibt an, dass die Auslagerungsoperationen abgeschlossen sind. |
| EIO | Zeigt an, dass während der Ein-/Ausgabe ein Fehler aufgetreten ist. |