Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Программирование под Unix/Linux > API для получения информации о железе


Автор: konshyn 25.1.2016, 14:06
Привет, коллеги.
Кто может подсказать, как получить информацию о железе (RAM, сетевые карты, процессор и т.д.) программным путем (Си).

Автор: baldman88 25.1.2016, 17:34
Либо парсить содержимое /proc (в частности: /proc/cpuinfo, /proc/meminfo, /proc/net/dev),
либо воспользоваться sysinfo.h, iffaddrs.h и т.д.

Автор: tzirechnoy 25.1.2016, 19:06
Это смотря какую информацыю. О наличии жэлеза как такового можно, например, посмотреть /sys/devices. Ну так, информацыонно.

А вот если конкретные цыфры -- то ты говори что конкретно тебе нужно.

Автор: Peter 29.1.2016, 09:27
Не проще ли обратиться к технологии WMI (Windows Management Interface)? На сайте Microsoft информация обширна. Я, собственно, «дельфист», но стоило только в поисковике набрать строку WMI Delphi получил «почти необъятное море информации». Для работающего с «С» сайт Microsoft «ближе к телу». Описания множества классов от процессора до портов и сетевых плат, собственно, «классы железа». Пишу без «размазывания и употребления терминологии», не в этом суть. А если короче, для формирования понимания следует обратиться к
https://msdn.microsoft.com/en-us/library/windows/desktop/aa394582%28v=vs.85%29.aspx
далее разобраться легко, даже без особого знания английского. К примеру, класс Win32_Processor class можно найти на странице https://msdn.microsoft.com/en-us/library/windows/desktop/aa394373%28v=vs.85%29.aspx
там же и «Examples», однако, увидел сразу только на VB, но это не столь большая проблема. Где-то и примеры на «с» найти вполне можно, причина, думаю, ясна. Слева перечень всех «Win32_****» классов.
Поиск по запросу «wmi classes» более «содержателен». Расширяем запрос «wmi classes samples C++» имеем столько вариантов запросов «wmi c++ sample», «wmi c++ sample соde», «c++ wmi sample». Об объеме информации и ее актуальности и доступности для понимания писать не буду. И снова вижу «программирующая братия» читать и учиться не желает. А стоит «в лоб» набрать «привязка программы к процессору» и среди, может не сразу отображенных ответов найдется и сайт Microsoft с технологией WMI и описания интересующих классов и, что не маловажно, примеры использования данных классов.
Если не быть «упертым» сторонником, какого-либо языка (разработки, программирования), а гибким и разумным, то для примера можно обратиться к http://www.delphisources.ru/pages/faq/base/wmi_use.html. Статья для Delphi, однако, в чем особая разница. В реализации? Синтаксис разный, да, но не в этом суть. Однако резюмирую: жаль. Читать и учиться мы уже не можем.



Этот ответ добавлен с нового Винграда - http://ru.vingrad.com/API-dlya-polucheniya-informatsii-o-zheleze-id56a6024eae20151a398b4567#findElement_E7045_56ab0655ae2015b10f8b5e61_0

Автор: Guinness 29.1.2016, 10:07
Piter, сильно.

Автор: Фантом 29.1.2016, 13:24
Цитата(Piter @  29.1.2016,  10:27 Найти цитируемый пост)
Читать и учиться мы уже не можем.
 Это правильно. Иначе бы Вы прочитали название раздела  "C/C++: Программирование под Unix/Linux".  smile 

Автор: feodorv 29.1.2016, 22:26
Фантом, в новом Винграде это особо не видно...

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)