What are we breaking now? Lennart Pottering

Час назад закончился один из самых ожидаемых докладов на конференции Devconf в Брно. Места в зале слушатели занимали заранее, чем немного помешали предыдущему докладчику закончить сессию. Зал был действительно заполнен полностью, что еще раз доказывает, что разработки внедряющиеся под предводительством Леннарта Поттеринга волнуют довольно большое количество профессиональных разработчиков.

Название доклада было довольно провокационным "What are we breaking now?" (Что мы сейчас ломаем?), что вполне соответсвовало так образу самого Леннарта, так и "революционности" высказанных идей. Доклад начался с постулата о том, что основная цель предлагающихся нововведений - сделать Linux современной и популярной ОС, а не навредить множеству разработчиков и пользователей. Несмотря на это в течении всего доклада обсуждение было довольно ожесточенным, так со стороны аудитории, так и со стороны Леннарта.

Итак, какие нововведение планируются.

  1. Изменения в наименовании сетевых устройств. Данное новведение уже обсуждалось. Основной технический аргументы - неизменное наименование интерфейсов при перезагрузках и более очевидное соответвие названия интерфейса физическому устройству.
  2. Изменения в сценарии загрузки операционной системы. Дословно все будет выглядеть следующим образом: "A script which passes a script to generate a script (Boot Loader Spec)". Необходимо понимать что фраза содержит некую долю провокации, что вполне оправдано в докладе с таким названием. По словам разработчиков новый сценарий загрузки позволит упростить автоматический поиск и запуск ОС на машинах с мультизагрузкой. Следует уточнить, что новый стандарт загрузки можно включить в любой из существующих загрузчиков (в тч на архитектурах отличных от x86), сейчас работа проводится над Grub2.
  3. Dbus в ядре. От этом уже упоминалось в рассылках и на конференциях. Кроме того, Greg Kroah-Hartman в своем блоге уже заявил что работает над реализацией шины обмена сообщениями, которая будет работать в ядре и возмет на себя обязанности DBus. Среди требований к шине обмена сообщений отдельно выделили: гарантированную доставку, zero-copy, наличие гибких механизмов распределения доступа и безопасности. По словам разработчиков, именно из-за этих требований существующие механизмы IPC не подходят для обмена сообщениями. В докладе отдельно отмечалось, что рядом разработчиков уже предпринимилось две неудачные попытки внедрить шину обмена сообщениями в ядро, но Леннарт уверен что в этот раз им повезет (во многом благодаря поддержке Greg KH).
  4. Новый способ распространения приложений в Linux.Справедливости ради стоит упомянуть, что в докладе данный тезис звучал как "Контейнеры для безопасного запуска приложений", но довольно быстро данный пункт был расширен до более общей идеи. Был высказан тезис о том, что распространение приложений в виде RPM пакетов имеет существенные недостатки, в частности усложняет жизнь сторонним разработчикам. С точки зрения Леннарта лучше перейти к модели распространения мобильных приложений. При этом для запуска данных приложений должна существовать некая защищенная инфраструктура, позволяющая пользователю сконфигурировать права доступа для устанавливаемого приложения. Подобная модель уже давно работает на мобильной платформе Android.

Хочется отдельно подчеркнуть что высказанные идеи активно обсуждаются в сообществе разработчиков, и пока рано говорить о конкретных технических реализациях.