OSの資源不足の監視、設定を行うためのモニタツール(Desktop Heap Monitor)
アプリケーションやサービスを起動しようとしたとき、エラーコード[0xc0000142]「アプリケーションを正しく初期化できませんでした」などのエラーが発生したり、システムイベントログに「デスクトップ ヒープの割り当てに失敗しました」と記録されたりしたことはありませんか。デスクトップ ヒープと呼ばれるメモリ領域が枯渇しているために、このような現象が発生している可能性があります。Desktop Heap Monitorはデスクトップ ヒープ使用量を表示させるコマンドラインツールです。
Desktop Heap Monitorはどうして役立つの?
従来は、デスクトップ ヒープが枯渇した状況を調べるには、ライブデバッグもしくは、完全メモリダンプからデバッグを行う必要があり、高いデバッグスキルを持つ限られた人しか解析できませんでした。Desktop Heap Monitorは稼働中システムにおいて、各デスクトップ ヒープの使用状況をコマンドプロンプト上に表示することができるツールです。高いデバッグスキルを持たなくても容易に稼働中システムのデスクトップ ヒープ使用量を確認することができます。

お客様は、本番稼動環境でもトラブル調査を実施することができるため、システムに影響を与えずに情報を採取できます。また、このツールを使ってWindows Serverのデスクトップ ヒープの使用量を事前に測定しておけば、システムのチューニングを行うことも可能となります。
なるほどコラム
デスクトップ ヒープの枯渇
一般的に「デスクトップ」とは、ログオン後に表示される画面のことを指しますが、ここでは、ログオンセッションごとにプロセスを管理するために作られる環境を意味します。
1つのログオンセッションには、1つ以上のデスクトップが存在します。デスクトップ ヒープとは、これらデスクトップ内で動作するアプリケーションが作成した、ウィンドウ、メニュー、ボタンなど画面部品のデータを管理するためにWindowsが使用するメモリ領域のことを指します。
デスクトップ毎にデフォルトで使用できるメモリ領域(デスクトップ ヒープ)はサイズがあらかじめ決められています。ウィンドウに何十個ものコントロールが使われてくると、このメモリが枯渇してしまうことがあります。どのWindows APIを使用すると、どのくらい獲得されるのか、といった指標は公開されていないため、アプリケーションがどの位のデスクトップ ヒープを消費するのかをあらかじめ知ることはできません。また、複数のサービスが同じユーザーアカウントを指定した場合でも、それぞれ別のデスクトップが作成され、対応するデスクトップ ヒープが消費されるので注意が必要です。

SupportDeskのご案内
SupportDeskをご契約いただければ、この種類の問題発生時には本ツールをサポート員の指示のもと実行することになります。そして採取された情報を当社で解析し、デスクトップヒープの枯渇状況かどうかを判断してお客様環境のチューニングを支援します。
