Я долгое время пользовался ноутбуком с памятью 16G (8gx2), я могу использовать всю память 16G без проблем, но wmic memphysical get maxcapacity
сегодня запустил, но выдало 8388608 (8G), видимо, неправильно, что не так с командой? И что еще важнее, есть ли способ получить правильное число?
решение1
MaxCapacity указывается в килобайтах.
Документация запутанная, но вот что я думаю.
Документация
Там сказано, что MaxCapacity составляет:
Максимальный размер памяти (в байтах), устанавливаемый для данного массива памяти. Если размер неизвестен, свойству присваивается значение 0 (ноль).
Однако у MaxCapacity также есть устаревший квалификатор, который определяется следующим образом:
Устаревший
Тип данных: CIM_BOOLEAN
Применимо к: свойствам, классам
Указывает, что свойство было заменено другим свойством.
MaxCapacityEx имеет такое же определение:
Максимальный размер памяти (в байтах), устанавливаемый для данного массива памяти. Если размер неизвестен, свойству присваивается значение 0 (ноль).
Но также указывает, что единицы измерения
Единицы («килобайты»)
Вариант использования
Когда я использую команду wmic memphysical get MaxCapacity
, я получаю результат 16777216
.
1677216 байт это 16 Мб
1677216 килобайт это 16 Гб
16 Мб просто не имеет смысла. Поэтому, вероятно, он возвращает килобайты.
Ваша максимальная емкость на слот
8388608 килобайт это 8 Гб
Используйте команду wmic memphysical get MaxCapacity, MemoryDevices
, чтобы узнать максимальную емкость каждого слота и количество слотов на вашей материнской плате.
Мой вывод::
MaxCapacity MemoryDevices
16777216 2