ホームページ  >  記事  >  プログラムの局所性の原理とは何ですか?

プログラムの局所性の原理とは何ですか?

藏色散人
藏色散人オリジナル
2022-01-24 14:23:1216151ブラウズ

プログラムの局所性の原則とは、プログラムが実行されるときに局所性規則を示すこと、つまり、一定期間内でプログラム全体の実行がプログラムの特定の部分に限定されることを意味します。実行によってアクセスされる記憶空間も特定のメモリ領域に限定され、局所性の原理は「時間的局所性」や「空間的局所性」とも表現されます。

プログラムの局所性の原理とは何ですか?

#この記事の動作環境: Windows 10 システム、Dell G3 コンピューター。

プログラムの局所性の原則とは何ですか?

プログラムの局所性の原則とは、プログラムが実行時に局所性規則を示すこと、つまり、一定期間内でプログラム全体の実行がプログラムの特定の部分に限定されることを意味します。 。同様に、実行によってアクセスされる記憶空間も特定のメモリ領域に制限されます。局所性の原理は、時間的局所性および空間的局所性とも表現されます。時間的局所性とは、プログラム内の命令が一度実行されると、その命令はすぐに再度実行される可能性があり、あるデータにアクセスされると、そのデータはすぐに再度アクセスされる可能性があることを意味します。空間的局所性とは、プログラムが特定のストレージ ユニットにアクセスすると、すぐに近くのストレージ ユニットにもアクセスされることを意味します。

プログラムの局所性の原理:

さらに、プログラムの局所性理論に基づいて、デニングはワーキング セット理論を提案しました。いわゆるワーキング セットとは、プロセスの実行中に頻繁にアクセスされるページのセットを指します。プログラムのワーキング セットがメモリに集中している限り、プロセスのページ フォールトの数を大幅に減らすことができることは明らかです。そうでない場合、プロセスの実行中にページ フォールトの中断が頻繁に発生し、その結果、ページ転送のイン/アウト現象が発生し、システム パフォーマンスが低下し、さらには「ジッター」が発生することがあります。

ワーキング セットは、固定時間または固定長ページの 2 つの方法で分割できます。スラッシングが発生した場合は、システム負荷が大きすぎることを示しており、通常はプロセッサー・バランシング・スケジューリングが使用されます。もう 1 つはページフォールト率の制御で、ページフォールト率が上限に達するとメモリ割り当て量を増やし、ページフォールト率が下限に達するとメモリ割り当て量を減らします。

関連知識の詳細については、FAQ 列をご覧ください。

以上がプログラムの局所性の原理とは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。