Freigeben über


SCSI-Port-Treiber-Warteschlangenverwaltung

SCSI-Hostadapter variieren stark in der Menge der E/A-Anforderungen, die sie verarbeiten können. Um zu vermeiden, dass die Fähigkeit eines bestimmten Hostadapters überwältigt wird, muss entweder der Speicherklassentreiber oder der Speicherporttreiber fähig sein, den Fluss von E/A-Anforderungen zu steuern.

In der Microsoft Windows-Speicherarchitektur behandelt der SCSI-Porttreiber die meisten Aspekte der E/A-Flusssteuerung. Speicherklassentreiber können daher eine beliebige Anzahl von E/A-Anforderungen an den SCSI-Port weiterleiten, ohne die Grenzen bestimmter Adapter zu testen. Der SCSI-Port akzeptiert außerdem explizite Anforderungen von Speicherklassentreibern, die Queue-Verarbeitung anzuhalten.

Der SCSI-Porttreiber wird beschrieben, seine E/A-Anforderungswarteschlange einzufrieren, wenn die Verarbeitung der in die Warteschlange eingestellten Anforderungen als Reaktion auf eine von der zugrunde liegenden Hardware gemeldete Fehlerbedingung angehalten wird. Es wird gesagt, dass der SCSI-Port die E/A-Anforderungswarteschlange sperrt, wenn die Verarbeitung als Reaktion auf eine explizite Anforderung des Klassen-Treibers oder eines anderen höherstufigen Treibers angehalten wird.

In den folgenden Abschnitten werden die Bedingungen beschrieben, die dazu führen, dass der SCSI-Port den Status der Warteschlange ändert. Außerdem werden die SRBs beschrieben, die Treiber höherer Ebene verwenden können, um die Kontrolle über die interne E/A-Anforderungswarteschlange des SCSI-Ports auszuüben.