80

Как Mac OS X может определить, какая память находится в машине? Например, я работал над тем, у которого была оперативная память DDR3 с частотой 1600 МГц, и я думал, что невозможно узнать ОЗУ, не открыв корпус и не посмотрев на него.Как это можно сделать в других системах?

8 ответов8

147

На RAM-флешках есть небольшой чип, называемый Serial Presence Detect, который содержит такую информацию, как емкость, предпочтительные тайминги, производитель и даже серийный номер.

Информация SPD доступна операционным системам, использующим шину i2c (которая также включает такие элементы, как датчики температуры). Я думаю, что вы можете напрямую читать SPD из Linux, используя различные утилиты i2c.

Это изображение из статьи в Википедии имеет хорошую картину этого:е

47

В Windows:

wmic memoryChip get /?

Предоставит вам различную информацию ОЗУ, которую вы можете запросить прямо из командной строки.

Например,

wmic memorychip get serialnumber

Дает вам серийный номер. Вы также можете использовать Speed , Model иногда, Manufacturer и многое другое.

WMI - это метод Windows для запроса данных SMBIOS . Apple, Linux, Windows и все, кто хочет работать на большинстве аппаратных средств, должны поддерживать SMBIOS на некотором уровне по разным причинам.

Вы можете использовать SMBIOS (например, через WMI или WMIC в Windows), чтобы также собирать информацию о жестком диске, информацию о сети (это карта 10/100 или 10/100/1000?).

Чтобы сделать еще один шаг вперед, у каждого производителя есть код для MAC-адресов на сетевых картах. RAM также имеет код производителя. Поэтому все, что вам нужно сделать, чтобы получить их код, например, мои 2 x2 ГБ в этом ноутбуке - 830B, - это создать базу данных для производителей (830B может быть одной торговой марки, а затем перепродаваться!) а также какие модели означают что. Я полагаю, что именно так работает CPUz - базовые запросы и действительно полная и актуальная база данных.

18

Скорость и тип памяти согласовываются с BIOS и могут быть прочитаны операционной системой.

На http://www.computermemoryupgrade.net/index1.html есть очень хороший веб-сайт, который дает вам более глубокий уровень понимания этих вещей.

Но вы можете легко определить, какие типы и скорость у вас есть, не открывая крышку, с помощью:

Apple -> Об этом Mac -> Подробнее -> Системный отчет

Открытое оборудование -> Память

Вы должны увидеть каждую флешку RAM, включая Размер, Тип и Скорость (и для интереса, Статус, чтобы убедиться, что все в порядке)

Системный отчет с памятью

13

Во многих дистрибутивах Linux (например, Debian) вы можете использовать аппаратный список lshw

sudo lshw |grep DDR
         description: SODIMM DDR3 Synchronous 1067 MHz (0.9 ns)
         description: SODIMM DDR3 Synchronous 1067 MHz (0.9 ns)

Я предполагаю, что RAM, как и все остальное оборудование, сообщает о своем описании и возможностях ОС. Если Linux может сделать это, я не вижу причин, почему OSX не может.

Если в вашем дистрибутиве не установлен lshw, вы можете установить его с помощью менеджера пакетов, например

aptitude install lshw

или загрузите его с веб-сайта проекта.

9

На Mac OS X запускается из терминала:

$ system_profiler SPMemoryDataType
4

ОЗУ хранит данные о времени, скорости и типе на небольшом чипе. Как ваш компьютер знает, как быстро запустить оперативную память без повреждения данных? Тот же чип. Apple просто выбирает отображение этих данных.

2

В дополнение ответ ultrasawblade, в на Linux, чтобы декодировать данные SPD, вы можете использовать decode-dimms perl скрипт из i2c-инструментов:

sudo modprobe -a i2c-i801 eeprom
decode-dimms

Или для оригинального HTML-формата:

decode-dimms -f | w3m -T text/html

(w3m - текстовый браузер / пейджер). Или конечно:

decode-dimms -f > dimms.html
xdg-open dimms.html
1

Speccy - это программа для Windows, которая расскажет вам много разных вещей о вашем компьютере, включая тип ОЗУ / размер / общее количество слотов / доступные слоты.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .