• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:特定のプロセスだけディスクへのスワップを禁止する方法はありますか?)

特定のプロセスだけディスクへのスワップを禁止する方法

このQ&Aのポイント
  • 特定のプロセスだけディスクへのスワップを禁止する方法はありますか?
  • 物理メモリ上のデータがあふれた場合や、あまり頻繁に使わなさそうなデータはOSが選択的にディスク上の仮想メモリへスワップアウトするわけですが、このときに特定のプロセスのデータだけスワップアウトしないようにする事はできますか?
  • 特定のアプリケーションだけ頻繁に使うので、そのアプリのデータだけスワップさせたくないという事です。現状で、自分のPCは1.5Gのメモリを積んでいて、タスクマネージャのコミットチャージで見ると900Mぐらいしか使っていません。600Mもあれば、ひとつのアプリのプロセスを載せるには十分だと思います。

質問者が選んだベストアンサー

  • ベストアンサー
  • MrBan
  • ベストアンサー率53% (331/615)
回答No.1

> このときに特定のプロセスのデータだけスワップアウトしないようにする事はできますか? 「そのようなプログラムの書き方をすれば(そういう専用プロセスなら)」 物理メモリをある程度強制的にコミットすることも可能ですが 既存のプロセスをそのようにすることはできません。 (こういうプログラムはメモリが足りないと失敗するので一般的ではないです<仮想化の恩恵を受けられない)、 よって、恐らく質問者さんの望むことはできません。 # よく使ってるものや前面にあるものなどは極力スワップアウトしない筈なので、 # 多分、明示的に指定しなくてもそうなってる可能性も高そうですが…。

subarist00
質問者

お礼

ご回答ありがとうございました。今のOSではそこいらへんが限度なんですね。 まさに操作中のアプリでも、物理メモリが500M以上は残っているはずなのにハードディスクをガリガリやり始めたりします。この辺が不満なんですけどね。

すると、全ての回答が全文表示されます。

その他の回答 (1)

  • MrBan
  • ベストアンサー率53% (331/615)
回答No.2

メモリがどれだけ余っていようが「ファイルアクセス」が必要なソフトもありますし(アプリ次第)、 アクセスしてるのはアンチウィルスソフトだったとかOSの管理機能だったとかいうこともありえますし、 見た目の残容量と実際の容量が違ったりすることもありますし…。 # 「全体では500MB余ってる」といっても実際に500MB取れるとは限らないのです。 まぁWindowsは一応個人ユースですから、ソフトの方も一般向け ・スワップしないアプリにすると、メモリがないと動かなくなる   ⇒一般には「売れない」 ・メモリがなくても動くようなアプリにすると、スワップされる可能性あり   ⇒商用ソフトは(専用ソフトを除けば)普通こう作る 要件に合致しないですから、まぁ難しいかと。

subarist00
質問者

お礼

まあ、そういうことなんでしょうね。お付き合いありがとうございました。 アプリが自分でテーブル値や処理中のデータをテンポラリなファイルに一時保存しているなどアプリ側でやってるのなら仕方ないのですが、OS側で前面表示のアプリを優先的にメモリに残すなんていう選択的なことができるのなら、それを全自動にせずに少しユーザーに開放してくれてもいいんじゃないか、と言う程度のことです。 実際、画像処理や解析計算でテンポラリの大容量データができる事は結構あるのですが、仕事でPCを使っているとそういう人は多いと思います。

すると、全ての回答が全文表示されます。

関連するQ&A