目次:
定義-I / O要求とはどういう意味ですか?
I / O要求パケットは、WindowsドライブモデルとWindows NTデバイスドライバーの間、およびWindowsオペレーティングシステムとの通信に使用されるカーネルモード構造です。 多くの小さなデータ引数を転送するという古い規則に従う代わりに、すべてのデータの詳細が単一のポインターを介してデータ構造に渡されます。 これらのI / O要求は、多くの異なる処理段階を通過するように作成されます。 これらの段階は、単一層ドライバーまたは多層ドライブのターゲットデバイス向けであるかどうか、要求の性質によって決定されます。
TechopediaはI / Oリクエストを説明します
I / O要求パケットは、基本的にデバイスドライバーとオペレーティングシステム間の通信に使用されます。 特定のプロセスのブロックを解除し、完全に実行することができます。
最初のステップでは、以前に使用されたファイルのファイル記述子でブロッキング読み取りを発行するプロセスが開始されます。 オペレーティングシステムまたはカーネルのコードには、パラメーターの精度を確認するためのシステムコールコードがあります。 バッファキャッシュにすでにデータがある場合は、データが返され、要求が完了します。 バッファキャッシュにデータが見つからない状況では、物理I / Oが実行されます。 これにより、プロセスが実行キューから削除され、待機キューに配置されます。 その後、デバイスドライバーはI / Oサブシステムを介して要求を受け取ります。 着信データ用のスペースを確保し、I / Oをスケジュールするのは、デバイスドライバー次第です。 その後、デバイスコントローラーはデバイスハードウェア上で動作し、データ転送のプロセスを実行します。 DMAコントローラは、カーネルメモリへのデータの転送を管理および操作します。 転送が終了すると、これにより割り込みが作成され、割り込みベクトルテーブルを介して割り込みハンドラーによって受信されます。 重要な情報のデータをスキャンしてから、割り込みを返します。 次に、この信号はデバイスドライバーによって受信され、デバイスドライバーは要求を完了し、要求の状態も判断します。 最後に、待機キューから準備キューにプロセスを削除するのはカーネル次第であり、データはアドレス空間に転送されます。 この手順により、プロセスのブロックが解除されます。 したがって、プロセスがCPUに割り当てられると、作業を再開して完了します。
