Это может быть больше специфический вопрос для Linux, но ...

Я читал много уроков, и кажется, что вы можете использовать JavaScript, Python и C++ для написания кода для Beaglebone Black(BBB).

Похоже, что C++ взаимодействует с оборудованием BBB через чтение / запись текстовых файлов в ОС, в то время как Python имеет свою собственную библиотеку.

Все примеры на C++ управляют GPIO и PWM посредством чтения / записи в текстовые файлы.

Это единственный способ получить доступ к оборудованию или просто как Linux работает с драйверами?

1 ответ1

0

Вот так почти все делают водители.

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

Таким образом, драйверы предоставляют псевдо-файл, к которому можно получить доступ с помощью обычных вызовов read/write и ioctl , которые затем напрямую передаются драйверу.

Библиотека Python предоставляет только абстракцию вокруг этого интерфейса.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .