LINUX.ORG.RU

Ingo Molnar, разработчик ядра Linux «Нам нужно полностью пересмотреть модель распространения ПО»

 , ,


1

4

Представляю Вашему вниманию мой перевод статьи разработчика ядра Linux Инго Молнара (Ingo Molnar), размещенной в двух частях на его странице в G+. Статья вызвала горячее обсуждение на зарубежных тематических новостных площадках, и, на мой взгляд, заслуживает Вашего внимания.

Удивительно, но главным недостатком дистрибутивов Linux для настольных ПК является их недостаточная свобода.

Помните, сколько уязвимостей и проблем с качеством Linux-систем было найдено в последнее время, в частности моими коллегами Linas Vepstas, Jon Masters, Linus Torvalds и многими другими, и информация, с которая я знакомился в обсуждениях, привела меня к выводу, что разработчики свободного ПО просто не осознают, в какую бездну провалились.

Серьёзные недостатки Linux-систем, с которыми мы постоянно сталкиваемся практически во всех, даже самых популярных дистрибутивах Linux, имеют первопричину в фатальных архитектурных ошибках 10-20-летней давности.

Дистрибутивы Linux создали собственные замкнутые (и даже закрытые) экосистемы и пытаются контролировать по 20 тысяч программных пакетов, которые суммарно содержат миллиарды строк кода. Обычные задержки при обновлении приложений составляют недели (вплоть до месяца) для исправлений безопасности и месяцы (вплоть до года) для серьёзных нововведений. Все Linux-дистрибутивы - централизованные организации с иерархической структурой, а не распределённые в пространстве свободные демократические сообщества.

А как поступают остальные (большей частью не являющиеся свободными) конкуренты? Они движутся в прямо противоположном направлении: Apple/iOS и Google/Android имеют только около ста тесно интегрированных системных пакетов, которым уделяется огромное внимание и с которым работают как с одним целым проектом. Эти системы документируются и развиваются в десятки раз интенсивнее, чем это происходит с десятками тысяч пакетов в рамках каждого дистрибутива Linux. И гораздо легче задокументировать 10 миллионов строк кода, чем тысячи миллионов.

Для обеспечения должного разнообразия приложений на площадках Apple Store и Google Play сторонним разработчикам открывается полный доступ к внутренней структуре всей платформы и ведётся контроль над внедрением в систему дополнительных приложений. Как результат, большинство новых приложений добавляются с задержкой лишь в несколько дней (в пределе - несколько недель), а их обновления - в несколько часов (в редких случаях - нескольких дней), в общем, весь процесс происходит настолько быстро, насколько быстро над этим сам работает каждый проект. К тому же для iOS/Android нет практически никаких ограничений и препятствий для приложений, стремящихся попасть на официальные площадки по распространению - они попадают туда почти автоматически.

В противоположность этому, для попадания в официальный репозиторий любого дистрибутива Linux, сторонний проект потратит месяцы на бесплодные бюрократические и политические разбирательства.

В итоге платформы iOS и Android способны поддерживать и управлять десятами тысяч приложений, число которых в перспективе легко может дорасти до миллиона.

(Да, мы все знаем случаи, когда Apple или Google банили те или иные приложения. Не слушайте, что они при этом говорят, а обращайте внимание вот на что: обе площадки содержат сотни тысяч приложений, и с точки зрения пользователей являются полностью открытыми системами распространения.)

Системы управления пакетами в Linux неплохи для задач корпоративного сектора (также имеющего иерархическую структуру и использующего централизованное планирование), но настольные Linux-дистрибутивы перестали расти уже 10 лет назад на отметке в тысячу пакетов...

Отсюда и явное осуждение со стороны пользователей Linux - им больше нравится открытая площадка для распространения приложений, а не концентрация деятельности разработчиков на тысяче официальных пакетов, закрытость для внешних контактов и низкое качество.

Да, я слышу ваш довод «но дистрибутивы Linux - это свободное ПО!». На самом деле, свобода ПО имеет важное значение для разработчиков или организаций, но для обычных пользователей свобода за спиной Linux-систем не имеет никакого смысла, если это свободное ПО не приносит при этом никакой практической пользы, например, настоящей свободы использования.

