Я пытаюсь понять взаимосвязь между средами рабочего стола (например, KDE, Cinnamon, GNOME), оконными системами (X, Wayland) и библиотеками графического интерфейса (Qt, GTK). Вот некоторые вещи, которые, как мне кажется, я понял (поправьте меня!):
Однако что-то кажется неправильным на этом рисунке: запуская Cinnamon (на основе GTK), я могу полностью кодировать и запускать программы, использующие Qt. Как конкретные программы могут использовать свою собственную библиотеку графического интерфейса (и отправлять свои собственные инструкции по рисованию)? Разве среда рабочего стола не должна определять форму и форму окон?
Пользовательский опыт
Вы можете иметь в памяти обе библиотеки Qt и GTK (включая GTK2, GTK3 и Qt5...) одновременно, это не будет проблемой, если у вас много памяти в вашей памяти. box, но это будет означать много пейджинга и очень медленную работу, если у вас ограниченная оперативная память.
Как правило, я склонен игнорировать наборы инструментов и библиотеки, используемые там, где бокс имеет > 4 Гб оперативной памяти, меньше интересуюсь 4 Гб, но обращаю особое внимание, если бокс имеет 2 Гб, особенно. с 1 Гб. Чем больше используемых библиотек/инструментов, тем больше накладных расходов (особенно используемой ОЗУ)...
Десктопы (с использованием LXQt в качестве примера)
DE не определяют все (Lubuntu использует LXQt с Openbox, который обрабатывает максимизацию, минимизацию и т. д., поскольку LXQt не может)
Программное обеспечение построено в виде стека, и вы можете добавлять и заменять различные компоненты (используйте LXQt в Debian, и по умолчанию он будет использовать xfwm4
из проекта XFCE вместо Openbox, предпочитаемого командой Lubuntu).
Программист имеет контроль над тем, что он использует, и он склонен выбирать эффективные инструменты, отвечающие его потребностям или целям проекта (LXQt; буква L означает легкость, к которой относятся серьезно).
Выбор
Хотя конечные пользователи могут тратить оперативную память, выбирая программы GTK, упаковщики могут свободно использовать различные WM (мой пример openbox/xfwm4) и строить систему по своему выбору.
После установки вы также можете заменять компоненты.
У пользователей GNU/Linux есть выбор, мы можем выбирать, какие части различных систем существуют в нашем стеке, даже удваивать и использовать несколько библиотек/наборов инструментов, которые делают одно и то же по-разному и тратят ресурсы только потому, что мы можем, или нам это нравится.