Обновить
80
0

Пользователь

Отправить сообщение

Разработка драйвера PCI устройства под Linux

Время на прочтение19 мин
Охват и читатели66K

В данной статье я рассматриваю процесс написания простого драйвера PCI устройства под OC Linux. Будет кратко изучено устройство программной модели PCI, написание собственно драйвера, тестовой пользовательской программы и запуск всей этой системы.

В качестве подопытного выступит интерфейс датчиков перемещения ЛИР940/941. Это устройство, отечественного производства, обеспечивает подключение до 4 энкодеров с помощью последовательного протокола SSI поверх физического интерфейса RS-422.

Датчик облачности для обсерватории

Время на прочтение15 мин
Охват и читатели10K

На мой взгляд одной из важнейших сопутствующих задач наземной наблюдательной астрономии является контроль астроклимата.

Астроклимат — это совокупность факторов атмосферы, влияющих на качество астрономических наблюдений, путем искажения излучения небесных объектов.

(внимание, под катом достаточно много изображений!)
Читать дальше →

Работа с USB устройствами в программе на C в MacOS X

Время на прочтение11 мин
Охват и читатели10K
Приветствую уважаемых читателей.
В этой небольшой статье я бы хотел рассмотреть вопрос взаимодействия с оборудованием (в данном случае с USB устройствами) в операционной системе MacOS X.
Будет рассмотрены очень интересный и полезный фреймворк IOKit, способ получения уведомлений о добавлении/удалении обордования, а так же получения полной информации об устройствах. Конечно данный материал не претендует на какую либо уникальность, т.к. каждый может разобраться с этими вопросами самостоятельно, изучив документацию Apple, а так же покурив разнообразные исходники на opensource.apple.com
Моя статья — попытка восполнить пробелл в русскоязычном материале подобного рода и описать некоторые грабли, с которыми могут столкнуться новичики.
Все кто заинтересовался — добро пожаловать под кат.
Читать дальше →

HTC Hero — восстановление нормальной работоспособности сенсорного стекла

Время на прочтение3 мин
Охват и читатели120K
Приветствую уважаемых читателей. В этой статье я хотел бы рассмотреть проблему, которая довольно часто (если верить интернет ресурсам) возникает с аппаратами HTC Hero. Суть проблемы заключается в частичном или же полном отказе нижней части сенсорного стекла. Эта проблема не обошла стороной и мой аппарат. Родилось даже небольшое обсуждение, в комментариях к одному из недавних постов. Под хабракатом я попытался изложить то, как я (в моем случае — успешно) боролся с этой проблемой.
Читать дальше →

Простой монитор сетевых интерфейсов Linux, с помощью netlink

Время на прочтение12 мин
Охват и читатели35K
Однажды, в одном из проектов, мне понадобилось организовать строгий и надежный контроль над всеми сетевыми интерфейсами, таблицами маршрутизации, а так же получать нотификации о каких-либо изменениях. Было принято стратегическое решение — не использовать старые-добрые ioctl netdevice (SIOCGIFMETRIC, SIOCSIFNAME и т.п.) или непосредственные вызовы соответствующих утилит (ifconfig, route и т.д.), а найти более современное и болле удобное решение. Оно было найдено — libnetlink. Это библиотека, предоставляющая большое количество методов для коммуникации с ядром, с помощью механизма netlink. Данная библиотека идеально подходила для моих целей, позволяя решить огромное количество задач. К сожалению, у библиотеки оказался не особо удобный и довольно сложный API, требовавший совершать множество непонятных действий. Особого веселья добавляло практически полное отсутствие документации и вообще любых материалов на эту тему.
Подумав, я решил как следует разобраться в netlink и написать свою библиотеку. В данный момент реализован весь функционал для работы с нотификацией, сетевыми интерфейсами, таблицами маршрутизации, разумеется поддерживаются IPv4 и IPv6. В достаточно скором времени данный проектик будет представлен на суд общественности :) А пока я бы хотел познакомить всех интересующихся с прекрасным миром netlink, на примере простого монитора сетевых интерфейсов.
Читать далее...

Информация

В рейтинге
Не участвует
Откуда
Koornhorn, Groningen, Нидерланды
Зарегистрирован
Активность