物理メモリ管理
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
単語検索
|
最終更新
|
ヘルプ
]
開始行:
「[[マイクロソフト系技術情報 Wiki>http://techinfoofmicros...
-[[戻る>メモリ管理]]
* 目次 [#f1cf045e]
#contents
*概要 [#w249d97a]
物理メモリのライフサイクルについて説明する。~
※ [[仮想メモリ管理]]とは別です。
*物理メモリの割当・解放 [#o77090d8]
-システムの起動時には、全てのメモリが未使用ページリスト(...
-Windowsではゼロページスレッドが、未使用ページリストをゼ...
-プロセスは開始時に、ゼロページリストから必要なページのみ...
-プロセスの終了時には、[[ワーキングセット>#v4e3258b]]が未...
※ ゼロページスレッドによるゼロページ化はメモリ・スキャベ...
**割当 [#ye5a4235]
プロセスが(仮想記憶上で)メモリ割当を行った場合、
-可能ならば[[スタンバイリスト>#d5d9840d]]のページを[[ワー...
-(恐らく)無ければゼロページリストから必要なページのみを...
**解放 [#s5a27905]
プロセスが(仮想記憶上で)メモリ開放を行った場合、
-[[ワーキングセット>#v4e3258b]]中のメモリページがすぐに破...
-この場合、メモリページは[[ワーキングセット>#v4e3258b]]か...
*ワーキングセットとスタンバイリスト [#wdbcf8be]
**トリミング [#y6b8caa9]
ワーキングセットをスタンバイリストに移動するWindowsOSの物...
**ワーキングセット [#v4e3258b]
各プロセスに割り当てられる物理メモリ。
-各々のプロセスは、ワーキングセットと呼ばれるメモリページ...
-ワーキングセットは、常に物理メモリ上に割り当てられるメモ...
-ワーキングセットは、物理メモリのことなので、仮想メモリと...
-最小ワーキングセットサイズ ≦ ある瞬間の実際のワーキング...
-ワーキングセットに含まれるメモリページの数は~
システムによって動的に変化するが、上限と下限が定められて...
この上限と下限はSetProcessWorkingSetSize関数によって指定...
--MSDN ライブラリ > リファレンス > 関数 > SetProcessWorki...
http://msdn.microsoft.com/ja-jp/library/cc429341.aspx~
>内部動作に影響を与え、システム全体の性能に影響するため慎...
-プロセスがメモリ割り当てを行うと、システムはこのワーキン...
未使用のページを探し、これをメモリ割り当てに使用する。
-このため、ワーキングセットに関するカウンタは物理メモリの...
※ アプリケーションによるメモリ使用量(仮想メモリの使用量...
***プライベート ワーキングセット [#t11acf1b]
ワーキングセットのうち、他のプロセスと共有できない(DLL、...
***システム ワーキングセット [#g7ea375d]
システムに割り当てられる物理メモリ。≒ (ファイル)システ...
-Windows XP でシステム キャッシュ モードを有効にする場合...
http://support.microsoft.com/kb/895932/ja
-XPマシンをクリーニング&チューンアップ Windows XP快適化...
http://trendy.nikkeibp.co.jp/article/tokushu/gen/20051007...
--システムキャッシュとは使用されていないメモリをキャッシ...
--スタンバイ リスト(変更済みページリストを含む)が実質的...
-TechNet Blogs > Ask CORE > All Tags > リソース不足につい...
http://blogs.technet.com/b/askcorejp/archive/2009/12/29/1...
なお、システム キャッシュ (システム ワーキングセット)は、~
次の 5 種類のワーキングセットが合計されたサイズになる。~
パフォーマンス ログでは Memory\Cache Bytes カウンタを確認...
--システム キャッシュ ページ~
Memory\System Cache Resident Bytes
--ページ プール~
Memory\Pool Paged Resident Bytes
--Ntoskrnl.exe 内のページング可能なコードとデータ~
Memory\System Code Resident Bytes
--デバイス ドライバ内のページング可能なコードとデータ~
Memory\System Driver Resident Bytes
--システム マップドビュー~
・・・
**スタンバイリスト [#d5d9840d]
スタンバイリストは利用可能なページを溜め込んでいるリスト...
-ワーキングセットのサイズが過剰と判断された場合、[[トリミ...
アイドル時間が最も長いワーキングセットのページがスタンバ...
-長時間プロセスがメモリ割り当てを行わない場合、スタンバイ...
***通常のスタンバイリスト [#h44a2b1f]
スタンバイリストは、プログラムによって書き換えられていな...
***変更済みページリスト [#y5ccee95]
変更済みページリストは、プログラムによって書き換えられた...
ページングファイル(ディスク)に書き込まれた後に、スタン...
*ページ フォールト [#f8d1f700]
**ハード ページ フォールト [#kdd33639]
ワーキングセット中に未使用のメモリページが存在せず、メモ...
**ソフト ページ フォールト [#le3db81f]
また、利用中のワーキングセットのページがトリミングにより...
-ソフトページフォールト - NyaRuRuの日記~
http://d.hatena.ne.jp/NyaRuRu/20051022/p4
*ツール [#cadee27d]
**物理メモリのページ確認 [#i194a19a]
Windbgの以下のコマンドで確認できる。
0: kd> !memusage
loading PFN database
loading (100% complete)
Compiling memory usage data (99% Complete).
Zeroed: 173816 (695264 kb)
Free: 0 ( 0 kb)
Standby: 71317 (285268 kb)
Modified: 1387 ( 5548 kb)
ModifiedNoWrite: 561 ( 2244 kb)
Active/Valid: 145881 (583524 kb)
Transition: 16 ( 64 kb)
Unknown: 0 ( 0 kb)
TOTAL: 392978 (1571912 kb)
-kernel-mode memusage - NyaRuRuが地球にいたころ~
http://nyaruru.hatenablog.com/entry/20071026/p1
**(ファイル)システムキャッシュのサイズ設定 [#xda02feb]
以下の様なツールも存在する。
-Windows Sysinternals > ダウンロード > ファイルとディスク...
http://technet.microsoft.com/ja-jp/sysinternals/bb897561
>(ファイル)システムキャッシュのワーキングセットのサイズ...
*参考 [#j9d70ef8]
-メモリ管理~
http://nienie.com/~masapico/doc_MemMan.html
-ASCII.jp:メモリー使用量と性能を改善する7のカーネル改良 ...
http://ascii.jp/elem/000/000/514/514598/
-メモリ割り当てから解放までのメモリライフサイクル - Tech...
http://techtarget.itmedia.co.jp/tt/news/1201/25/news02.html
-Windows の管理: Windows Vista カーネルの内部 : 第 2 部~
https://technet.microsoft.com/ja-jp/magazine/2007.03.vist...
-[DOC]Windows のメモリ管理の進歩 - Microsoft~
https://msdn.microsoft.com/ja-jp/library/cc429281.aspx
----
Tags: [[:Windows]], [[:メモリ管理]], [[:障害対応]], [[:デ...
終了行:
「[[マイクロソフト系技術情報 Wiki>http://techinfoofmicros...
-[[戻る>メモリ管理]]
* 目次 [#f1cf045e]
#contents
*概要 [#w249d97a]
物理メモリのライフサイクルについて説明する。~
※ [[仮想メモリ管理]]とは別です。
*物理メモリの割当・解放 [#o77090d8]
-システムの起動時には、全てのメモリが未使用ページリスト(...
-Windowsではゼロページスレッドが、未使用ページリストをゼ...
-プロセスは開始時に、ゼロページリストから必要なページのみ...
-プロセスの終了時には、[[ワーキングセット>#v4e3258b]]が未...
※ ゼロページスレッドによるゼロページ化はメモリ・スキャベ...
**割当 [#ye5a4235]
プロセスが(仮想記憶上で)メモリ割当を行った場合、
-可能ならば[[スタンバイリスト>#d5d9840d]]のページを[[ワー...
-(恐らく)無ければゼロページリストから必要なページのみを...
**解放 [#s5a27905]
プロセスが(仮想記憶上で)メモリ開放を行った場合、
-[[ワーキングセット>#v4e3258b]]中のメモリページがすぐに破...
-この場合、メモリページは[[ワーキングセット>#v4e3258b]]か...
*ワーキングセットとスタンバイリスト [#wdbcf8be]
**トリミング [#y6b8caa9]
ワーキングセットをスタンバイリストに移動するWindowsOSの物...
**ワーキングセット [#v4e3258b]
各プロセスに割り当てられる物理メモリ。
-各々のプロセスは、ワーキングセットと呼ばれるメモリページ...
-ワーキングセットは、常に物理メモリ上に割り当てられるメモ...
-ワーキングセットは、物理メモリのことなので、仮想メモリと...
-最小ワーキングセットサイズ ≦ ある瞬間の実際のワーキング...
-ワーキングセットに含まれるメモリページの数は~
システムによって動的に変化するが、上限と下限が定められて...
この上限と下限はSetProcessWorkingSetSize関数によって指定...
--MSDN ライブラリ > リファレンス > 関数 > SetProcessWorki...
http://msdn.microsoft.com/ja-jp/library/cc429341.aspx~
>内部動作に影響を与え、システム全体の性能に影響するため慎...
-プロセスがメモリ割り当てを行うと、システムはこのワーキン...
未使用のページを探し、これをメモリ割り当てに使用する。
-このため、ワーキングセットに関するカウンタは物理メモリの...
※ アプリケーションによるメモリ使用量(仮想メモリの使用量...
***プライベート ワーキングセット [#t11acf1b]
ワーキングセットのうち、他のプロセスと共有できない(DLL、...
***システム ワーキングセット [#g7ea375d]
システムに割り当てられる物理メモリ。≒ (ファイル)システ...
-Windows XP でシステム キャッシュ モードを有効にする場合...
http://support.microsoft.com/kb/895932/ja
-XPマシンをクリーニング&チューンアップ Windows XP快適化...
http://trendy.nikkeibp.co.jp/article/tokushu/gen/20051007...
--システムキャッシュとは使用されていないメモリをキャッシ...
--スタンバイ リスト(変更済みページリストを含む)が実質的...
-TechNet Blogs > Ask CORE > All Tags > リソース不足につい...
http://blogs.technet.com/b/askcorejp/archive/2009/12/29/1...
なお、システム キャッシュ (システム ワーキングセット)は、~
次の 5 種類のワーキングセットが合計されたサイズになる。~
パフォーマンス ログでは Memory\Cache Bytes カウンタを確認...
--システム キャッシュ ページ~
Memory\System Cache Resident Bytes
--ページ プール~
Memory\Pool Paged Resident Bytes
--Ntoskrnl.exe 内のページング可能なコードとデータ~
Memory\System Code Resident Bytes
--デバイス ドライバ内のページング可能なコードとデータ~
Memory\System Driver Resident Bytes
--システム マップドビュー~
・・・
**スタンバイリスト [#d5d9840d]
スタンバイリストは利用可能なページを溜め込んでいるリスト...
-ワーキングセットのサイズが過剰と判断された場合、[[トリミ...
アイドル時間が最も長いワーキングセットのページがスタンバ...
-長時間プロセスがメモリ割り当てを行わない場合、スタンバイ...
***通常のスタンバイリスト [#h44a2b1f]
スタンバイリストは、プログラムによって書き換えられていな...
***変更済みページリスト [#y5ccee95]
変更済みページリストは、プログラムによって書き換えられた...
ページングファイル(ディスク)に書き込まれた後に、スタン...
*ページ フォールト [#f8d1f700]
**ハード ページ フォールト [#kdd33639]
ワーキングセット中に未使用のメモリページが存在せず、メモ...
**ソフト ページ フォールト [#le3db81f]
また、利用中のワーキングセットのページがトリミングにより...
-ソフトページフォールト - NyaRuRuの日記~
http://d.hatena.ne.jp/NyaRuRu/20051022/p4
*ツール [#cadee27d]
**物理メモリのページ確認 [#i194a19a]
Windbgの以下のコマンドで確認できる。
0: kd> !memusage
loading PFN database
loading (100% complete)
Compiling memory usage data (99% Complete).
Zeroed: 173816 (695264 kb)
Free: 0 ( 0 kb)
Standby: 71317 (285268 kb)
Modified: 1387 ( 5548 kb)
ModifiedNoWrite: 561 ( 2244 kb)
Active/Valid: 145881 (583524 kb)
Transition: 16 ( 64 kb)
Unknown: 0 ( 0 kb)
TOTAL: 392978 (1571912 kb)
-kernel-mode memusage - NyaRuRuが地球にいたころ~
http://nyaruru.hatenablog.com/entry/20071026/p1
**(ファイル)システムキャッシュのサイズ設定 [#xda02feb]
以下の様なツールも存在する。
-Windows Sysinternals > ダウンロード > ファイルとディスク...
http://technet.microsoft.com/ja-jp/sysinternals/bb897561
>(ファイル)システムキャッシュのワーキングセットのサイズ...
*参考 [#j9d70ef8]
-メモリ管理~
http://nienie.com/~masapico/doc_MemMan.html
-ASCII.jp:メモリー使用量と性能を改善する7のカーネル改良 ...
http://ascii.jp/elem/000/000/514/514598/
-メモリ割り当てから解放までのメモリライフサイクル - Tech...
http://techtarget.itmedia.co.jp/tt/news/1201/25/news02.html
-Windows の管理: Windows Vista カーネルの内部 : 第 2 部~
https://technet.microsoft.com/ja-jp/magazine/2007.03.vist...
-[DOC]Windows のメモリ管理の進歩 - Microsoft~
https://msdn.microsoft.com/ja-jp/library/cc429281.aspx
----
Tags: [[:Windows]], [[:メモリ管理]], [[:障害対応]], [[:デ...
ページ名: