С годами подходы к обработке конкурентности в ядре Linux сильно изменились. К 2023 году в арсенале разработчиков ядра появились, в частности, автозавершения, хорошо оптимизированные мьютексы, а также россыпь неблокирующих алгоритмов. Но были времена, когда управление конкурентностью сводилось к использованию обычных семафоров. Дискуссия о внесении небольшого изменения в API семафоров лишний раз свидетельствует, как сильно они изменились за долгую историю ядра.
Рубрика «Разработка под Linux» - 3
Семафоры в Linux медленно сходят со сцены
2023-04-26 в 21:36, admin, рубрики: легаси, мьютексы, Программирование, Процессоры, Разработка под Linux, семафоры, ядроИ снова Linux: релиз ядра 6.3. Подробнее о возможностях и апдейтах в этой версии
2023-04-25 в 0:33, admin, рубрики: linux 6.3, open source, Блог компании Selectel, Разработка под Linux, релизы, Софт
Всего через два месяца после выхода предыдущего релиза Линус Торвальдс представил релиз Linux 6.3, о чем уже писали на Хабре. Над ним пришлось изрядно потрудиться: в новой версии 15637 исправлений от 2055 разработчиков. Размер патча составил 76 МБ, ну а изменения затронули 14296 файлов, добавлено 1023183 строк кода, удалено 883103 строк.
Что касается основных изменений, то главное — обновление ARM-платформ и драйверов графики, продолжение работы по интеграции Rust, поддержка создания HID-драйверов и многое другое. Подробности — под катом.
Читать полностью »
Новое, старое, измененное: что появилось и что пропало в релизе Fedora Linux 38. Да-да, он уже вышел
2023-04-23 в 0:49, admin, рубрики: Fedora, linux, Блог компании Selectel, Разработка под Linux, релизы, Софт
Несколько дней назад вышел ожидаемый многими релиз Fedora Linux 38. Разработчики внесли множество изменений, среди которых — как добавление новых возможностей, так и удаление/замена устаревших. Уже можно загрузить Fedora Workstation, Fedora Server, Fedora CoreOS, Fedora Cloud Base, Fedora IoT Edition и Live-сборки, чтобы оценить новшества самостоятельно. Ну а если на это времени пока нет — то подробности под катом.
Читать полностью »
Компактный make для STM32 с USB
2023-03-26 в 9:03, admin, рубрики: C, usb геймпад, программирование микроконтроллеров, Разработка под LinuxОбзор
Удивительное рядом. Как устроен буфер обмена в Windows и Linux
2023-03-22 в 9:00, admin, рубрики: CopyQ, MacOS, ruvds_статьи, Wayland, X11, Блог компании RUVDS.com, буфер обмена, Разработка под Linux, разработка под windows, системное программирование, Софт
Буфер обмена — один из основных элементов GUI, но он сложен в реализации. Подводных камней настолько много, что вы больше никогда не сможете произнести слово «копипаст» с презрительным выражением. Есть тысячи приложений и форматов данных. Невозможно обеспечить полную конвертацию всего во всё.
В некоторых случаях данные вообще нигде не сохраняются по нажатию Ctrl+C. И по нажатию Ctrl+V будет возвращён NULL. Shit happens, как говорится…
Читать полностью »
Как создать аппаратный эмулятор CD-ROM без паяльника
2023-03-20 в 9:00, admin, рубрики: bluetooth, bluez, cd-rom, diy или сделай сам, iso, linux kernel, linux modules, ruvds_статьи, systemd, usb, Блог компании RUVDS.com, Разработка на Raspberry Pi, Разработка под Linux, системное администрирование, эмуляция
Несмотря на то, что постепенно оптические диски уходят в прошлое, использование ISO-образов этих дисков остаётся актуальным. Многие операционные системы поставляются в виде ISO-образов, а администраторам необходимо поддерживать разношёрстный парк старых персональных компьютеров.
Существует множество решений, как можно установить операционную систему с ISO-образа без записи его на оптический носитель. Я уже затрагивал тему ISO-образов в моих статьях: «Раскрываем секреты загрузочных ISO-образов» и «Что вам нужно знать о внешних загрузочных дисках».
В этой статье я хочу рассказать о ещё одном способе, который, как оказывается, вшит в ядро Linux. Если ваш одноплатный компьютер имеет USB OTG-разъём, и на него возможна установка Linux, то вы c большой долей вероятности можете сделать из одноплатника аппаратный эмулятор привода оптических дисков.
Меня этот способ заинтересовал. Я проверил его сам и, получив положительный результат у себя, решил поделиться с вами.
Я сам узнал много интересного, систематизировал свои знания, поэтому надеюсь, что чтение будет познавательно и интересно для вас.Читать полностью »
KVM: Что такое Kernel-based Virtual Machine?
2023-03-10 в 16:20, admin, рубрики: C, kvm, qemu-kvm, vt-x, аппаратная виртуализация, виртуализация, виртуальные машины, Программирование, Разработка под Linux, системное программирование
Начнем с простого вопроса:
Что означает QEMU/KVM или QEMU-KVM?
Можно ответить - это QEMU + KVM или qemu-system, запущенный с kvm в качестве ускорителя. Но в какой-то степени это еще и анахронизм, так как с появлением KVM его разработчики для интеграции с QEMU поддерживали отдельный форк qemu-kvm, но начиная с QEMU версии 1.3Читать полностью »
Новое, старое, обновленное: что «выросло» в ядре Linux 6.2. Подробности релиза
2023-02-21 в 19:43, admin, рубрики: linux, open source, Блог компании Selectel, Разработка под Linux, релизы, Софт
Вчера появилась новость о выходе стабильного релиза ядра Linux 6.2. Изменений и дополнений действительно много, в этот раз принято почти 17 тыс. исправлений от 2178 разработчиков. Изменения при этом внесены в 14108 файлов, с добавлением 730195 строк кода. Большая часть изменений, почти 50%, связана с драйверами устройств, еще примерно 16% — с аппаратными архитектурами, 12% — сетевые технологии, 4% — файловые системы и еще 3% — подсистемы ядра. Под катом — подробности о том, что представляет собой ядро 6.2.
Наиболее актуальные изменения, которые добавлены в ядро, касаются продолжения работы над интеграцией языка Rust, о чем Торвальдс говорил уже давно. Кроме того, разрешен прием кода кода под лицензией Copyleft-Next. А еще — добавлена возможность регулирования потребления памяти при отложенной записи, появился гибридный механизм защиты потока выполнения команд, плюс появилась утилита rv (Runtime Verification). Ну а теперь, собственно, подробности.
Читать полностью »
Как поиграть в Quake для DOS по сети в 2023 году
2023-02-08 в 9:00, admin, рубрики: docker, docker-compose, dosbox, IPX, ruvds_статьи, vps, Блог компании RUVDS.com, виртуализация, Игры и игровые консоли, Разработка под Linux, системное администрирование, эмуляция
В прошлой статье, помимо всего прочего, я рассказывал, как можно запустить Quake для DOS, загрузив DOS на современном компьютере. Отказ от использования эмуляторов позволяет погрузиться в прошлое наиболее реалистично, однако есть ряд недостатков:
- не на всех компьютерах можно поиграть со звуком;
- необходимо заменять файл в дистрибутиве Quake;
- невозможно поиграть по сети.
В этой статье я приведу решение, лишённое этих недостатков. Хотя оно подразумевает использование эмуляции, возможность игры в интернете позволяет забыть об этом. Обладая минимальными знаниями по работе в Linux, любой желающий может повторить это решение у себя.Читать полностью »
Домашняя лаборатория
2023-01-21 в 13:15, admin, рубрики: containers, docker, hashicorp, linux, linux-сервер, nomad, Vault, Настройка Linux, Разработка под Linux
Угадай, данную статью написал ChatGPT или нет?
Хотите потестировать приложение, или опробовать в работе инструмент? В этой статье опишу то, как организовал тестовый стенд на Linux. Стенд поддерживает работу с доменами, умеет генерировать TLS сертификаты, легко масштабируется, окружение строится по принципе IaaC, не требует много ресурсов, легко разворачивается скриптами или SCM, есть UI, не зависит от внешних сервисов.
