- PR -

boot.ini内のメモリに関するスイッチオプション

1
投稿者投稿内容
momoro
会議室デビュー日: 2006/11/10
投稿数: 4
投稿日時: 2006-11-12 13:51
Windowsサーバのboot.iniのメモリ関係のスイッチオプションについてどなた
かご教示お願いします。
メモリ管理の仕組みなどへの知識不足のため質問内容が漠然としているかもし
れませんが、よろしくお願い致します。

【OS環境】
Microsoft Windows Server 2003 R2 Enterprise Edition SP1 英語版 32-bit
※他に必要情報あれば可能な限りアップします。

【質問】
後述の「参考したサイト」などを読んでいて少し混乱しております。
たとえば物理メモリ8GBを搭載している場合で、/PAEオプションを使用しても
「カーネルモード、ユーザモードで合わせて仮想メモリ(=物理+スワップ領域)
を4GB使用する」という事は変わらないのでしょうか?

結局のところ、この8GB全てを実際にカーネルモードやユーザモードに活用させ
るにはどのようなオプションを使用すればよいでしょうか?
※特にユーザモード(OS上で動かすアプリケーション側)に多めに利用させたいと
考えております。


【参考したサイト】
http://support.microsoft.com/kb/283037/ja
このサイトの「>前述の情報は、/3GB スイッチが使用されている状態で実行さ
れるプログラムに対して有効です。」の辺りから分からなくなってきました。

http://www.microsoft.com/technet/prodtechnol/exchange/ja/guides/E2k3Perf_ScalGuide/e834e9c7-708c-43bf-b877-e14ae443ecbf.mspx?mfr=true
http://support.microsoft.com/kb/833721/ja
ちゃっぴ
ぬし
会議室デビュー日: 2004/12/10
投稿数: 873
投稿日時: 2006-11-12 15:15
引用:
たとえば物理メモリ8GBを搭載している場合で、/PAEオプションを使用しても
「カーネルモード、ユーザモードで合わせて仮想メモリ(=物理+スワップ領域)
を4GB使用する」という事は変わらないのでしょうか?



いいえ違います。
そのための技術が AWE(Address Windowing Extensions) です。

AWE とは名前(略称ではない方)を参照すればある程度推測できると思いますが、通常で使われる 4GB の memory 空間の user 部分に AWE window という 4GB 以上の memory を mapping する領域を確保します。

で、4GB を超える memory はその AWE window を通じて access される仕組みです。

/PAE switch を有効にすると、AWE が利用できるようになるので、2GB の system 領域および、2GB の user 領域(この中には AWE window が含まれるので実際はもっと少ない)、4GB の AWE で扱える user 領域という使い方が可能でしょう。

ただ、これがすべての application で有効かというとそうではなく、appliction によっては、AWE が有効になるように compile しなおしたり、設定を変更したりする必要がある場合もあります。
# これらの対応が行われていない場合には、4GB までしか利用できません。

ただ、/3GB と /PAE switch を併用するような特殊な状況は正直よくわかりません。
/PAE switch だけで問題ないと思いますけど?
momoro
会議室デビュー日: 2006/11/10
投稿数: 4
投稿日時: 2006-11-12 16:31
ちゃっぴ様

お世話になります。
早速のレスどうもありがとうございます!
大変勉強になりました。
引用:

4GB を超える memory はその AWE window を通じて access される仕組みです。


WebでAWEについての記述を調べた際、物理4GB以上の利用ではこの機能を利用する
しかないのかとは思ってはおりましたが、いまいち自信がありませんでした。
今回ご教示頂きおかげさまで確証を得ることが出来ました。

引用:

ただ、/3GB と /PAE switch を併用するような特殊な状況は正直よくわかりません。
/PAE switch だけで問題ないと思いますけど?


はい、/PAEで拡張して使用すれば/3GBでカーネルモード側を減らす必要は無いと
思っております。むしろできるだけカーネルモードの割り当て量を削ることは避け
たいと考えておりました。
アプリケーション側の設定でAWEに対応できるようですので、引き続きそちらを調べ
て適用してみたいと思います。
ありがとうございます。
ちゃっぴ
ぬし
会議室デビュー日: 2004/12/10
投稿数: 873
投稿日時: 2006-11-12 17:59
ちなみにもちょっと補足しておきますと、
AWE に対応していない application のみを動かす場合で PAE のみを有効にした場合でも、4GB 以上の memory が全く利用されないわけではありません。

そういった memory は system cache として利用されます。
momoro
会議室デビュー日: 2006/11/10
投稿数: 4
投稿日時: 2006-11-13 16:42
引用:

AWE に対応していない application のみを動かす場合で PAE のみを有効にした場合でも、4GB 以上の memory が全く利用されないわけではありません。

そういった memory は system cache として利用されます。


ちゃっぴ様

返信遅くなりすみません。
そうなんですね、勉強になります!
そうでしたらAWE利用する際、若干容量に余裕をつようなかたちで
アプリケーション側のAWE設定を実施したいと思います。
ありがとうございます。

momoro
会議室デビュー日: 2006/11/10
投稿数: 4
投稿日時: 2006-11-14 16:24
すみません、追加で質問させていただきます。

カーネルモード、ユーザモードという枠のレベルでそれぞれ使用している
メモリ使用量などをパフォーマンスモニタで取得することは出来ますか?
もしできるようでしたら、
「このカウンタで直接これらの値がでる」、もしくは
「複数カウンタを使用し計算すれば得られる」などの
具体的な情報を頂けませんでしょうか?

目的としては、アプリケーション側のAWE対応などの一切を行う前に、現状で
ユーザモードが2GBを超える時があるか否か知りたいためです。
現状のスイッチオプションは/PAEあり、/3GBなしです。

どなた様かよろしくお願いします。
1

スキルアップ/キャリアアップ(JOB@IT)