Linux производитель оперативной памяти

Получение информации о компьютере на UNIX

В данной статье пойдет речь о способах сбора сведений об оборудовании компьютера, который находится под управлением операционных систем семейства UNIX, такие как Linux и BSD. Также, будет немного затронута часть получения системной информации. Действия будут выполняться из командной строки без графической оболочки — их можно выполнить, подключившись к компьютеру удаленно по SSH.

Информация о процессоре

Команды для получения данных о процессоре.

1. lscpu (Linux)

Команда показывает информацию о характеристиках процессора в удобном виде:

Architecture: x86_64
CPU op-mode(s): 32-bit, 64-bit
Byte Order: Little Endian
CPU(s): 8
On-line CPU(s) list: 0-7
Thread(s) per core: 1
Core(s) per socket: 4
Socket(s): 2
NUMA node(s): 1
Vendor ID: GenuineIntel
CPU family: 6
Model: 62
Model name: Intel(R) Xeon(R) CPU E5-2650 v2 @ 2.60GHz
Stepping: 4
CPU MHz: 2592.918
BogoMIPS: 5187.50
Hypervisor vendor: VMware
Virtualization type: full
L1d cache: 32K
L1i cache: 32K
L2 cache: 256K
L3 cache: 20480K
NUMA node0 CPU(s): 0-7

* больше всего нас интересует:

  • Architecture — архитектура процессора — 32 бит или 64.
  • Core(s) per socket — количество ядер на процессор.
  • Socket(s) — количество физических/виртуальных процессоров.
  • CPU(s) — суммарное количество процессорных ядер.
  • Model name — модель процессора.

2. sysctl -a (FreeBSD)

Команда отображает множество данных, поэтому добавляем фильтр:

sysctl -a | egrep -i ‘hw.machine|hw.model|hw.ncpu’

hw.model: Intel(R) Xeon(R) CPU X5690 @ 3.47GHz
hw.machine: amd64
hw.ncpu: 2

* на самом деле, команда sysctl работает и в Linux, но формат вывода менее удобен, по сравнению с вышерассмотренной lscpu.

3. Файл /proc/cpuinfo (Linux)

Позволяет увидеть подробную информацию по каждому ядру:

Команда для подсчета количества ядер:

cat /proc/cpuinfo | grep processor | wc -l

4. Температура процессора

Linux

Сначала необходимо установить утилиту.

yum install lm_sensors

apt-get install lm-sensors

После установки утилиты выполняем:

FreeBSD

Загружаем необходимый модуль:

* для автоматической его загрузки добавляем в файл /boot/loader.conf строку coretemp_load=»YES»

sysctl -a | grep temperature

dev.cpu.0.temperature: 40.0C
dev.cpu.1.temperature: 41.0C

Информация об оперативной памяти

1. Файл /proc/meminfo (Linux)

MemTotal: 8010284 kB
MemFree: 1058580 kB
MemAvailable: 2791616 kB
Buffers: 1884 kB
Cached: 1754092 kB
SwapCached: 122280 kB
Active: 4330296 kB
Inactive: 2006792 kB
Active(anon): 3623768 kB
Inactive(anon): 983120 kB
Active(file): 706528 kB
Inactive(file): 1023672 kB
Unevictable: 0 kB
Mlocked: 0 kB
SwapTotal: 1048572 kB
SwapFree: 597684 kB
Dirty: 20 kB
Writeback: 0 kB
AnonPages: 4466532 kB
Mapped: 92808 kB
Shmem: 25776 kB
Slab: 408732 kB
SReclaimable: 308820 kB
SUnreclaim: 99912 kB
KernelStack: 7312 kB
PageTables: 23276 kB
NFS_Unstable: 0 kB
Bounce: 0 kB
WritebackTmp: 0 kB
CommitLimit: 5053712 kB
Committed_AS: 3770324 kB
VmallocTotal: 34359738367 kB
VmallocUsed: 159328 kB
VmallocChunk: 34359341052 kB
HardwareCorrupted: 0 kB
AnonHugePages: 3248128 kB
HugePages_Total: 0
HugePages_Free: 0
HugePages_Rsvd: 0
HugePages_Surp: 0
Hugepagesize: 2048 kB
DirectMap4k: 257984 kB
DirectMap2M: 8130560 kB

* чаще всего, самое важное:

  • MemTotal — общий объем оперативной памяти.
  • MemFree — объем памяти, который не используется системой.
  • Buffers — память, которая в данным момент ожидает записи на диск.
  • Cached — объем, задействованный под кэш чтения с диска.
  • MemAvailable — объем памяти, доступной в распределители без необходимости обмена.
  • SwapTotal — объем файла подкачки.
  • SwapFree — свободный объем файла подкачки.

