Это команда nvme-id-ctrl, которую можно запустить в провайдере бесплатного хостинга OnWorks, используя одну из наших многочисленных бесплатных онлайн-рабочих станций, таких как Ubuntu Online, Fedora Online, онлайн-эмулятор Windows или онлайн-эмулятор MAC OS.
ПРОГРАММА:
ИМЯ
nvme-id-ctrl - отправить NVMe Identify Controller, вернуть результат и структуру
СИНТАКСИС
nvme id-ctrl [-v | - зависит от поставщика] [-b | --raw-binary]
ОПИСАНИЕ
Для данного устройства NVMe отправляет команду контроллера идентификации и предоставляет результат
и возвращенная структура.
В параметр является обязательным и может быть символьным устройством NVMe (например:
/ dev / nvme0) или блочное устройство пространства имен (например, / dev / nvme0n1).
В случае успеха структура может быть возвращена одним из нескольких способов в зависимости от опции.
флаги; структура может быть проанализирована программой или необработанный буфер может быть распечатан в
стандартный вывод.
ДОПОЛНИТЕЛЬНЫЕ ОПЦИИ
-b, --raw-двоичный
Распечатайте необработанный буфер в стандартный вывод. Структура не анализируется программой. Это отменяет
специфичные для поставщика и удобочитаемые параметры.
-v, - зависит от поставщика
В дополнение к синтаксическому анализу известных полей, эта опция будет выводить данные по региону производителя.
структуры в шестнадцатеричном формате с интерпретацией ascii.
-H, --человечески читаемый
Эта опция будет анализировать и форматировать многие битовые поля в удобочитаемые форматы.
ПРИМЕРЫ
· Может ли программа интерпретировать возвращаемый буфер и отображать известные поля на человеке
читаемый формат:
# nvme id-ctrl / dev / nvme0
· Помимо отображения известных полей, есть программа для отображения уникального поставщика
поле:
# nvme id-ctrl / dev / nvme0 - зависит от поставщика
# nvme id-ctrl / dev / nvme0 -v
Вышеупомянутое сбрасывает vs буфер в шестнадцатеричном формате, поскольку он не знает, как его интерпретировать.
· Программа должна вернуть необработанную структуру в двоичном формате:
# nvme id-ctrl / dev / nvme0 --raw-binary> id_ctrl.raw
# nvme id-ctrl / dev / nvme0 -b> id_ctrl.raw
Вероятно, не перенаправлять stdout при использовании этого режима - плохая идея.
· В качестве альтернативы вы можете отправить данные в другую программу, которая может анализировать необработанные
буфера.
# nvme id-ctrl / dev / nvme0 --raw-binary | nvme_parse_id_ctrl
Программа синтаксического анализа в приведенном выше примере может быть программой, которая показывает структуру в
как вам нравится. Следующая программа является таким примером, который проанализирует его и сможет
принять вывод через канал '|', как показано в приведенном выше примере, или вы можете 'cat'
сохраненный буфер вывода к нему.
/ * Файл: nvme_parse_id_ctrl.c * /
#включают
#включает в себя
#включают
int main (int argc, char ** argv)
{
беззнаковый символ buf [sizeof (struct nvme_id_ctrl)];
struct nvme_id_ctrl * ctrl = (struct nvme_id_ctrl *) buf;
если (читать (STDIN_FILENO, buf, sizeof (buf)))
1 вернуться;
printf ("vid:% # x \ n", ctrl-> vid);
printf ("ssvid:% # x \ n", ctrl-> ssvid);
0 вернуться;
}
NVME
Часть пакета nvme-user
Используйте nvme-id-ctrl в Интернете с помощью сервисов onworks.net