0

オペレーティング システムの概念に関して... データを表すものとコードを表すものの 2 つのワーキング セットを持つプロセスはありますか?

4

4 に答える 4

2

ワーキング セット」は、オペレーティング システムの仮想メモリ管理に関連する用語ですが、抽象的な概念です。

ワーキング セットとは、アプリケーションが現在処理している仮想メモリ ページのセットと、処理していない他のページがあるという概念です。アプリケーションによって現在使用されているページは、定義上「ワーキング セット」の一部であるため、2 つ持つことは不可能です。

オペレーティング システムは、さまざまなページ アクセス許可とメモリ保護を使用してプロセス内のコードとデータを区別することがよくありますが、これは「ワーキング セット」とは異なる概念です。

于 2010-05-12T00:41:23.420 に答える
0

ご存知のように、ワーキングセットは、スラッシングを回避するためにプロセスがプライマリストアに持つ必要のあるページのセットです。これらの一部がコードであり、他のデータである場合、それは問題ではありません。重要なのは、プロセスがこれらのページに定期的にアクセスする必要があるということです。

ワーキングセットをコードとデータ、場合によっては他の分類に細分化して、ワーキングセットを構成するページをモデル化する場合は問題ありませんが、ワーキングセット全体は、これらの方法に関係なく、必要なすべてのページです。ページは分類されています。

編集:I / Oのブロック-これはワーキングセットに影響しますか?

ワーキングセットは、特定の期間に使用されたページのモデルであることを忘れないでください。プロセスがブロックされる時間の長さがモデル化されている期間と比較して短い場合、それはほとんど変化しません-待機は重要ではなく、考慮されている期間にわたるワーキングセットは影響を受けません。

しかし、モデル化されたpreriodと比較してI / O待機が長い場合、それは大きく変化します。プロセスがブロックされている間、ワーキングセットは空です。OSは、これに基づいて、理論的にはすべてのプロセスのページを入れ替えることができます。

ワーキングセットモデルは、過去の動作に基づいて、プロセスに必要なページを予測しようとします。この場合、プロセスが時間t + 1でまだブロックされている場合、空のワーキングセットのモデルは正しいですが、プロセスのブロックが解除されるとすぐに、そのワーキングセットは空ではなくなります-モデルによる予測それでもページは必要ないと言っているので、モデルの予測力は崩壊します。しかし、これは予想されることです-あなたは本当に未来を予測することはできません。通常は。そして、ワーキングセットは時間とともに変化すると予想されます。

于 2010-05-12T00:45:37.597 に答える
0

この質問は、本「オペレーティング システムの概念」からのものです。彼らが探している答え (Web 上の他の場所で見つけたもの) は次のとおりです。

はい、実際、多くのプロセッサはまさにこの理由で 2 つの TLB を提供しています。たとえば、プロセスによってアクセスされるコードは、同じワーキング セットを長期間保持する場合があります。ただし、コードがアクセスするデータは変更される可能性があるため、データ アクセスのワーキング セットの変更が反映されます。

これは合理的に思えますが、他のいくつかの回答とは完全に矛盾しています...

于 2015-06-23T15:23:43.753 に答える
0

これはOSに依存します。

しかし、Windows のような一般的な OS では、データとコードの間に実際の違いはないので、データとコードのワーキング セットを分割することはできません。

于 2010-05-12T00:37:17.360 に答える