* Объем используемой памяти = MemTotal – MemFree — Cached — Buffers.

Для перевода килобайт в гигабайты можно воспользоваться онлайн калькулятором.

2. free (Linux)

Данная команда позволяет получить информацию об использовании памяти в удобной таблице. Для еще большего удобства, мы выведем ее с помощью дополнительного параметра -h:

Читайте также:  Что такое файловый сервер windows

total used free shared buff/cache available
Mem: 3,7G 568M 378M 193M 2,8G 2,6G
Swap: 4,0G 94M 3,9G

Источник

Информация об оперативной памяти в Linux. Свободная, занятая и тип памяти

В этой статье мы рассмотрим, как получить информацию об оперативной памяти (RAM) в Linux.

Мы воспользуемся утилитами командной строки доступными для большинства Linux дистрибутивов.

Свободная и занятая оперативная память

Для получения информации о количестве свободной и занятой оперативной памяти в Linux можно использовать различные утилиты и команды. Рассмотрим несколько распространенных способов.

Команда free

Команда free очень простая, она выводит информацию о общем количестве оперативной памяти, о количестве занятой и свободной памяти, а также об использовании файла подкачки.

По умолчанию объем памяти выводится в килобайтах. Используя опции, можно выводить объем памяти в других форматах. Некоторые опции:

  • -m — в мегабайтах
  • -g — в гигабайтах
  • -h — автоматически определить формат

Команда vmstat

Команда vmstat выводит различную статистику по использованию памяти. Используя ключ -s можно вывести подробную статистику в табличном виде.

Команда top

top — это утилита командной строки, которая используется для мониторинга процессов и используемых ресурсов компьютера.

Запуск утилиты top :

В заголовке выводится информация об использованной оперативной памяти.

Команда htop

Утилита htop, также как и top, используется для мониторинга ресурсов и процессов.

Для установки утилиты htop в Ubuntu Linux (Linux Mint и других Ubuntu/Debian-дистрибутивах) выполните команду:

Запуск утилиты htop :

Файл /proc/meminfo

Описанные выше команды, в качестве источника информации используют системные файлы из файлов, хранящихся в виртуальной файловой системе /proc . В файле /proc/meminfo содержится информация об использовании памяти. Выведем содержимое файла /proc/meminfo :

Тип памяти и частота

Рассмотрим, как получить информацию об установленных в компьютер модулях оперативной памяти. Воспользуемся командной dmidecode

Используем следующую команду:

В выводе команды будет информация о слотах оперативной памяти. Для каждого слота отображается установленный модуль оперативной памяти, его тип (поле Type ), размер (поле Size ), скорость/частота (поле Speed ) и другая информация.

В зависимости от системы и оборудования не всегда удается получить все данные, поэтому некоторые поля могут быть пустыми или иметь надписи Not provided/Unknown.

Заключение

Мы рассмотрели различные способы для просмотра информации о доступной и занятой оперативной памяти, а также показали, как вывести информацию об установленных модулях оперативной памяти.

Для отслеживания использования ресурсов компьютера существует множество графических программ. Найти их можно в нашем каталоге программ для Linux в разделе Система/Мониторинг.

Источник

Узнать тип модулей памяти

Возможно ли программно узнать, какой тип памяти используется на компьютере, SDRAM, DDR SDRAM, DDR II SDRAM? hwinfo показывает только Hardware Class: memory Model: «Main Memory» Memory Size и дальше только Memory Range

Re: Узнать тип модулей памяти

spdmem0 at iic0 addr 0x50: 512MB DDR SDRAM non-parity PC2700CL2.5

Re: Узнать тип модулей памяти

В пакете lm_sensors есть скрипт на perl который декодирует информацию с spd планок памяти.

#modprobe eeprom
#decode-dimms.pl

Re: Узнать тип модулей памяти

Re: Узнать тип модулей памяти

dmesg | grep RAM BIOS-provided physical RAM map: (пусто, нет инфы) тоже самое и # dmidecode про RAM ничего не сообщает. Что это может быть?

Re: Узнать тип модулей памяти

косвенно по lspci можно угадать.
пример: lspci
00:00.0 Host bridge: Intel Corporation 82945G/GZ/P/PL Memory Controller Hub (rev 02)
. (дальше всякая остальная хрень)

На данной машине стоит чипсет Intel 945, память соответственно DDR2.

Re: Узнать тип модулей памяти

Вдогонку: а вообще отвёртку вам в руки, по внешнему виду отличить SDRAM от DDR, а его от DDR2 способен кто угодно.

Источник

Как узнать информацию о производителе чипов памяти под линуксом?

