Сайт | Скачать | Видео | Wiki

Автор Тема: что такое - QT5, GTK, оконный менеджер и desktop enviroment, все про графику  (Прочитано 1828 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн glorsh66

  • Новичок
  • *
  • Сообщений: 9
  • Репутация: +0/-0
  • Автор темы
Хотя и являюсь переодическим пользователем linux (но именно пользователем, в том плане что в основном все ставлю из пакетов, пользуюсь дистрибутивами с уже настроенным Desktop Enviroment, и не arch☻) и у меня со временем накипели вопросы, про графическую систему linux.
Т.е. вопрос вообще глобальный и не связан напрямую с Собаком☻

Ну для начала расскажу как это все работает в моем понимании. Если не прав, подправте - насколько я понял в линкусе все процессы наследуются от кого то. и получается что вначале загружается терминал (Только вот от имени какого пользователя, если мы еще не ввели пароль???)
1) загружается терминал. Он смотрит - inittab и запускает X-org
2) В x-org прописано как будет стиль отображаться. Он уже грузит десктом энвайремент.
3) Система работает. При открытии приложения программа сама не рисует свой интерфейс а дает комманду x-ам? (или QT5, GTK?) и они уже отрисовывают интерфейс.

Так вот я хотел понять в чем суть чего.
Правильно я понимаю, что X,или новомодный wayland - это приложение которое реализует вообще возможность управлять мышкой и отображать графику на экран? (такой своеобразный hook, ведь по сути у нас же работает все равно терминал, т.е. X-org - это дочерний процесс по отношению к терминалу который работает как бы в фоновом режиме.)
Причем я так понял в нем есть встроенный оконным менеджер (часики там и окошки как на компах 80-х)

Так здесь уже я плыву -
Для чего нужен сам по себе оконный менеджер? (если x-org и так обеспечивает графический интерфейс)
В чем отличие оконного менеджера от desktop enviroment

Что такое и для чего нужны QT5, GTK? И почему на формах можно заметить срачть по поводу версий GTK. (я так понимаю что это программный интерфейс для создания окон, и причем кросс платформенный, т.н. по сути библиотеки, но зачем они нужны если обратно есть desktop enviroment)
Как они работают? Они просто лежат DLL или SO на диске и когда тулзе это нужно она их ищет и подключает? (т.е. хоть 1000 тулз нагрузка не увеличивается или одна копия SO в памяти висит?)
Есть ли какой то вред от установки нескольких версий? (ну или есть проблемы не совместимости)

Также есть ли какие то проблемы по совместимости софта с оконными менеджерами, DE, или QT5, GTK
Или все упирается только в зависимости. И получается у меня софтина будет одинаково работать под KDE и под XFCE и под чем только угодно (хоть под стандратным от XORG интерфейсом) если просто есть зависимости (т.е. просто библиотеки)

Т.е. интерфейс программы строит сама программа? с помощью либ QT5, GTK.
А оконный менджер и остальное только вокруг рисует само окошко (с кнопочками свернуть и т.д.)?


И офтопом - зачем нужен chroot? (ну change root, и что то для безопасности, но в чем смысл?)

Оффлайн krasnyh

  • Ветеран
  • *****
  • Сообщений: 5319
  • Репутация: +139/-1
 Самое верное это заняться самообразованием. Гугл в помощь.
Очень маловероятно, что здешние админы будут растолковывать азы Linux.:)
Могу предложить почитать Внутреннее устройство Linux / Брайан Уорд / 2016
Или самостоятельно поискать на свой вкус книги или статьи.
https://habr.com/ru/company/piter/blog/273135/
« Последнее редактирование: 23 Апрель 2019, 17:23:48 от krasnyh »

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 33965
  • Репутация: +231/-0
    • PuppyRus-A
Ну для начала расскажу как это все работает в моем понимании. Если не прав, подправте
вики
Правильно я понимаю, что X,или новомодный wayland - это приложение которое реализует вообще возможность управлять мышкой и отображать графику на экран? (такой своеобразный hook, ведь по сути у нас же работает все равно терминал, т.е. X-org - это дочерний процесс по отношению к терминалу который работает как бы в фоновом режиме.)
Причем я так понял в нем есть встроенный оконным менеджер (часики там и окошки как на компах 80-х)
Да
Для чего нужен сам по себе оконный менеджер? (если x-org и так обеспечивает графический интерфейс)
В чем отличие оконного менеджера от desktop enviroment
WM - управлять окнами
DE = WM + полный фарш для управления системой (ФМ, настройка сети, внеш вида и ро. управление питанием ...)
для чего нужны QT5, GTK?
Для написания программ с использованием их библиотек. Иначе бы в каждой проге надо было решать проблемы рисования окна, меню и т.п.
библиотеки, но зачем они нужны если обратно есть desktop enviroment
DE как раз и написан с использованием либ ТК
Как они работают? Они просто лежат DLL или SO на диске и когда тулзе это нужно она их ищет и подключает?
лежат и подключает
хоть 1000 тулз нагрузка не увеличивается или одна копия SO в памяти висит?
Сложный вопрос. Вроде - 1 копия
Поэтому использовать микс из разных ТК  = доп. расход памяти
Также есть ли какие то проблемы по совместимости софта с оконными менеджерами, DE, или QT5, GTK
Есть. Если прога написана под gtk3 - без него работать не будет, а другие ей не нужны
Если не скомпилено под другую версию gtk3 - придется перекомпилять
Посмотреть, какие либы использует бинарник : ldd
Т.е. интерфейс программы строит сама программа? с помощью либ QT5, GTK.
Да. Так проще. Но программер может заморочиться и переписать что-то по своему
А оконный менджер и остальное только вокруг рисует само окошко (с кнопочками свернуть и т.д.)?
WM DE и пр. там же посмотрите
Кнопочки и пр. - ТК

зачем нужен chroot?
https://ru.wikipedia.org/wiki/Chroot
1. Починить или настроить нерабочий линукс из под другого рабочего.
2. Изолировать какую-то прогу от остальной системы. Т.е. если ее похакают - проблема не коснется остальной системы. Проще разобраться с одной папкой (где chroot для дырявой проги), чем стопорить сервак и переставлять систему

Обычному юзеру для работы в браузере все это можно и не знать  ;)