Если вы подчеркиваете, что X является источником накладных расходов в современной системе Linux, вы, вероятно, не ищете правильное место. X был разработан очень давно для компьютеров, гораздо менее мощных, чем современный мобильный телефон.
Если вы посмотрите на «top» и увидите, что X использует память, вам предстоит проделать большую работу, чтобы выяснить фактические издержки X. Существуют карты памяти, которые не являются «реальной» памятью, и есть ресурсы (такие как большие блоки пикселей), выделенные от имени приложений. Суть в том, что память, показанная для X сверху, не то, что можно подумать.
Люди также слышат, что X использует «сеть», и думают, что это будет узким местом в производительности. «Сеть» здесь означает локальный сокет домена UNIX, который имеет незначительные издержки в современном Linux. Вещи, которые могут стать узким местом в сети, есть быстрые расширения X (растровые изображения совместно используемой памяти, DRI и т. Д.). Выполняемые потоки не обязательно будут быстрее, чем сокет X, поскольку узкие места больше связаны с внутренней проблемой координации нескольких потоков или процессов, обращающихся к одному и тому же оборудованию, чем с минимальными издержками на локальные сокеты.
Многопроцессная настройка имеет много преимуществ, таких как гораздо сложнее аварийно завершить работу. Посмотрите, например, Google Chrome, используя несколько процессов, чтобы быть более надежными - и, оказывается, также для быстрой работы. Меньше процессов не обязательно означает более современные.
Есть много причин, по которым приложения, использующие GTK, не прозрачно портируют на DirectFB. Для Firefox одна из них заключается в том, что он иногда использует X напрямую. Кроме того, некоторые независимые от инструментария вещи, такие как интерфейс плагина браузера, используют X напрямую. Flash плагин не будет работать на DirectFB, например. Даже приложения, которые не используют X напрямую, часто предполагают, что существует нормальная среда рабочего стола на основе X (GNOME и т. Д.).
Еще одна проблема с заменой X - это поддержка драйверов, когда обе лучшие графические карты (NVidia, ATI) имеют проприетарные драйверы, которые намного лучше, чем бесплатные драйверы, и эти проприетарные драйверы привязаны к X.
И, конечно, есть путь миграции. Если у вас есть сотни приложений, использующих X, и нет явных недостатков конечного пользователя в X, никто не собирается переключаться на то, что не работает ни на одном приложении. Скорее всего, решением здесь будет X-сервер без root, работающий в новой оконной системе, поэтому старые приложения по-прежнему работают.
Старый не всегда плох. X был очень хорошо спроектирован умными людьми, и это позволило ему развиваться, изменяться и работать еще много лет спустя.
В любом случае, все, что вы можете сказать, это то, что в основном переключение с X - это тонна усилий, это действительно хорошо работает, и «работает отлично» никогда не применялось ни к одной из альтернатив (по крайней мере, если вы хотите иметь возможность запустить большинство приложений на большинстве аппаратных средств).
Существуют проблемы с X - например, невозможность сделать атомарное обновление экрана, на что смотрит проект Wayland - но большинство проблем действительно косметические для пользователей (например, неатомарные обновления) или косметические для разработчиков ( старые устаревшие расширения и тому подобное). Это просто неправда, что можно сбросить Х и волшебным образом получить что-то намного меньше и быстрее. В основном это основано на предположениях людей, что «старая» и «использующая сеть» должны быть медленными и раздутыми, но опять же, X был разработан для действительно очень дрянного оборудования. Раньше я нормально запускал X (и Emacs!) На своем 386 с 8 мегабайтами оперативной памяти или чем-то в этом роде.