Существует множество разных операционных систем с открытым исходным кодом, и если вы пользуетесь одной из них, то почти наверняка она будет на базе ядра Linux и набора программ GNU. Многие думают, что дистрибутив GNU/Linux и был первой open source операционной системой. Но это не так. Его опередил проект Berkeley Software Distribution, или BSD. Причем будет справедливо сказать, что он был также более профессиональным и ориентированным на рынок. Но почему тогда BSD сейчас находится на задворках экосистемы open source, тогда как GNU/Linux играет одну из центральных ролей? Посмотрим на это с исторической перспективы.
Рубрика «linux» - 66
Почему BSD проиграла в битве с GNU-Linux?
2019-01-14 в 10:34, admin, рубрики: BSD, history, linux, open sourceld -z separate-code
2019-01-14 в 6:49, admin, рубрики: compiler, exploit mitigation, linker, linux, security, Блог компании «Digital Security», информационная безопасность, Разработка под Linux
Речь в этой статье пойдёт о небольшой security-фиче, добавленной в GNU ld к релизу 2.30 в декабре 2018 года. На русском языке это улучшение упоминалось на opennet с такой аннотацией:
режим "-z separate-code", повышающий защищённость исполняемых файлов ценой небольшого увеличения размера и потребления памяти
Давайте разберёмся. Чтобы объяснить, о какой проблеме безопасности идёт речь и в чём состоит решение, начнём с общих черт эксплойтов бинарных уязвимостей.
Тестирование PostgreSQL с HugePages в Linux
2019-01-09 в 15:08, admin, рубрики: benchmarks, devops, linux, open source databases, postgresql, Блог компании Southbridge, Серверное администрирование, системное администрированиеЯдро Linux предоставляет широкий спектр параметров конфигурации, которые могут повлиять на производительность. Главное — выбрать правильную конфигурацию для вашего приложения и рабочей нагрузки. Как и любой другой базе данных, PostgreSQL необходима оптимальная настройка ядра Linux. Неправильные настройки могут привести к снижению производительности. Важно проводить сравнительный анализ производительности базы данных после каждого сеанса настройки. В одном из своих предыдущих постов под названием "Tune Linux Kernel Parameters For PostgreSQL Optimization" я описал некоторые из наиболее полезных параметров ядра Linux и то, как они помогают повысить производительность базы данных. Теперь я поделюсь результатами сравнительного тестирования после настройки HugePages в Linux под различными нагрузками PostgreSQL. Я провел полный набор тестов под множеством различных нагрузок PostgreSQL с различным числом параллельных клиентов.
Фаззинг в стиле 1989 года
2019-01-09 в 8:20, admin, рубрики: C, linux, open source, информационная безопасность, Тестирование IT-систем, фаззингС наступлением 2019 года хорошо вспомнить прошлое и подумать о будущем. Оглянемся на 30 лет назад и поразмышляем над первыми научными статьями по фаззингу: «Эмпирическое исследование надёжности утилит UNIX» и последующей работой 1995 года «Пересмотр фаззинга» того же автора Бартона Миллера.
В этой статье попытаемся найти баги в современных версиях Ubuntu Linux, используя те же самые инструменты, что и в оригинальных работах по фаззингу. Вы должны прочитать оригинальные документы не только для контекста, но и для понимания. Они оказались весьма пророческими в отношении уязвимостей и эксплоитов на десятилетия вперёд. Внимательные читатели могут заметить дату публикации оригинальной статьи: 1990 год. Ещё более внимательные заметят копирайт в комментариях исходников: 1989.
Читать полностью »
Реализация горячей перезагрузки С++ кода в Linux
2019-01-06 в 14:11, admin, рубрики: c++, c++11, linux, MacOS, Разработка под Linux, Разработка под MacOS
* Ссылка на библиотеку в конце статьи. В самой статье изложены механизмы, реализованные в библиотеке, со средней детализацией. Реализация для macOS еще не закончена, но она мало чем отличается от реализации для Linux. Здесь в основном рассматривается реализация для Linux.
Гуляя по гитхабу одним субботним днем, я наткнулся на библиотеку, реализующую обновление c++ кода налету для windows. Сам я слез с windows несколько лет назад, ни капли не пожалел, и сейчас все программирование происходит либо на Linux (дома), либо на macOS (на работе). Немного погуглив, я обнаружил, что подход из библиотеки выше достаточно популярен, и msvc использует ту же технику для функции "Edit and continue" в Visual Studio. Проблема лишь в том, что я не нашел ни одной реализации под не-windows (плохо искал?). На вопрос автору библиотеки выше, будет ли он делать порт под другие платформы, ответ был отрицательный.
Сразу скажу, что меня интересовал только вариант, в котором не пришлось бы менять существующий код проекта (как, например, в случае с RCCPP или cr, где весь потенциально перезагружаемый код должен быть в отдельной динамически загружаемой библиотеке).
"Как так?" — подумал я, и принялся раскуривать фимиам.
Вышел Linux 4.20 — что изменилось в новой версии ядра
2019-01-06 в 10:57, admin, рубрики: linux, Блог компании ИТ-ГРАД, ИТ-ГРАД, Настройка LinuxМы уже рассказывали о нововведениях, которые были сделаны в Linux kernel 4.18. Сегодня поговорим о том, что внедрили в 4.20, и проведем краткий обзор последующего релиза.
С большой долей вероятности он будет назван «5.0».
Эффект теплого лампового радио
2019-01-03 в 21:21, admin, рубрики: diy или сделай сам, linux, Raspberry Pi, единороги, звук, звуковой эффект, Разработка на Raspberry Pi, теплое ламповое, шум
В начале целью этого домашнего проекта было создание интернет-радиоприемника из Raspberry Pi. Мне хотелось найти или восстановить какой-нибудь старый деревянный приемник, или, хотя бы, корпус, поставить туда Raspberry, аккумулятор, блэкджек, и чтобы он раздавал вайфай. Из-за нехватки времени все это было благополучно отложено в долгий ящик, но, может быть, со временем реализую. Зато сделал программную часть проекта, о которой и хочу рассказать.
Катаемся на Xiaomi Vacuum Cleaner
2019-01-03 в 16:25, admin, рубрики: dualshock, IoT, linux, perl, python, Интернет вещейВот и пришли новогодние праздники, а с ними и куча свободного времени, да еще и умный пылесос угодил ко мне в руки. Как только я увидел в приложении MiHome ручное управление, я сразу понял, что хочу сделать: будем управлять пылесосом с помощью геймпада Dualshock v4!
Читать полностью »
Яндекс присоединился к защите Linux и IT-индустрии от патентного троллинга
2018-12-18 в 6:41, admin, рубрики: linux, LOT Network, Open Invention Network, open source, Блог компании Яндекс, патентование, патенты, Софт, яндексМы верим, что жизни миллионов пользователей меняются к лучшему только тогда, когда идея превращается в готовый продукт, а не используется для шантажа и ограничений. Поэтому Яндекс вступил в альянсы Open Invention Network и LOT Network, объединяющие тысячи разработчиков для совместной защиты от злоупотреблений патентным правом.
В этой статье мы расскажем, почему Яндекс патентует свои разработки. Вы узнаете, зачем патентовать технологии с открытым исходным кодом и в чём суть альянсов, в которые мы вступаем. А ещё мы приглашаем всех читателей Хабра в комментарии для обсуждения достоинств и недостатков современной патентной системы.
Шлюзы промышленных протоколов обмена на Linux. Собери сам
2018-12-17 в 10:58, admin, рубрики: linux, OPC, opc da, opc ua, plc, scada, автоматизация, асду, асу тп, АСУТП, программирование микроконтроллеров, Промышленное программирование, протокол обмена, протоколы передачи данных, Разработка под Linux, шлюз на линуксЯ занимаюсь разработкой, внедрением и эксплуатацией систем автоматического управления технологическими процессами (АСУ ТП). Поначалу работал со SCADA-системами. Потом довольно быстро переключился на работу с протоколами обмена промышленных устройств. Как самостоятельное написание драйверов, так и настройка систем сбора данных. В настоящий момент моя работа проходит атмосфере Modbus-ов, МЭКов-101/104-х, ОРС и прочих протоколов.
Рис. 1. Многообразие протоколов обмена, используемых в АСУ ТП
Читать полностью »