То есть, для исправления текущей ситуации с Linux-дистрибутивами нам нужно полностью пересмотреть модель распространения ПО: уйти от церковного строя к рыночной системе. Конкретнее, понадобится учесть следующие технологические нюансы:

  • Необходимость принудительного использования безопасной «песочницы» для запуска приложений как на уровне пользователя, так и на уровне ядра. Сегодня установка нового пакета из репозитория - это компромисс и выбор из серии «все или ничего» в плане общей безопасности системы. Пользователи должны быть свободны в своём желании получать и запускать даже непроверенный код.
  • Плоская модель зависимостей пакетов (то есть, обновление одного пакета не должно принудительно заставлять обновлять другие (дублирование содержимого может быть устранено на другом уровне системы, например, на уровне файловой системы).
  • Гарантированная совместимость ABI с новыми версиями основной системы (то есть, при установке пакета он будет гарантированно работать в дальнейшем, не требуя от пользователя обновлений). Пользователи должны быть свободны от пресса необходимости постоянного обновления большей части дистрибутива.
  • Узловая сеть для увеличения пропускной способности каналов. Пользователи должны быть свободными от тяжеловесных и развесистых зависимостей приложений.
  • Криптографическая защищённость данных, а также наличие обзоров и официальных пометок о безопасности и достоверности приложения. Этим достигается важный пункт в системной безопасности: необходимые сертификаты для установки ПО понадобятся для корпоративного сервера так же, как сейчас для обычного пользователя, пожелавшего опробовать новую игру на смартфоне. Такое устройство системы распространения ПО позволит пользователям либо присоединиться к выбору большинства (положившись тем самым на количество установок), либо прислушаться к специалистам (и при выборе пакета исходить из авторитетного мнения экспертов), а также смешивать оба этих подхода.

На мой взгляд, Android маркет активно приближается к описанной модели функционирования, за исключением наличия узловой сети для загрузки пакетов и структурированной системы репутации приложений, к тому же Android, разумеется, никак не относится к свободному ПО.

«Маркет» расширений Gnome3, по-моему, успешно движется в нужную сторону, однако он не рассматривает никаких вопросов безопасности и не обеспечивает стабильность системы после установки пакетов.

Свободное ПО уже 10-15 лет тупо следует примеру развития закрытых систем и никогда даже близко не приближалось к простой и действенной модели распространения и заботы о целевой операционной системе. Закрытое ПО делает все большие шаги вперёд и свободным проектам нужно хотя бы поспевать за ним, чтобы выжить. И я думаю, мы это сделаем, я уверен, что свободное ПО как никакое другое подходит для реализации описанной технологии распространения.

>>> Источник

★★★★★

Проверено: Shaman007 ()
Последнее исправление: ins3y3d (всего исправлений: 2)

Ответ на: комментарий от r

Хы... А я думал, что там так же, как и в винде, надо качать всё с сайта разработчика.

carasin ★★★★★
()
Ответ на: комментарий от ooobooontooo

Просто я думал, что оно только для iOS, а оно вон как.

carasin ★★★★★
()
Ответ на: комментарий от Bod

Ну, тут причины не только в саморекламе могут быть

Дело ж не в рекламе. Тут в том то и суть что сплешскрины народ вынужден вставлять - и на это уходит много сил - потому что нет инфраструктуры котора может решить проблемы - в смысле безопасности, совместимости, и прочей - чтобы зюзеводы пилили дистрибутив а не либреофис - а либреофис напилят либрофисисты. Про это он и говорит - что каждый дистр вынужден майнтейнить миллиарды строк кода потому что отсутствуют кооперационные стандарты, которіё снимут с них это бремя. Из этого не проистекает что станет меньше дистров вась - наоборот их станет больше. Потому что каждому васе не нужно майнтейнить и либрофис в том числе.

r ★★★★★
()
Ответ на: комментарий от ooobooontooo

Врать то не нужно

Только месяц назад настраивал новый мини. Уже нашел способ заинсталить бесплатный пятый XCode без ввода кредитной карты?:) Давали мимо стора качать только четвертый.

r ★★★★★
()
Ответ на: комментарий от lucentcode

3 версии платформы

И куча производителей, каждый из которых делает немного свою прошивку. Куча gpu, каждый со своими фичами и «особенностями». На бумаге оно всё действительно замечательно, а на деле — нет.

PolarFox ★★★★★
()
Ответ на: комментарий от r

Тогда уж проще воплотить несбыточную мечту о едином формате пакетов (хотя бы для самых распространённых дистрибутивов) и едином репозитории.

Но ведь даже для того же ядра, которое этот Мольнар так усиленно пилит, почти каждый дистрибутив накладывает свои мегатонны патчей. И не ленятся ведь это делать? Значит зачем-то это им нужно?

Bod ★★★★
()
Ответ на: комментарий от r

К стати невозможность инсталяции софта из стора без апдейта оски - доставляет отдельно. А то как оно перестает апдейтится стоит только разок порваться соединению и нигде нет галки «проапдейться уже дура даже если соединение рвется» - это вообще эпический звездец,

r ★★★★★
()
Ответ на: комментарий от Bod

И не ленятся ведь это делать? Значит зачем-то это им нужно?

Это их основная работа - они делают дистр OS. А софта уже стало много - и реально они не справляются. Уже сейчас даже топовые дистры не одинаково вкусны с точки зрения софта. Чудак объясняет почему: надо перестать страдать непрофильной фигней дублируя усилия и сделать так чтобы усилия не дублировать.

r ★★★★★
()
Ответ на: комментарий от daemonpnz

Любопытная система, но:

Для работы Qubes необходима система с 4 Гб ОЗУ, 64-разрядным CPU Intel или AMD, желательно с поддержкой технологий VT-d или AMD IOMMU. Из графических карт в полной мере поддерживается только Intel GPU, при использовании NVIDIA наблюдаются проблемы, а работа карт AMD/ATI не протестирована.

Примерно это я предполагал с первых же строчек прочитанного :)

Bod ★★★★
()
Ответ на: комментарий от r

Ты адекватен как и всегда, но сегодня адекватнее адекватного :)

daemonpnz ★★★★★
()
Ответ на: комментарий от r

Чудак объясняет почему: надо перестать страдать непрофильной фигней дублируя усилия и сделать так чтобы усилия не дублировать.

Угу. И типа так - программисты начнут писать беспроблемный универсальный доверяемый код, а если не начнут - так мы их в песочницы изолируем. Хм. Не верю я в это..

Bod ★★★★
()

Автору перевода спасибо. Автору оригинала спасибо. Поддерживаю руками и ногами. Теперь бы от теории к практике.

daemonpnz ★★★★★
()
Ответ на: комментарий от Bod

И типа так - программисты начнут писать беспроблемный универсальный доверяемый код, а если не начнут - так мы их в песочницы изолируем. Хм. Не верю я в это...

Дык дело в том что альтернативы то нет:) Потому что майнтейнеры тоже не прочитывают каждую строчку кода здоровых проектов - они следят чтобы все компилялось, запускалось и пытаются по мере сил фиксить баги и накатывать патчи. А в случае, когда я не нахожу пакета - я должен идти сам в апстрим и компилять, запускать и накладывать патчи. OBS это уже шаги в правильном направлении. Мы туда дойдем полностью когда в той же зюзе в официальном репе не будет либрофиса, а будет официальный реп либрофиса на OBS. Что повторюсь не помешает васям создавать своим репы со своими принципиально новыми либрофисами.

r ★★★★★
()
Ответ на: комментарий от r

К стати это же вариант монетизации сервисов типа OBS - аналогично гитхабовской - услуги предоставления частных систем автоматизированной сборки для разработчиков.

r ★★★★★
()

радует то, что автор всего лишь разработчик ядра, и на дистрибутивы влияния не имеет.

Он вроде начинал с анализа архитектурных проблем ядра, а начал гнать на дистрибутивы. Видать припёрло Красную Шапку совсем

Пора расстрелять вместе с Поттерингом

argin ★★★★★
()
Ответ на: комментарий от thesis

Глядишь, еще доживем до вменяемой системы распространения приложений в люниксах.

Так приложений раз-два и обчелся, а пакетов да, много :)

Buy ★★★★★
()
Ответ на: комментарий от r

«Андроед тоже есть. При чем он есть именно там где будущее - на новейших портативных девайсах. Как долго по твоему ждать когда планшетный формат начнет вытеснять ноутбучный? А когда начнет - производители по твоему вдруг откуда ни возьмись вместо андроеда будут ставить туда бубунту?» адроид это такой неожиданный дистрибутив линукс. с урезанной функциональностью. а будующее это полноценный линукс на вышеназванных устройствах. который ставить будут сначала пользователи а потом и производители...

anonymous
()

О да, давайте сделаем LinuxStore, куда каждый пионер будет запихивать свой форк всего что только движется сразу после того как его пошлют с его бестолковыми патчами на все три буквы.

Так и вижу список: mplayer от васи123, mplayer от пети345. Просмотреть ещё 9999 результатов? Супер, че там.

Но это фигня! Каждый форк будет тянуть за собой свои версии либ, которые автору показалось удобным использовать! И все это хозяйство будет пытаться взлететь. Вам кажется что винда жрёт много ресурсов? Загрузите LinuxStore и прочувствуйте что такое жрать ресурсы по взрослому!

Говорите нельзя будет? А где тогда свобода? И кто будет решать что можно, а что нет?

d9d9 ★★★★
()

Звучит оно хорошо, но пожалуйста не трогайте наш GNU/Linux.
Делайте свою отдельную ОС — можете взять даже готовый код, но наши Slackware, Debian, Fedora и прочих не надо сюда примешивать