Заказал HX436C17PB3K2/16 по скидке, народ говорил, что эти плашки делали на Samsung B-Die, но есть новости, что в свежих партиях теперь Hynix CJR. Есть ли какой-то способ прочитать информацию о установленных планках ОЗУ под линуксом? dmidecode ничего не показывает. Хотелось бы проверить продавца на вшивость (сказали, что распродают завалявшиеся с прошлого года киты, осталось 3-4 штуки) и вернуть назад, если там хрюникс.

И так, господа, это хрюникс. На заявленных производителем таймингах не завелась на Prime X470 Pro, 3600 МГц смог выжать только с 18-18-18-38-T1. Не советую брать.

Читайте также:  Как включить файл подкачки линукс

1. Берёшь даташит на чип, ищешь в нём на тему наличия регистров, идентифицирующих производителя и модель

2. Если да, вкуриваешь на тему можно ли это прочитать из линукса

А по сабжу, мне кажется что нет

Ладно, у коллег есть компьютеры с виндой. Под неё есть какая-то утилита для этого дела.

идентифицирующих производителя и модель

Там тоже ничего. Как я уже говорил, есть куча восторженных отзывов, что эти плашки на Samsung B-Die. И предостережения, что новые партии уже на Hynix CJR.

Ничего внятного не отображает, только частоты.

да и вообще на самом чипе должно быть написано

да и вообще на самом чипе должно быть написано

Для этого нужно снять радиатор, что сразу же лишает гарантии и возможности возврата. Плюс часто перемаркировывают.

А чем хёникс не угодил? Я только что поменял хёникс на кингстон, интересно. Всегда думал что хёникс лучше.

В интернете говорят Samsung B-Die для разгона кукурузенов лучше, это и всё?

memtest показывает SPD (но без расшифровки).

Вот история успеха (глава «Чтение SPD»). // Поиграться и себе? Там NixOS использовалась. Для debian пакет i2c-tools есть

UPD: попробовал на старом нетбуке — ничего не узнал. Надо повторить на более современной конфигурации.

Это вам так кажется.

Да. С памятью DDR4 на чипах Hynix с большой вероятностью будут проблемы при попытке разогнать её на платформе AMD с нормальными таймингами/частотами — 3200 с CL и иже с ними 17 это не нормальные тайминги. У указанной мной памяти производителем заявлена работоспособность на 3600 MHz с 17-18-18-32 (для партии на самсунгах).

Memory Device
Array Handle: 0x0012
Error Information Handle: Not Provided
Total Width: 64 bits
Data Width: 64 bits
Size: 2048 MB
Form Factor: SODIMM
Set: None
Locator: Bottom — Slot 1 (top)
Bank Locator: BANK 0
Type: DDR2
Type Detail: Synchronous
Speed: 800 MT/s
Manufacturer: Micron
Serial Number: B6748C14
Asset Tag: Unknown

Я уже говорил про dmidecode. Он дает мне охрененно полезную информацию:

Если есть в ядре драйвер ee1004, то i2c-tools/eeprom/decode-dimms должен показывать.

Никак. Вернее, можно написать свою программу для этого, но я думаю это равноценно «никак».

Кингстон не производит чипов памяти. Они просто запаивают чипы других производителей, в том числе это хайникс. Основных производителей чипов всего три — samsung, hynix, micron.

А, собственно, почему тебя так волнует вопрос кто производитель чипов?

Во-во. Как раз задался вопросом, почему мне ни разу в жизни не было хоть сколько-нибудь интересно, кто производитель моих чипов памяти.

Жесть. То есть, для разгона?

Теоретически возможно

На каждой планке есть то ли SPI, то ли I2C чип памяти, маленький такой на 8 ног, но из него берется информация о планке — организация банков, тайминги.

Чтобы добраться до информации о чипе нужно раскуривать спецификации с jedec.org. Раньше они валялись свободно, теперь нужно регистрироваться и за очень нехилые деньги, которые могут позволить себе лишь производители оборудования. Но может кто в инет выложил.

Добирается до чипа и BIOS, когда инициализирует SDRAM (настраивает само-рефреш памяти). Может там поискать? Это биос только может проделать при старте из EPROM-а, потому что инициализация состоит из серии команд на определенный адрес посылается секретная последовательность данных, чип переключается в режим, в котором его программируют. Так что програмно, при стартовавшей системе это не проделать, поппробуй в BIOS глянуть.

Re: Теоретически возможно

SPD EEPROM — serial presence detect

SPD EEPROM — serial presence detect

Спасибо. Но там о чипах только информация про количество линий CAS и RAS, тайминги, ну и название планки. чтобы BIOS мог настроить контроллер памяти на дальнейшую работу с этой планкой.

А дальше происходит магия по спецификаци jedec.org c чипами. Не факт, что BIOS вообще определяет типы самих чипов, ему достаточно настроить их саморефреш. Но если что-то и определяет, можно поискать в его страничке инфы. А если что-то отдает системе, то поискать в ACPI/DMI.

