デスクトップアプリケーションヒープを設定して不明なメモリエラーを防ぐ
アプリケーションが起動する場合、デスクトップアプリケーションヒープ(システムリソース)と言う特殊なメモリ領域も使われるそうだ。
デスクトップアプリケーションヒープ(システムリソース)とは
難しい用語を連呼するので、私なりに解釈した言い方をすれば「メモリ使用者の出退名簿」と言った所ですかネ。初期設定では3072KB(約3MB)が設定されているだとか。起動したアプリは、先ずデスクトップアプリケーションヒープに登録され起動終了で除外される。処が、終了したアプリが出退名簿に退出を書き忘れると、何時までも入場中のままとなり次の者が入場出来ない状態になる。
長時間のシステム稼動や、複数のアプリケーションの起動・終了を繰り返す内に、Windowsが重たく為ったように感じる原因です。
タスクマネージャを起動させ数値を見てみると解ります。
アプリの起動終了を繰り返す度に、物理メモリの利用可能数値が段々と減って行きます。
2号機での検証では下記の結果が出ました。
起動直後:物理メモリ合計/2096236KB、利用可能/1802600KB ⇒ Internet Explorerを起動し、WEBページを4~5ページ開く:利用可能/1770100KB ⇒ 以後、この繰り返しを6回行った結果:利用可能/1750748KB。
デスクトップアプリケーションヒープを増やせば、居座ってるアプリが居ても気にする事は無くなります。長時間のシステム起動時に発生する画面表示の不具合や原因不明のエラーを回避出来るそうだ。回避出来るとは語弊がありますネ。回避出来る訳ではなく、不具合が出るまでの時間が長くなるだけですから。
尚、この設定は現在エラーが出ているのなら兎も角、早急に設定しなくてはならないものでもないようです。転ばぬ先の杖と思う方は御試しあれ。
デスクトップアプリケーションヒープを増やす方法
操作キー:
HKEY_LOCAL_MACHINE\SYSTEM¥CurrentControlSet\Control\SessionManager\SubSysrems
設定値:
Windows ダブルクリックで開く⇒値のデータから下記の文面箇所を探す。
・・・¥Windows SharedSection=1024,3072,512・・・この3072の箇所を256 or 512単位で増やす(書き換える)。
更に、デスクトップアプリケーションヒープと一緒にIRPStackSizeの設定も施せば完璧のようです。IRPStackSize とは難しい語句で説明出来かねますので、デスクトップアプリケーションヒープの杖的設定だと例えますw。
操作キー:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\LanmanServer\Parameters
設定値:
IRPStackSize 値が無い場合は、新規⇒DWORD値⇒IRPStackSize。
値のデータを11~50(10進法)の範囲で設定。
当機の場合は、Windows:4096/IRPStackSize:20で設定してあります。ただ、設定値に此れと言った根拠は在りません。此れと言ったエラーもありません。何れにせよ、まめに再起動するが一番良いようですけど…(笑。
何時もながら設定は自己責任で御願いします。
| 固定リンク











コメント