3

ハードディスクにデータを読み書きするスピンドルはハードディスクに1つしかないと言われていますが、2つ以上のデータを同時にハードディスクに読み書きするにはどうすればよいでしょうか。使用されているオペレーティング システムは Windows XP です。同時に発生します。これはどのように起こりますか?

4

1 に答える 1

8

これらの操作はまったく同時ではありませんが、オペレーティングシステムは両方の操作を同時に管理します。

何が起こるかというと、ファイルマネージャー(たとえば、Windowsエクスプローラー)は、2つのコピー操作ごとに1回ずつ、ある場所から別の場所にファイルをコピーするようにオペレーティングシステムに指示します。

オペレーティングシステムは、このコマンドを自身のシステムの2つの部分、「ファイルシステム」と「ディスクドライバ」に分割します。ファイルシステムは、問題の特定のファイルに関連付けられているディスク上のブロックを特定し、それらのブロックの読み取りまたは書き込みをディスクドライバーに指示します。

ディスクドライバは、読み取りと書き込みのキューを構築し、それらを満たすための最も効率的な方法を見つけ出します。デスクトップオペレーティングシステムは通常、システムを可能な限り応答させるために、これらの要求を迅速に処理しようとしますが、サーバーオペレーティングシステムは、ブロック操作を可能な限りキューに入れて、可能な順序でそれらを処理できるようにします。ブロックの順序を最も効率的に使用します。

ディスクドライバがブロック操作を実行することを決定すると、ディスクにヘッドを移動してデータの読み取りまたは書き込みを行うように指示します。その後、アクションの結果はファイルシステムに戻され、最終的にはユーザーアプリケーションに渡されます。

操作が同時に表示されるという事実は、オペレーティングシステムのマルチタスク機能の幻想にすぎません。複数のファイルのコピーには1つのコピーよりも少し時間がかかるため(同時に大量のファイルを作成しようとしている場合は、かなり長くかかることもあります)、これは非常に簡単に識別できます。

もちろん、実際に異なるディスクである場合でも、OSは2つの別々のドライブを同時に移動できます。

于 2011-07-26T19:00:14.217 に答える