Разработка под Linux *
Пишем под *nix
Новости
Linux: «Бесплатная» RAM за счет процессора
Если вы вдруг оказались с ноутом, в котором RAM распаяна, или все слоты уже использованы, или просто нет возможности добавить еще одну планку памяти, то существует простое решение, имя ему zram.
Я не буду подробно описывать все прелести zram, в интернете достаточно много информации о том, что это такое и как можно использовать. Здесь же я хочу предоставить короткую инструкцию, как быстро и просто "добавить" себе оперативной памяти.
Как работает Wine
Wine — это свободное программное обеспечение для запуска Windows-приложений на нескольких POSIX-совместимых операционных системах, включая Linux, macOS и BSD.
Если вы любите Linux, то наверняка когда-то запускали Wine. Возможно, для какой-то «важной» программы Windows, у которой нет аналога под Линуксом, или поиграться. Забавный факт: даже Steam Deck от Valve запускает игры через оболочку на основе Wine (она называется Proton).
За последний год я намучился с отладчиком, который позволяет одновременно дебажить и Wine, и Windows-приложение в нём. Разобраться во кишочках Wine оказалось очень интересно! Я-то раньше много им пользовался, но никогда не понимал механику целиком. Можно взять файл Windows — и просто запустить его в Linux без каких-либо изменений. Если вы хотите знать, как это сделано, добро пожаловать под кат.
UNIGINE 2.16: Asset Store, Vulkan и DX12, Даблы и Марс в Community, интеграция с ROS, .NET 6, новый менеджер окон
Состоялся релиз 2.16: мы внедрили поддержку DirectX 12 и Vulkan API, открыли Asset Store, добавили даблы и демо Марса в Community SDK, улучшили рендеринг (отражения, свечение, размытие при движении, эффекты камеры и др.). Появились новые SDK-браузер, редактор текстур и менеджер окон, и много другого полезного.
Без лишней скромности, этот релиз открывает новую главу в развитии платформы UNIGINE.
Начнем с самого интересного.
Java и низкая задержка
Я уже сбился со счёта, сколько раз мне говорили, что Java — неподходящий язык для разработки приложений, основным требованием к которым является высокая производительность. Обычно первым делом я прошу уточнить, что подразумевается под словом «производительность», поскольку две самые популярные метрики — пропускная способность и задержка — иногда конфликтуют друг с другом, а способы оптимизации одной из них существенно ухудшают вторую.
Существуют методики разработки Java-приложений, которые соответствуют требованиям к производительности (или даже превосходят их) приложений, созданных на языках, традиционно применяемых для этой цели. Однако даже этого может быть недостаточно, чтобы обеспечить наилучшую производительность с точки зрения задержек. Java-приложениям по-прежнему приходится полагаться на операционную систему в вопросе предоставления доступа к оборудованию. Обычно чувствительные к задержке приложения (часто называемые «приложениями реального времени») лучше всего работают, когда имеют практически прямой доступ к оборудованию, то же самое относится и к Java. В этой статье я познакомлю вас с методиками, которые можно применять, когда мы хотим, чтобы приложения максимально эффективно задействовали системные ресурсы.
Фаззинг по-русски на практике: crusher, Astra Linux
Привет, Хабр! Меня зовут Дима, я занимаюсь тестированием безопасности операционной системы Astra Linux в группе компаний «Астра». В статье я расскажу о фаззинг-тестировании, которое помогает обнаружить слабые места программ методом подачи на их входные интерфейсы различных наборов данных, при обработке которых ПО может начать вести себя нештатно или выйти из строя.
DIY-одноплатник или OrangePi на минималках
Некоторое время назад Arduino казалось какой-то непонятной магией когда только узнал про нее. Потом быстро перешел к самим микроконтроллерам. Позже, работая программистом микроконтроллеров, захотелось чего-то большего и я уже смотрел в сторону линукса и одноплатных компьютеров. В руки попал Raspberry Pi, но это готовый продукт с определенной периферией (не хочу HDMI, хочу RGB LCD) и некоторое время спустя я уже думал как сделать что-то подобное самому.
Linux Kernel 6.0: что нового «выросло» в ядре?
На днях на Хабре публиковалась новость о том, что Торвальдс представил новый релиз ядра Linux, который получил номер 6.0, вместо, например, 5.20. Противники такой нумерации, конечно, есть, но Торвальдс особо не обращает на них внимания.
Но сегодня поговорим не про нумерацию версий, а про подробности самого релиза. Среди самых заметных изменений — оптимизация менеджера задач, верификация корректности ядра, драйвер ublk, поддержка асинхронной буферизованной записи в XFS и ряд других дополнений и обновлений. Подробности — под катом.
Импортозамещение VR-а клавиатуре покоя не даёт
Давным-давно, ... в общем появился у Sony PlayStation шлем VR. Штука оказалась интересная и позволяла не только играть в vr-игры, но и смотреть фильмы.
Правда, сразу выяснились некоторые "тонкости": нормальное использование возможно было только при использовании с Sony PlayStation (что, в общем-то, очевидно) и через специализированную программу Rad (бывший LittlStar). Причём особого разнообразия программ-проигрывателей небыло, использование же программы Rad требовало оплаты подписки. Сначала всё было хорошо: и подписка платилась, и кино смотрелось. Потом появились санкции и, вдруг, оказалось, что заплатить из России нельзя. И вообще вы ничего не можете, пока "... until those restrictions and sanctions have been lifted ...".
Конечно, такое отношение не может радовать пользователй. С другой стороны, это является хорошим поводом постучать по клавиатуре и сделать немного импортозамещения.
Чтобы шлем работал, необходимо было отвязать функцию просмотра фильмов от специализированного / платного / не-российского программного обеспечения. И ниже описан процесс такого "отвязывания".
Эта статья по составу содержит примеры кода и решений, которые нужно
добавить в проигрыватель VR, чтобы им можно было нормально пользоваться.
Приведённые здесь сведения не являются какими-либо новыми или
особенными знаниями. Всё, что здесь приведено вы можете самостоятельно
найти в интернете или посчитать на калькуляторе.
От Web до Desktop за 2 недели: технология Electron на практике
Если у вас есть компьютер и вы используете его по назначению, то скорее всего вы так или иначе работали с приложениями на Electron (даже если об этом не знали).
Меня зовут Сергей Володин, я руковожу командой разработки VK WorkMail. В этой статье я расскажу, как на основе Electron мы за две недели создали PoC кроссплатформенного настольного приложения Почты, что узнали о технологии и к каким выводам пришли.
Как хакнуть что угодно с помощью GNU Guix
Мариус Бакке (Marius Bakke) несколько лет занимается разработкой Guix и недавно начал вести свой блог. Мы решили перевести рассказ о том, почему Мариус увлёкся разработкой собственной операционной системы и как с её помощью можно вносить правки в код любых программ.
Пособие по программированию модулей ядра Linux. Ч.7
Заключительная часть последней версии руководства по созданию модулей ядра от 02 июля 2022 года. Здесь мы рассмотрим обработку прерываний, криптографию, стандартизацию интерфейсов с помощью модели устройства, а также разберём принцип работы драйвера виртуального устройства ввода и возможность внесения в модуль некоторой оптимизации. В завершение же я укажу на пару неявных, но важных нюансов, а также дам рекомендации по дальнейшему погружению в тему программирования ядра.
Работаем с pdf из контекстного меню файлового менеджера
Замечательный файловый менеджер Dolphin всем хорош. И две панели, и разнообразные контекстные меню ускоряющие обработку всевозможных команд и заданий. Но что делать если нужно простенько и быстро собрать несколько одностраничных pdf-файлов?
Защита контейнеров с помощью фильтров Seccomp
Многие компании используют контейнеры в качестве фундаментальной технологии для управления своими приложениями и их выполнения. Если вы уже имеете опыт работы с контейнерами, то понимаете их мотивацию: контейнеры обеспечивают совершенно новые уровни портируемости и масштабируемости. Однако использование контейнеров, как и любой другой технологии, также означает и появление новых способов применения эксплойтов приложений.
Пособие по программированию модулей ядра Linux. Ч.6
Очередная часть последней версии пособия по созданию модулей ядра от 2 июля 2022 года. В ней мы познакомимся с понятием tty, представляющим альтернативу макросу
print
, напишем модуль для мигания светодиодами клавиатуры, а также разберем тему планирования задач с помощью тасклетов и очередей заданий.Проект Repka Pi — переклеивание этикеток или реальная разработка?
Проект Repka Pi - переклеивание этикеток или реальная разработка?
Импорт фотографий из командной строки Linux
Как просто и быстро импортировать фотографии в альбом и отсортировать по времени съемки.
Книга «Kali Linux: библия пентестера»
Пентестеры должны в совершенстве знать Kali, чтобы эффективно выполнять свои обязанности. В книге есть все об инструментах и способах, которыми пользуются хакеры при взломе систем. Вы научитесь выстраивать надежную защиту от несанкционированного доступа к виртуальным ресурсам. Вне зависимости от уровня подготовки и начинающий, и практикующий пентестер почерпнет важные для себя сведения.
Разработка программы отображения для гидроакустической станции под Linux
Гидроакустическая станция серийная, Echologger MRS-900. Однолучевая, луч сканирует по кругу или в секторе. Штатное программное обеспечение есть, работает под Windows. От меня потребовалась версия под Linux.
Установка универсальной прошивки OpenIPC на примере IP камеры с процессором HI3516DV100 и сенсором OV4689
Наш мир кишит камерами видеонаблюдения, и большинство из нас сами добровольно окружают себя этими устройствами. Камерами, которые имеют как случайные дыры в безопасности, так и намеренно внедренные компоненты которые отстукивают своему хозяину. Одни производители стараются по максимуму предвидеть и решить проблемы, другие же делают вид, что и проблем особо нет, если камера показывает изображение. Но если начать приглядываться, то лишь требование ActiveX и Internet Explorer для пользования камерой в XXI веке это нечто из пучин ада.
Решают проблемы производители каждый по своему. Как вариант, через облако, через своё приложение Android с приватными протоколами. Но через несколько лет после продажи облачной камеры, бесплатное облако вполне может стать платным, приложение обрастает рекламой до безобразия. А если проект производителя не зашел, то прописанные в ней сервера отключаются и ваша камера, возможно даже с отличным оборудованием внутри, становится бесполезным кирпичём, потому как способов использования больше нет.
В случае с зоопарком рутеров, ворох проблем заставил энтузиастов собраться с силами и создать открытую платформу OpenWRT на базе Linux. И ради тех, кто ждет решения для камер, сейчас кипит работа над аналогичным открытым проектом OpenIPC - универсальной встраиваемой платформы на базе Linux для IP камер. Проделан колоссальный труд, и есть уже ряд камер, на которые можно установить новую прошивку, получив базовый функционал.
Дальше рассказываю на какие камеры какими способами и зачем можно установить систему OpenIPC на примерах.
Вклад авторов
-
dlinyj 1035.6 -
Seleditor 701.0 -
Andrey2008 636.2 -
m1rko 537.2 -
Bright_Translate 516.7 -
maisvendoo 425.0 -
ru_vds 396.2 -
temujin 387.0 -
unxed 335.5 -
olegator99 335.0