cast mittorn

Ага. Не знаю почему, но чипы микрона и хуникса не слишком хорошо поддаются разгону. Да и от самсунга (все, что не B/C-Die) вроде тоже.

Читайте также:  Windows form с литература

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

Ложь,по одиночке не относятся, только изделие в сборе!

компьютерные комплектующие относятся к группе технически сложных товаров

В законе список закрытый, комплектующих там нет. Это магазины любят обманывать.

можешь потом попробовать это доказать в суде, говорят есть разные решения по этому поводу, но вряд ли топикстартер будет платить адвокату сотни евро за суд с неизвестным результатом

В магазине сказали, что можно будет в течение двух недель вернуть, при сохранности упаковки и внешней презентабельности.

Амд контроллер памяти не очень, причём всегда был.

Так я память на чипах от микрона и на Z270+i7-7700K разогнать толком не смог.

Я не понимаю вот этих приколов с «разгонами».

Ну бред IMHO. Ради пары сотен мегагерц рисковать дорогим железом — это чушь какая-то.

Лично мне проще чуть больше денежек заплатить, но использовать железо в штатном режиме.

К сожалению, частота шины Infinity Fabric в райзенах завязана на тактовую частоту ОЗУ.

Лично мне проще чуть больше денежек заплатить, но использовать железо в штатном режиме.

Я сделал тоже самое. Производителем заявлена работа этих плашек на 3600CL17 (разгон с завода), но я читал отзывы, что можно можно их завести на более низкой частоте, но с гораздо более вкусными таймингами. К сожалению, с чипами Hynix может выйти облом.

в ddr4 eeprom 512байтный и информация о производителе чипа во второй половине. По идее должен поддерживаться драйвером ee1004, но у меня оно не работало и пришлось читать напрямую через i2c
Исходя из этого:
https://github.com/torvalds/linux/blob/master/drivers/misc/eeprom/ee1004.c#L107
1. выгружаем драйвер eeprom чтобы освободить доступ к i2c устройству
2. Ищем память на i2c (обычно это один из smbus) путём i2cdump по адресам 0x50-0x54, там будут еепромы с разных плашек
3. когда дамп что-то выдаст — это будут первые 256 байт eeprom. Чтобы считать вторую страницу — нужно записать 0 на эту же шину по адресу 0x37 (можно через i2cset)
Чтобы снова прочитать первую страницу записать 0 по адресу 0x36
Считывал через i2cdump, потом самописным скриптом конвертил из hex в бинарь
Осторожно, я не знаю есть ли защита от записи в памяти. Вполне вероятно что разным экспериментами с i2c память можно и убить

Полученный бинарь можно скормтить скрипту decode-dimms (который почти ничего пока не умеет узнавать) или лучше виндовым утилитам для разбора eeprom ddr4, которые прекрасно работают и под wine если подсунуть bin файлик

А чего ты решил, что ты там что-то кроме Kingston прочитаешь, ведь инфу в EEPROM пишет Kingston. Все, что ты можешь — посмотреть что на чипе или по параметрам SPD догадаться что за чип. Чипы памяти сами о себе ничего не рассказывают.

в eeprom ddr4 есть информация о чипе во второй половине. Но пока что линуксовые утилиты штатно её не читают, как прочитать из линукса написал выше. На винде всегда через него и узнают какой чип

забыл добавить — чтобы i2c памяти появился пришлось врубать всякие модули типа i2c_piix4 в ядре и сам драйвер i2c_dev

Вендор твоего DIMM пишет в EEPROM что захочет. В самих чипах памяти нет ничего про это.

при больом желании вендор может и наврать. Проверить это можно например расчитав тайминги под чип который там указан. если там совсем другой чип, вероятно он их не возьмёт

вот, нашёл инструкцию по драйверу ee1004
может и заработает
https://www.spinics.net/lists/linux-i2c/msg32331.html
P.S у меня заработало, никакой возни с пыхтоном
decode-dimms выдаёт такое:

Господа, прошу прощения за некроманство.

Натнулся вот на эту статью (https://damieng.com/blog/2020/02/08/ddr4-ram-spd-linux) и решил узнать а что же там у меня у памяти внутри. Отсюда (https://www.spinics.net/lists/linux-i2c/msg42062.html) узнал, что для DDR4 нужен современный драйвер ee1004 .

Arch, DDR4, Ryzen 2400G. Что я сдедал:

Подгружал ещё i2c-amd-mp2-pci как то описано в первой статье — разницы никакой (по статье оно требуется на слудещем шаге, но мало ли). Не видно ни одного smbus . ЧЯДНТ?

Источник

Оцените статью