Xenius ★★★★★
()
Ответ на: комментарий от myhand

Гугл вейв тоже хорошо посчитали, да…

Deleted
()
Ответ на: комментарий от daemonpnz

Почему же ж в андроиде-то не расплодилось mplayer'ов от васи и от пети?!

Наверно того что это коммерческий проект, копирайты, закрытые сорсы, свои лицензии, нет?

Хотя даже в том же аппсторе на слово rdesktop выдаст несколько десятков убогих поделок.

d9d9 ★★★★
()
Ответ на: комментарий от geekless

Ты ведь не очередной органайзер на телефон ставишь, а, вероятно, вполне известный софт. Апстриму программы ты доверяешь, или нет? Если доверяешь, то вопрос только о доверии к автору рецепта.

Не-не-не, идея в том, что будет, если софта под Линукс станет очень много и когда разработчикам программ придется самостоятельно организовывать их распространение под Линуксом. То есть погуглить и узнать отзывы на интересную программу не всегда возможно. Тем более, что «закладку» могут и не в первой версии заложить.

AppArmor и Plash погуглю, спасибо.

proud_anon ★★★★★
()
Ответ на: комментарий от d9d9

У кого закрытые сорсы, какие копирайты?... ты, товарищ, бросай веществами баловаться.

daemonpnz ★★★★★
()
Ответ на: комментарий от dubrsl

Не хочешь нового - сиди на stable

Проблема в том, что нельзя пользоваться новым софтом на старой платформе.

thunar ★★★★★
()
Ответ на: комментарий от thunar

thunar

Проблема в том, что нельзя пользоваться новым софтом на старой платформе.

Это абсолютно нормально.

h
()
Ответ на: комментарий от r

Там без него никуда. Пароль на эпплстор спрашивается раньше чем операционка доинсталистся.

Вводить его не обязательно.

Весь софт инсталится из стора.

А мужики-то не знают.

anonymous
()

Спасибо за отличный перевод интересной статьи! Так держать!

badazimer
()
Ответ на: комментарий от r

пятый?!?!
Я не помню, нужно ли там вводить кредитку для установки бесплатного софта.
Но в любом случае, ближайший треккер никто не отменял.

anonymous
()

Все верно говорит

Siado ★★★★★
()
Ответ на: комментарий от ins3y3d

Просигнальте, если Вам интересны мои дальнейшие переводы тематических статей.

Сигналим, так держать =)

Siado ★★★★★
()
Ответ на: комментарий от r

Окстись. Любой может стать майнтейнером любого свободного дистрибутива, или даже отдельного пакета в нём.

r2d2
()

Автор похоже курнул, на приходе мимо пронеслась крутая идея, но быстро отпустило. И выдать он осилил только, что у яблоко с ведройдом круто, а у нас лажа. Яблоко с ведройдом решают достаточно узкие задачи(предоставить платформу), а остальное не их дело. Потому и выглядит, что они справляются со своей задачей. «Открытое ПО (GNU/Linux дистрибутивы)» тема гораздо глобальней, и не так все просто. Тут десятка аналитиков не хватит все охватить, а не то, что курнувшему программисту.

Nirdosh
()

обе площадки содержат сотни тысяч ненужных приложений,

Для этого не нужно пересматривать модель распространения ПО. Нужно сделать песочницу и второй репозиторий, в который кто угодно сможет аплоадить свои поделки, статически слинкованные со всем необходимым (что бы на ABI пофиг было).

Догнать и перегнать андроид-маркет по бесполезности тогда можно будет без проблем.

ForwardToMars
()

А это, я чо-то не понял.

Это он хочет чтобы был какой-то аналог гугломаркета в котором нет _ВООБЩЕ_НИ_ОДНОГО_ хоть сколь-нибудь полезного приложения. Там же 10% какие-то сплошные убогие и дико корявые поделки, типа ConnectBot'а, которые вроде как и могли бы теоретически быть полезны, но от которых неудержимо тянет блевать сразу просле ознакомления, если они вообще заработают, а остальные 90% - это «читайте мой суперблог про меня», «одноглазники.app»,«мэйлруклиент» и прочее рекламное дерьмо которое должно быть уничтожено вместе с создателями. Мать их, да там даже mplayer'а нету самого обычного консольного.

Накой чорт это нужно? Куча говноедов тут же наполнит эту софтораздавалку своими никому не нужными говноблогочиталками имени себя (мэйлруклиентами, яндехкартами, да в общем вот этой всей херотой которой собственно и наполнен гугломаркет и, подозреваю, applestore), и порнографией типа упомянутого ConnectBot'а причём обязательно с тегами «системный софт», «аудио-видео» и т.п. и всё.

