- Получение информации о компьютере на UNIX
- Информация о процессоре
- 1. lscpu (Linux)
- 2. sysctl -a (FreeBSD)
- 3. Файл /proc/cpuinfo (Linux)
- 4. Температура процессора
- Linux
- FreeBSD
- Информация об оперативной памяти
- 1. Файл /proc/meminfo (Linux)
- 2. free (Linux)
- Информация об оперативной памяти в Linux. Свободная, занятая и тип памяти
- Свободная и занятая оперативная память
- Команда free
- Команда vmstat
- Команда top
- Команда htop
- Файл /proc/meminfo
- Тип памяти и частота
- Заключение
- Узнать тип модулей памяти
- Re: Узнать тип модулей памяти
- Re: Узнать тип модулей памяти
- Re: Узнать тип модулей памяти
- Re: Узнать тип модулей памяти
- Re: Узнать тип модулей памяти
- Re: Узнать тип модулей памяти
- Как узнать информацию о производителе чипов памяти под линуксом?
- Теоретически возможно
- Re: Теоретически возможно
Получение информации о компьютере на 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:
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) вроде тоже.
что-то мне подсказывает, что технически сложный товар не подлежит возврату, только в случае брака или ремонтонепригодности могут вернуть деньги. компьютерные комплектующие относятся к группе технически сложных товаров. поэтому вернуть назад свои плашки памяти ты уже не сможешь.
Ложь,по одиночке не относятся, только изделие в сборе!
компьютерные комплектующие относятся к группе технически сложных товаров
В законе список закрытый, комплектующих там нет. Это магазины любят обманывать.
можешь потом попробовать это доказать в суде, говорят есть разные решения по этому поводу, но вряд ли топикстартер будет платить адвокату сотни евро за суд с неизвестным результатом
В магазине сказали, что можно будет в течение двух недель вернуть, при сохранности упаковки и внешней презентабельности.
Амд контроллер памяти не очень, причём всегда был.
Так я память на чипах от микрона и на 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 . ЧЯДНТ?
Источник