В этой статье мы научимся изменять ядро Linux, добавим собственные уникальные системные вызовы и в завершении соберем ядро с новой функциональностью. Читать полностью »
Рубрика «Разработка под Linux» - 9
Модификация ядра Linux: добавляем новые системные вызовы
2021-10-08 в 13:00, admin, рубрики: linux, ruvds_перевод, Блог компании RUVDS.com, модификация системного вызова, ненормальное программирование, Разработка под Linux, системный вызовВ этой статье мы научимся изменять ядро Linux, добавим собственные уникальные системные вызовы и в завершении соберем ядро с новой функциональностью. Читать полностью »
Компиляция без предупреждений — что случилось в Linux-сообществе
2021-09-19 в 10:08, admin, рубрики: vas experts, Блог компании VAS Experts, Линус Торвальдс, разработка ос, Разработка под Linux, флаг -WerrorПару недель назад Линус Торвальдс активировал флаг -Werror для всех сборок ядра. Мнения сообщества касательно этого решения разделились. Против даже высказался разработчик фронтенда Clang и фреймворка LLVM. Обсуждаем ситуацию.
Warning’и не нужны
Год назад Линус Торвальдс в рассылке LKML рассказалЧитать полностью »
Кросс компиляция пакета для роутера на примере Qbittorrent
2021-09-19 в 1:45, admin, рубрики: open source, OpenWrt, qbittorrent, Компиляторы, кросскомпиляция, Разработка под LinuxДобрый день друзья. Как-то мне захотелось установить Qbittorrent на мой роутер который оснащен OpenWRT. Конечно создатели OpenWRT уже предусмотрели возможность сборки кастомных пакетов об этом можно почитать вот тут: https://habr.com/ru/company/ruvds/blog/530984/Читать полностью »
Работа с СОМ-портом на Си в linux
2021-09-17 в 9:00, admin, рубрики: C, linux, ruvds_статьи, uart, Блог компании RUVDS.com, Программирование, Производство и разработка электроники, Разработка под Linux, системное программированиеКаждый, кто постоянно занимается электроникой и программирует встраиваемые устройства, неизбежно сталкивается с необходимостью работы с СОМ-портом под линуксом. Недаром, моя статья "UART и с чем его едят" спустя 11 лет после выпуска набирает просмотры и комментарии.
Для разработчиков чаще всего появляется задача сопрячь какой-то датчик, либо удалённое устройство с одноплатником. Да что греха таить, сейчас в 2021 году UART, наверное, самый распространённый интерфейс для обмена данными, несмотря на всю его архаичность. Далеко за примером ходить не надо, внутри смартфона, лежащего у вас в кармане, будет с десяток UART интерфейсов, самый известный из которых — это подключение SIM-карты.
Поэтому умение работать с СОМ-портами в linux особенно важно. И вот, казалось бы, UART, древнейший интерфейс, всё должно быть известно и понятно, и даже опытные программисты ломают зубы, работая с ним в линуксе. Особенный цирк с конями начинается при работе с передачей сырых данных по RS-485. Не знаю ни одного программиста, который бы не хватил горя при разработке ПО для таких решений. Самое забавное, что с более новомодным i2c работать в линуксе куда проще и понятнее, чем с ортодоксальным UART. Чтобы не было путаницы дальше, всё семейство UART (RS-232, RS-485, UART 5V, UART 3,3 и т.д.) по тексту я буду называть COM-порт или UART. Мы говорим в статье не о физическом интерфейсе, а о программной стороне вопроса.
В этой статье я хочу показать, как писать свои программы, работающие с UART в ОС Linux. И неважно на каком языке вы пишете программу для работы с UART (python, c, c++, bash, php, perl и т.д.), принцип работы и грабли будут одни и те же, так как всё равно всё упирается в системные вызовы к ядру. А не понимание того, что там происходит и приводит к различным трудноуловимым багам.Читать полностью »
Разработка одноплатного компьютера. Пособие для продвинутых
2021-09-10 в 9:01, admin, рубрики: altium, IMX8M, linux, NXP, OrCAD, pcb, pcie, usb, v4l2, Wayland, Анализ и проектирование систем, гаджеты, Разработка под Linux, системное программирование, Электроника для начинающихЯ занимаюсь разработкой электроники. Шесть лет назад я написал свою первую статью начинавшуюся этими же словами и увидел неподдельное внимание. Все эти годы я продолжал оттачивать свое мастерство и на текущий момент я хочу перефразировать вступление:
Я занимаюсь разработкой электроники и мне этого мало.Читать полностью »
Опыт работы со смартфоном PinePhone: модульный телефон без сервисов Google
2021-09-08 в 14:22, admin, рубрики: open source, PinePhone, Блог компании Selectel, гаджеты, Разработка под Linux, смартфоны, телефоны, тестированиеПрошлым летом, во время распространения коронавируса по городам и весям, я почти все время сидел дома. У меня появилось много свободного времени, так что, наконец, получилось заняться давно запланированным обзором PinePhone. Напомню, что это смартфон с ОС Linux, а не Android.
Он интересен не только операционной системой, но и отсутствием сервисов Google. Я видел предупреждения о том, что телефон все еще может считаться тестовым девайсом, но решил, что смогу преодолеть все препятствия. Спустя год мне действительно удалось это сделать — сейчас это устройство, которое вполне можно использовать в качестве альтернативы телефонам на Android. Конфиденциальность данных для меня в приоритете, несмотря на то, что взамен пришлось пожертвовать некоторыми функциональными возможностями.
Читать полностью »
Простейшее решение «проблемы промежуточных устройств»: организация работы SCTP поверх UDP в ядре Linux
2021-09-05 в 10:00, admin, рубрики: linux, ruvds_перевод, SCTP, udp, Блог компании RUVDS.com, Настройка Linux, разработка, Разработка под Linux, системное администрированиеВ этом материале даётся краткий обзор организации работы SCTP поверх UDP в ядре Linux.
Читать полностью »
Кунг-фу стиля Linux: делаем все и сразу
2021-08-22 в 14:00, admin, рубрики: bash, linux, ruvds_перевод, Блог компании RUVDS.com, Настройка Linux, разработка, Разработка под Linux, системное администрированиеИсследование роста утилизации процессора: как мы мигрировали с CentOS 7 на Oracle Linux 7
2021-08-19 в 12:58, admin, рубрики: devops, eBPF, investigation, kernel, linux, perf, performance, performance analysis, xdp, Блог компании DINS, Настройка Linux, Разработка под LinuxПривет! Меня зовут Александр Петровский, я инженер в DINS. Я работаю в команде, которая участвует в разработке сервисов облачной телефонии и видеоконференций для RingCentral. Каждый из них состоит из большого количества микросервисов.