Как стать автором
Поиск
Написать публикацию
Обновить
61
0
Andy Shevchenko @andy_shev

Linux kernel developer

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

ACPI: Добавление устройств без перекомпиляции ядра

Время на прочтение4 мин
Количество просмотров5.5K
Как выясняется, далеко немногие знают о существовании режима оверлеев в ACPICA и их поддержки в ОС Linux. Я хочу восполнить этот пробел на примере добавления ведомых устройств I2C в систему без перекомпиляции.
Читать дальше →

Трассировщик ввода-вывода в ядре Linux

Время на прочтение5 мин
Количество просмотров15K
Мало кто знает, что в ядре Linux есть необычные и весьма полезные инструменты для отладки и тестирования. В этой небольшой статье я хочу поделиться описанием трассировщика ввода-вывода.
Читать дальше →

Что нового ожидается в ядре v4.8-rc1 для Intel Edison. Дайджест

Время на прочтение2 мин
Количество просмотров4K
Уже прошло около полутора лет с момента моей предыдущей публикации, посвящённой поддержке Intel Atom Z34xx, а попросту говоря Intel Edison, ванильным ядром Linux. Здесь я рассмотрю новшества, которые ждут своей очереди в ядро версии v4.8-rc1.
Читать дальше →

Сделаем код чище: работа с 64-битными регистрами оборудования в Linux

Время на прочтение3 мин
Количество просмотров9.7K
Нередко у программистов, пишущих драйверы, возникают некоторые трудности с обменом данными в 64-битном формате. Давайте разберём некоторые ситуации.
Читать дальше →

Сделаем код чище: Когда применение devres API приносит вред?

Время на прочтение3 мин
Количество просмотров5K
Управляемые ресурсы в ядре Linux (также известны как Device Resource Management или devres API), о которых я писал небольшую заметку ранее, — вещь крайне полезная, но не стоит воспринимать этот вспомогательный набор функций как серебрянную пулю при написании драйверов или модификации существующих. Рассмотрим случаи, где нужно аккуратно применять данные методы.
Читать дальше →

Сделаем код чище: Рефакторинг драйвера PCI для контроллера NAND Denali

Время на прочтение4 мин
Количество просмотров5.8K
На примере драйвера PCI для контроллера NAND Denali я покажу как упрощается код при использовании макросов и функций-помощников, доступных в относительно свежих версиях ядра Linux.
Читать дальше →

Сделаем код чище: Нюансы вывода отладочных сообщений в драйверах Linux

Время на прочтение2 мин
Количество просмотров5.2K
Как многим извесно вывод отладочных сообщений в Linux в отношении драйверов осуществляется несколькими подмножествами макросов и функций. Не все аналоги взаимозаменяемы и работают так, как кажется логичным на первый взгляд. Вот об этом и пойдёт речь в этой короткой заметке.
Читать дальше →

Сказ об одной ошибке, так и не попавшей в релиз ядра Linux

Время на прочтение3 мин
Количество просмотров28K
Совсем недавно вышло исправление, устраняющее полное зависание 32-битного ядра Linux при загрузке на процессорах Intel. Здесь небольшая история о том, откуда появилась ошибка и какие проводились исследования по поиску причин её возникновения.
Читать дальше →

Сделаем код чище: Пару слов об управляемых ресурсах в ядре Linux для драйверов устройств

Время на прочтение4 мин
Количество просмотров15K
Наблюдая за появляющимися драйверами в ядре Linux, не могу не отметить, что разработчики недостаточно хорошо знают инфраструктуру ядра, точнее внутренний API, значительно упрощающий жизнь при написании драйверов устройств. Сегодня я коснусь темы, посвящённой управляемым ресурсам. В частности поясню каким образом они работают и как упрощают разработку драйверов.
Читать дальше →

Запускаем свежайшее ядро Linux на Intel Edison

Время на прочтение4 мин
Количество просмотров33K
Ко всемирному дню #ArduinoD15 я подготовил материал по конфигурации и запуску свежайшего ядра Linux на плате Intel Edison (Arduino Edition).
Читать дальше →

Сделаем код чище: Рекомендации по подготовке изменений в ядро Linux

Время на прочтение4 мин
Количество просмотров14K
Продолжая тему улучшения кода ядра Linux хочу дать несколько рекомендаций, основанных как на жизненном опыте, так и на существующей документации.
Читать дальше →

Сделаем код чище: Что можно исправить в ядре Linux

Время на прочтение5 мин
Количество просмотров37K
Наверняка многие хотели бы попробовать что-то изменить в ядре Linux к лучшему, но не знают с чего начать. Я хочу описать несколько проблем, исправить которые под силу каждому, и на примере показать путь от нахождения проблемы до опубликования её исправления в списке рассылки. По ходу повествования читатель познакомится с некоторыми вспомогательными утилитами.
Читать дальше →

О Git, начинающих и статьях о Git для начинающих

Время на прочтение4 мин
Количество просмотров15K
Пятница тринадцатое отличный день для очередного holywar обсуждения «как я готовлю Git, и почему я готовлю его неправильно».
Итак,
Читать дальше →

Расчёт параметров предделителя для 8250-совместимых USART

Время на прочтение2 мин
Количество просмотров6K
Сегодняшним вечером я расскажу сказку о том, как можно эффективно вычислить параметры предделителя, который обычно используется для задания тактовой частоты USART портов, в частности 8250-совместимых, применяемых в Intel SoC.
Читать дальше →

Об одном трюке для возврата кода ошибки из функции

Время на прочтение2 мин
Количество просмотров25K
Ядро Linux — кладезь как применяемых алгоритмов, так и некоторых хакерских или полухакерских трюков, призванных убыстрить и / или уменьшить размер в памяти (memory footprint). Об одном из таких полухахерских трюков я хочу рассказать далее.
Читать дальше →

Сделаем код чище: Специальные расширения vsnprintf() в ядре Linux

Время на прочтение3 мин
Количество просмотров19K
Смотря на кучу исходного кода, который засылают программисты в списки рассылки подсистем ядра Linux иногда хочется плакать. С одной стороны бывает ужасный и непотребный код, с другой — люди, возможно, впервые пытаются что-то сделать для ядра, поэтому не знают всех его особенностей.

Книга Linux Device Drivers устарела, а новая версия выйдет нескоро. Поэтому мне хочется заполнить пробелы в знаниях тех программистов, которые пишут код в ядро.
Читать дальше →

Что плохого в изменении *_defconfig при работе с исходниками ядра Linux

Время на прочтение2 мин
Количество просмотров8.4K
По следам моей первой публикации хочу сделать небольшую заметку об изменении файлов i386_defconfig или x86_64_defconfig, входящих в поставку исходников ядра Linux.

Читать дальше →

Запускаем ванильное ядро на Intel Galileo

Время на прочтение5 мин
Количество просмотров17K
Не сомневаюсь, что большинство пользователей Intel Galileo задаётся вопросом, когда же наконец можно будет обновить ядро?



Читать дальше →

Информация

В рейтинге
Не участвует
Откуда
Espoo, Southern Finland, Финляндия
Дата рождения
Зарегистрирован
Активность