Как проверить и перечислить, какие расширения сценариев bash или python, используемые «расширениями», уже установлены или их еще нужно установить?

Предварительный ответ:

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

I want to write a USB driver to talk to VHCI instead of user-space program that talk to it by sysfs or ioctl)

Что именно вы подразумеваете под «драйвером USB»? Драйвер ядра, реализующий конкретное устройство, например USB-камеру? Это будет «драйвер USB-гаджета», и в ядре уже есть немало таких, так что посмотрите на их код. Если вы хотите протестировать драйверы гаджетов, вам понадобится dummy_hdc, который создает виртуальный корневой концентратор, содержащий все устройства, представленные драйверами гаджетов ядра.

Проект VHCI специально создан для обеспечения пространства пользователя USB-драйверов для (виртуальных )устройств. Если вам не нужна «пользовательская -космическая программа, которая общается с ней через sysfs или ioctl», то VHCI — неправильный выбор.

According to my understanding VHCI is similar to OHCI/UHCI code which are connected to real hardware.

Да, он предоставляет корневой концентратор; пока это похоже.

And USB drivers talk to USB core which eventually talk to OHCI/UHCI then to the hardware

Вы потеряли меня здесь. О каких «драйверах USB» вы говорите? Вы имеете в виду драйверы ядра, которые позволяют компьютеру и пользователю взаимодействовать с (реальными )USB-устройствами? Например,. usb_storage, что делает запоминающие устройства USB видимыми как /dev/sd*и т. д.? Они полностью независимы от драйверов пространства пользователя -VHCI или драйверов ядра USB-устройства.

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

Итак, если ваша реальная проблема :«У меня есть это новое USB-устройство,которое в конечном итоге должно стать реальным оборудованием, и я хочу написать для него драйвер ядра Linux, но сначала я хочу протестировать его». Затем вам понадобятся два драйвера :разработки, другой — виртуальный аналог, который имитирует -еще не существующее устройство. Вы можете сделать это в пространстве ядра (драйвере гаджета )или в пространстве пользователя -(VHCI ).

0
03.01.2021, 20:19
1 ответ

Для Python вы можете использовать pipreqs , чтобы получить список модулей в «стандартном» формате файла requirements.txt, а затем использовать pipдля установки модулей/пакетов pip install -r requirements.txt(, это, конечно, установит только те модули, которые еще не установлены ).

1
18.03.2021, 22:38

Теги

Похожие вопросы