コマンド「wmic memphysical get maxcapacity」が間違った数値を返す

コマンド「wmic memphysical get maxcapacity」が間違った数値を返す

私は長い間、16G (8gx2) のメモリを搭載したラップトップを使用してきました。16G のメモリはすべて問題なく使用できますが、wmic memphysical get maxcapacity今日実行すると 8388608 (8G) が表示され、どうやら間違っているようです。コマンドの何が間違っているのでしょうか? さらに重要なのは、正しい数値を取得する方法があるかどうかです。

答え1

MaxCapacity はキロバイト単位です。

ソースドキュメントはこちら

ドキュメントはわかりにくいですが、これが私の考えです。

ドキュメンテーション

MaxCapacity は次のようになります:

この特定のメモリ配列にインストール可能な最大メモリ サイズ (バイト単位)。サイズが不明な場合、プロパティの値は 0 (ゼロ) になります。

ただし、MaxCapacity には DEPRECATED 修飾子もあり、次のように定義されています。

非推奨

データ型: CIM_BOOLEAN

適用対象: プロパティ、クラス

プロパティが別のプロパティに置き換えられたことを示します。

MaxCapacityEx も同じ定義です:

この特定のメモリ配列にインストール可能な最大メモリ サイズ (バイト単位)。サイズが不明な場合、プロパティの値は 0 (ゼロ) になります。

しかし、単位は

単位(「キロバイト」)

使用事例

コマンドを使用するとwmic memphysical get MaxCapacity、結果が得られます16777216

1677216バイトは16MBです

1677216キロバイトは16GBです

16 MB はまったく意味をなさないので、おそらくキロバイト単位で返されます。

スロットあたりの最大容量

8388608キロバイトは8Gbです

コマンドを使用してwmic memphysical get MaxCapacity, MemoryDevices、各スロットの最大容量とマザーボード上のスロットの数を確認します。

私のアウトプットは:

MaxCapacity  MemoryDevices
16777216     2

関連情報