Рубрика «Разработка под Linux»
В России не любят Линукс, а я не люблю виртуальные машины. Что делать?
2023-08-14 в 8:28, admin, рубрики: fpga, gpt, LaLambda, openlane, Quartus, simply linux, SystemVerilog, UEFI, Verilog, Настройка Linux, программирование микроконтроллеров, Производство и разработка электроники, Разработка под Linux, Школа СинтезаПодключаем дисплей к любому одноплатнику с SPI: большой мануал о поиске экранчиков для ваших проектов
2023-08-14 в 8:01, admin, рубрики: bodyawm_ништячки, C, DIY, diy или сделай сам, lcd, Orange Pi, SPI, timeweb_статьи, Блог компании Timeweb Cloud, дисплеи, матрицы, одноплатники, одноплатные компьютеры, Разработка под Linux
Сейчас появилось достаточно много различных дешевых одноплатников с очень достойными характеристиками, которые вполне можно назвать экономичными и портативными. Однако очень часто встает вопрос вывода изображения на дисплей: к сожалению, в подобные устройства обычно ставят урезанные версии чипсетов без видеовыхода на обычные матрицы. Конечно в них практически всегда есть HDMI, но это совершенно не выход для портативного устройства: прожорливый чип скалера будет очень негативно влиять на время работы от АКБ. Да и сами подобные дисплеи очень дорогие: почти 2.000 рублей за матрицу со скалером — это действительно бьет по карману. Сегодня я расскажу Вам о существующих протоколах для дисплеев, подскажу, как применить экранчики от старых навигаторов/мобильников и мы подключим с вами SPI-дисплей к одноплатнику без видеовыхода. Причем мы реализуем как просто библиотеку, которая позволяет выводить произвольную графику из ваших программ, так
и службу, которая будет напрямую копировать данные из фреймбуфера и преобразовывать в формат для нашего дисплея. Интересно? Тогда жду вас в статье!Читать полностью »
Исследуем внутренности Linux версии 0.01
2023-08-14 в 6:00, admin, рубрики: linux, minix, open source, Линус Торвальдс, операционные системы, Разработка под Linux, эндрю таненбаум
Ядро Linux считается ужасно масштабным опенсорсным ПО. Последняя на момент написания этой статьи версия 6.5-rc5 состоит из 36 миллионов строк кода. Само собой, Linux — это плод упорного многолетнего труда множества участников проекта.
Что происходит, когда запускаешь «Hello World» в Linux
2023-08-09 в 13:00, admin, рубрики: linux, python, ruvds_переводы, Блог компании RUVDS.com, динамическая компоновка, запуск приложений, командная строка, Настройка Linux, Разработка под Linux
Сегодня я задумалась о том, что происходит, когда запускаешь в Linux простую программу «Hello World» на Python.
print("hello world")
Вот как это выглядит в командной строке:
$ python3 hello.py
hello world
Но внутри происходит гораздо больше. Я объясню, что там творится, и, что гораздо важнее, расскажу об инструментах, при помощи которых вы сами сможете исследовать происходящее. Мы воспользуемся readelf
, strace
, ldd
, debugfs
, /proc
, ltrace
, dd
и stat
. Я не буду рассматривать относящиеся к Python части, только объясню, что происходит при выполнении динамически компонуемых исполняемых файлов.
Читать полностью »
Итак, вы установили fzf. Что дальше?
2023-07-31 в 7:12, admin, рубрики: fzf, linux, администрирование, командная строка, Настройка Linux, Разработка под Linux
Разработчики ПО — если не единственные, то практически единственные, кому очень просто создавать инструменты для улучшения своей профессиональной работы; однако со временем это усложняет жизнь людям, постоянно переключающимся между разными инструментами и не вкладывающим время в глубокое изучение своего инструментария. Имея глубокое уважение к негласным знаниям людей лучше меня, я всё же считаю, что отличная эвристика 80/20 заключается в том, чтобы изучать старые добрые инструменты Unix cat
, ls
, cd
, grep
и cut
. (а если вам повезло устроиться на должность настоящего современного сисадмина, то ещё и sed
с awk
.)
Однако существуют инструменты, выгода от использования которых настолько мгновенна и ценность от применения настолько уникальна, что эвристика 80/20 полностью к ним неприменима. Один из них — это fzf
. И меня очень печалит то, что многие скачивают его, запускают в командной строке «как есть», а потом просто мотают головой и произносят: «Я не понимаю».
Мне хотелось бы изменить ситуацию. Предположим, что вы работаете на более-менее стандартной машине с Ubuntu. Вы только что установили fzf
при помощи стандартного скрипта установки. Что же дальше?
Читать полностью »
Как делается OpenSource: личный опыт
2023-07-29 в 9:45, admin, рубрики: open source, opensourse, личный опыт, Разработка под Linux, системное программированиеЯ - автор двух пакетов, входящих более-менее во все дистрибутивы Linux: sane-airscan и ipp-usb.
Кроме того, sane-airscan входит во все основные дистрибутивы BSD (FreeBSD, NetBSD и OpenBSD) и в ChromeOS. ipp-usb в ChromeOS не взяли потому, что он написан на Go, а у них там очень жестко с размером исполняемых файлов, вместо этого они написали свое на Rust, но предпочли бы взять моё изделие, если бы могли. Совсем недавно появился порт ipp-usb на FreeBSD, вероятно, другие BSD тоже скоро подтянутся.
Продвинутая работа с логами в Linux
2023-07-22 в 14:31, admin, рубрики: devops, linux, systemd, Настройка Linux, Разработка под Linuxjournalctl - Работа со структурированными логами
Журнал событий, это компонент systemd, который захватывает сообщения Syslog, логи ядра, все события при инициализации системы (RAM, диск, boot, STDOUT/STDERR для всех сервисов), индексирует их и затем предоставляет удобной пользовательский интерфейс для поиска и фильтрации логов. Журнал (systemd journal) можно использовать вместе или вместо syslog или syslog-ng.
Утилита командной строки journalctl, если сравнивать ее с традиционным инструментами для работы с логами в UNIX (tail, grep, sed, awk) более широкие возможности.
Как сделать Telegram-бота для проверки аптайма своего сервиса на Python (ч.2 алертинг)
2023-07-01 в 9:58, admin, рубрики: api, linux, open source, python, telegram, Разработка под LinuxВсем привет, в предыдущей статье я начал описывать мой опыт разработки Python телеграм-бота для проверки работоспособности и мониторинга моего сервиса, расположенного на удаленом сервере. Если в двух словах, то когда делаешь какой-нибудь пет-проект, да и в некоторых рабочих задачах, бывает хочется иметь всю текущую информацию по состоянию системы под рукой (особенно мне нравится возможность видеть все и управлять через телеграм бота), при этом не хочется тратить на разработку много времени.
Автоматический обход блокировок
2023-06-29 в 18:36, admin, рубрики: C, linux, OpenWrt, vpn, высокая производительность, обход блокировок, Разработка под Linux, Сетевые технологииОписание работы программы для автоматического обхода блокировок в интернете, код программы лежит на репозитории Antiblock.
Приблизительно в мае 2022 года был заблокирован один из доменов YouTube (yt3.ggpht.com), через который происходит выгрузка превью и логотипов каналов. Если до этого блокировки меня особо не утруждали, то YouTube без картинок, для активного пользователя, это тяжело. Далее были предприняты несколько разных подходов к оптимальному обходу блокировки этого домена.