Если чуваку хочется бабла поднять на дебилах создающих «апплетки для чтения блогаименисебя», то зачем при этом делать вид, что это типа какие-то там соображения на какую-то важную тему?

Ну и по большому счёту - чем не устраивает configure;make install, или вообще разные ебилды/apt-source -b и всё такое? В 90% случаев соберётся и новое, и старое, и на новой системе и на старой.

Stanson ★★★★★
()

Кстати, после трёх дней пользования андроидом (правда неактуальной версии — 2.2) я бы не стал приводить его в пример как удобную для конечного пользователя вещь, на которую нужно равняться. Существуют недостатки технического и эргономического плана, напрямую не связанные с желанием гугла завладеть пользователями. А именно (из того, что заметил за 3 дня):

  • Часы нельзя выставить с точностью до секунды, кроме как по сотовой сети (но не все операторы это поддерживают, а ведь андроид ставят не только на телефоны). Ни по NTP (без рута), ни вручную.
  • Для совершения многих действий нужно скользить пальцем по экрану.
  • Нельзя без рутирования дать приложению слушать порт 0-1023. Да, это не их идея, но там, откуда она пришла, у владельца компьютера root-права не отнимают. Таким образом, невозможно, например, поднять SMB-сервер, что может быть полезно.
  • Нет поддержки Ad-Hoc у Wi-Fi.
  • Свою мелодию звонка и (в особенности) уведомления можно поставить только весьма нетривиальными средствами.
  • Нет доступного API для записи разговора и написания автоответчика.
  • «Карты» то ли не умеют использовать компас, то ли его использование нетривиально (вроде только в режиме навигации). А мне хотелось бы просто развернуть карту в соответствие с текущим положением телефона.
  • Встроенный мультимедиа-фреймворк не позволяет прикручивать сторонние кодеки.

    И это только за 3 дня эксплуатации заметил.

Ttt ☆☆☆☆☆
()
Ответ на: комментарий от Ttt

И это я ещё не упомянул проблемы, решаемые установкой дополнительного софта без рутирования. Например, в программе для работы с камерой нет автоспуска. Они всерьёз предлагают фотографировать себя в зеркале? Или с вытянутой руки?

Ttt ☆☆☆☆☆
()
Ответ на: комментарий от onon

onon

А он сейчас безопастный?

Сейчас в репах проверенное.

CrossFire ★★★★★
()
Ответ на: комментарий от ooobooontooo

Я думаю ты знаешь уже куда тебе надо пройти

Ого, уже даже не только по ссылкам не ходим, но даже топикстартера с камментами не читаем. Маладца. :)

ЗЫ: Ведроид на телефоне - это запредельный пипец. Не понимаю как это вообще можно использовать. Конечно, говорят, что это не предел и винмобайл ещё хуже, но, к счастью, с последним пока не сталкивался, да и в сортах всякой пакости разбираться как-то не очень хочется.

Stanson ★★★★★
()

Годно. Переводи. Многим будет интересно.

Suntechnic ★★★★★
()
Ответ на: комментарий от Stanson

ЗЫ: Ведроид на телефоне - это запредельный пипец. Не понимаю как это вообще можно использовать. Конечно, говорят, что это не предел и винмобайл ещё хуже, но, к счастью, с последним пока не сталкивался, да и в сортах всякой пакости разбираться как-то не очень хочется.

Советую ускориться в сторону ближайшей стены.

ooobooontooo
()
Ответ на: комментарий от Stanson

Ого, уже даже не только по ссылкам не ходим, но даже топикстартера с камментами не читаем. Маладца. :)

Чудила, ты брыжжешь слюнями на Market андроида, ничего общего с ТС.

ooobooontooo
()
Ответ на: комментарий от ooobooontooo

Чудила, ты брыжжешь слюнями на Market андроида, ничего общего с ТС.

Какая разница, market, play, store или как там ещё назовут эту хрень. Там НИЧЕГО полезного и качественного нет и никогда не будет. Просто исходя из самой концепции этих штук. Всё, что мной было когда-либо поставлено на ведроид - было скачано с сайтов разработчиков при полном отсутствии их присутствия в market/play/store и тому подобных.

Stanson ★★★★★
()
Ответ на: комментарий от r

Ты все про ерему. Причем тут гнуплатформа? Андроед - это тоже линукс. Просто у него и бубунты различная модель распространения.

Ты не «линуксом» пользуешься, а платформой GNU и приложениями для неё. Аналогично про и Андройд.

geekless ★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.