ソフトウェアロックアウトとは
ソフトウェアロックアウトは、マルチプロセッサシステムで発生する可能性のあるコンピューターの問題です。 このロックアウトは、コンピューターのパフォーマンスを劇的に低下させ、追加のプロセッサー機能の使用を妨げる可能性があります。 最新のマルチプロセッサコンピュータでは、ソフトウェアロックアウトの誤動作を回避するために、特別なオペレーティングシステムソフトウェアを使用する必要があります。
ソフトウェアロックアウトの発生は、IBMの科学者であるStuart Madnickによって1968年に初めて説明されました。コンピューターの歴史のこの初期段階で、Madnickは、今後数十年でパーソナルコンピューターが小型で安価になると予測しましたが、おおよそ制限され続けます同じデータ転送速度。 この予測はほぼ正しいことが判明し、多くの場合、プロセッサを追加するだけでコンピューターの有用な能力が向上します。
ソフトウェアロックアウトの主な原因は、エラー自体ではなく、機能です。 複数のプロセッサが相互にリンクされているコンピュータでは、複数のプロセッサがそれぞれ同じ情報を処理することに利点はありません。 実際、異なるプロセッサがそれぞれ単一のデータソースを変更しようとすると、元のレコードが破損する可能性があります。 複数のユニットが同じ情報を開くのを防ぐため、1つのプロセッサのみがアクセスを許可され、残りの処理コンポーネントはファイルから「ロックアウト」されます。
このロックアウト方式は、プロセッサーの数が少ないコンピューターに有効です。 ただし、幅広い処理ユニットがリンクされているデバイスでは、アプローチが問題になります。 ソフトウェアのロックアウトは、コンピューターに複数のプロセッサーを追加する際のスケーラビリティーと有効性を厳しく制限します。これは、ストレージスペースとプロセッサー間でデータを配信する速度に制限があるためです。
コンピューターを含め、完全に効率的なマシンはありません。 この固有の非効率性は、マルチプロセッサコンピューターではさらに悪化します。 たとえば、16個のプロセッサを搭載したコンピューターでは、データを必要なだけ迅速に配信できないため、プロセッサの1つが常にアイドル状態になる場合があります。 ある時点で、複合非効率性は、コンピューター内のプロセッサーの数を増やすことはもはや有用ではないことを意味します。 データ速度が制限されており、冗長プロセッサの大部分が一定のソフトウェアロックアウトでスタックしているため、システムに1000個のプロセッサを追加しても意味がありません。
ソフトウェアのロックアウトは、複数のプロセッサ用に特別に設計されたオペレーティングシステムを使用することで最小限に抑えることができます。 特殊なソフトウェアは、データソースをさまざまな部分に分割し、これらの部分をプロセッサに配布できます。 この方法では、各ユニットが元のデータの小さなコンポーネントを処理できるため、プロセッサをロックアウトする必要が少なくなります。 基本的に、マルチプロセッサソフトウェアは、各処理ユニットに常にタスクを持たせ、データをより分散的かつ均等に分散させます。