LINUX.ORG.RU
ФорумTalks

Почему иксы будут существовать еще 10 лет, или главная ошибка всех замен X.org

 , ,


0

3

Berlin/Fresco, Y Window System, Wayland, Mir наступили на одни и те же грабли- ни одна замена иксов не является единым целым, как иксы.

  • Иксы - это единое отлаженное целое, работающее сегодня и не требующее лишних ковыряний в системе и костылей.
  • Mir - это иксы без нормального объектно-ориентированного программирования, в результате чего, кроме юнити, оказалось на него ничего не будет, почему Mir и был закопан.
  • Wayland- это без нормальной поддержки оборудования, в результате чего Wayland работает только в Raspbian 9, и то его там не спешат, в отличие от некоторых ставить как дефолт.
  • Y Window System - еще одна попытка выкинуть иксы - никому не нужна, поскольку ее написал студент. А кто такой студент-одиночка в современном мире? Ему можно доверять?
  • Fresco - еще одна попытка выкинуть иксы и тоже R.I.P- никому не нужна, по причине того что это еще одна вариация иксов с сетевой прозрачностью.

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

★★

Последнее исправление: Lowes (всего исправлений: 4)
Ответ на: комментарий от Unicode4all

И какой функционал ядра нужен десктопу, что монолитного ядра недостаточно?

Больший, нежели чем пускалка одного Apache/PHP, который нет разницы в каком пространстве запускать - и так ничего нет и ничего не нужно. А на Workstation что-то требуется отправлять в пространство ядра, а что -то в пространство пользователя.

Lowes ★★
() автор топика
Последнее исправление: Lowes (всего исправлений: 1)

я тут вижу срач по поводу fps. а вот хоть кто нибудь из выступающих знает как вообще «графика» передается от клиента к серверу?

а знаете ли вы как она рисуется? ну например в тулкитах? какие там примитивы есть. какие есть примитивы в иксах? можно ли через примитивы в иксах выразить примитивы в тулкитах?

вдвойне это прекрасно в плане дискуссий про «аппаратное ускорение». видимо у некоторых есть вера в волшебный черный ящик, который ускоряет всё. надо просто правильно над ним поколдовать и всё сразу ускорится. нука. как на GPU рисовать кривую безье 3го порядка толщиной 3.8 пикселя? а теперь то же самое но с штрих-пунктиром.

ckotinko ☆☆☆
()

Такс такс, что тут у нас? Да это же всё те же споры, что и 10 лет назад. Только 10 лет назад говорили, что винда вот вот уже рипнется и линукс задоминирует. Хорошо, что все осталось по прежнему. Скоро поделка финского наркомана уже сгниет и в мире останутся только дизайнеры и настоящие программисты (которые на винде программируют), но это не точно.

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

В гибридном ядре вы просто устанавливайте свежий драйвер с диска и не перекомпилируйте его.

Это всего-лишь гарантии стабильности abi различных подсистем. И то, что в винде каждый драйвер реализует всё сам.

В линуксе внутренний api ядра не стабилизирован. Монолитность здесь ортогональна.

То, что в него всё запихали

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

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

и ему функционала монолитного ядра может и достаточно. Но это не про многофункциональный Workstation.

Чего конкретно не хватает?

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

Чего конкретно не хватает?

В пространстве ядра, окзаывается должно находится API приложений и службы Workstation. М...

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

А на Workstation что-то требуется отправлять в пространство ядра, а что -то в пространство пользователя.

И в чём проблема в этом случае с монолитом?

одного Apache/PHP, который нет разницы в каком пространстве запускать

Мсье, я смотрю, умён не по годам. Сразу видно опытного системного администратора аналитика.

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

И в чём проблема в этом случае с монолитом?

В монолите все запускается в пространстве ядра.

Мсье, я смотрю, умён не по годам. Сразу видно опытного системного администратора аналитика.

А что ради одного приложения нужно городить пространство пользователя?

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

В пространстве ядра, окзаывается должно находится API приложений и службы Workstation. М...

Сам то понял, что сказал? Где названия тех приложений и служб, которые зачем-то нужны в пространтсве ядра?

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

Что за бред ты сейчас сморозил?

А что еще выполняет сервер, кроме запуска одного единственного apache/php? На сервере нет даже графической подсистемы как правило, поскольку она там не нужна.

Lowes ★★
() автор топика
Последнее исправление: Lowes (всего исправлений: 1)
Ответ на: комментарий от Lowes

А что ради одного приложения нужно городить пространство пользователя?

Apache, php, ssh - это разные приложения. У апача должен быть разный уровень доступа к разным файлам/портам и т.п.

В монолите все запускается в пространстве ядра.

И что? Дальше очевидных утверждений твои мысли не заходят? Проблема-то в чём?

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

Ясно, все твои знания о ядре ограничены википедией.

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

видимо у некоторых есть вера в волшебный черный ящик, который ускоряет всё

Видима эта вера только тебе.

Если ты видишь в рассуждениях конкретные ошибки, то на них и укажи. К чему эти бессмысленные вопросы? Создать видимость сакральных знаний?

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

На десктопе.

Это в федоре что-ли, где в вяленой сессии файлы при копировании на рабстол залипают, браузер от драг'н'дропа валится, Gtk приложения с правами рута не запускаются?

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

он врёт

Это зависит от того, что такое ложь. Если понимать под ложью сообщения, об ошибочности которых автор заведомо знает, то не факт. И тогда получается, что врёшь ты, потому что ты понимаешь, что его компетенции недостаточно для того, чтобы сделать квалифицированный вывод. Для него тормозящий внешний вид приложений связан с X.org.

Для большинства пользователей имеет значение «последняя миля». Если при использовании браузера Linux выпадает в панику, виноват браузер. Не драйвер, нет. Не повисшее железо. Браузер.

i-rinat ★★★★★
()

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

LittleKawaiiNeko ★★
()
Ответ на: комментарий от i-rinat

Для большинства пользователей имеет значение «последняя миля».

Тут полностью согласен: «Кто последний трогал компьютер - тот и виноват.» - адский принцип.

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

Да, X11 уже никто не использует, все стараются рисовать мимо него. Все стараются вообще все делать мимо X11. Современное «использование» X11 сводится к тупому рисованию в буфер.

С этой стороны Wayland является корректным эволюционным развитием X.org, удалением лишнего функционала и рефакторингом. Да, при этом потерялась совместимость. Увы. Но она-бы потерялась и при переходе на X12.

Вообще, если продолжать идею X11 и делать X12 как развитие идей тех времен, то в X.org потребовалось-бы жестко встроить D-Bus (реализовав ему сетевую прозрачность), Pulseaudio, GTK3+, Qt5+, CUPS...

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

Вообще, если продолжать идею X11 и делать X12 как развитие идей тех времен, то в X.org потребовалось-бы жестко встроить D-Bus (реализовав ему сетевую прозрачность), Pulseaudio, GTK3+, Qt5+, CUPS...

CUPS не надо, он не работает с монитором вообще. Сетевая прозрачность же для тупых терминалов была создана, к которым ничего не цеплялось. А если и делать проброс устройств, то надо прокидывать вообще USB-стек на мейнфрейм, это правильней.

А GTK3/Qt5 ненужны, надо довести до вменяемого вида Xt и Xaw, тогда все остальное само сдохнет.

Пульса не нужна, нужно сеть прикрутить к альсе, т.к. звук выносить в юзерспейс - чистой воды безумие, даже вантуз так не делает.

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

Вообще, если продолжать идею X11 и делать X12 как развитие идей тех времен, то в X.org потребовалось-бы жестко встроить D-Bus (реализовав ему сетевую прозрачность), Pulseaudio, GTK3+, Qt5+, CUPS...

Вообще надо идти по пути Plan9. Там всё одинаково доступно локально и по сети. ;)

ls-h ★★★★★
()
Ответ на: комментарий от Ivan_qrt

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

ckotinko ☆☆☆
()
Ответ на: комментарий от ls-h

Вообще надо идти по пути Plan9. Там всё одинаково доступно локально и по сети. ;)

И одинаково медленно? Любая синхронная работа в сети превращается в адскую боль.

А асинхронную работу реализовать не так-уж и просто, судя по состоянию сетевой прозрачности у разных сервисов.

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

CUPS не надо,

Исторически, XServer включал в себя принт-сервер. Судя по всему, тогда размышляли так: И графический сервер, и сервер печати, должны уметь рисовать текст и картинки, давайте объединим этот функционал.


надо прокидывать вообще USB-стек на мейнфрейм, это правильней.

Это ужасно. У USB есть доступ к DMA, что адски несекьюрно.

https://01.org/linuxgraphics/gfx-docs/drm/driver-api/usb/dma.html

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

Не правильно пробрасывать устройства! Это не секьюрно и не надежно. Нужно пробрасывать сервисы!

А GTK3/Qt5 ненужны, надо довести до вменяемого вида Xt и Xaw, тогда все остальное само сдохнет.

Ну да, только они кроссплатформенные. И потому чаще будут кодить под них.

Пульса не нужна, нужно сеть прикрутить к альсе, т.к. звук выносить в юзерспейс - чистой воды безумие, даже вантуз так не делает.

Вот что в винде калеченное - так это диспечер печати и звуковая подсистема. Пробросить по RDP две звуковухи? Да не мечтайте.
Родными средствами пробросить звук на другой комп? Ха!

Кстати, пульс по сути является надстройкой над алсой, которая помимо всего предоставляет слой абстракции от железа.

Если функции пульса начать переносить в алсу - у нас окажется куча странного кода, выполняемого на уровне ядра. В том-числе и сервер, доступный по сети (для сетевого звука). Я не думаю что такие вещи нужно держать в ядре.
Пусть-уж алса занимается ядерной частью звука, а пульса пользовательской. Безопасней так.

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

Если функции пульса начать переносить в алсу - у нас окажется куча странного кода, выполняемого на уровне ядра. В том-числе и сервер, доступный по сети (для сетевого звука). Я не думаю что такие вещи нужно держать в ядре.

Выходит ядро Linux - уже гибридное? Сенсация! В допотопном монолитном ядре вроде бы все должно выполняться на уровне ядра, нет?

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

Гномодевелопервы - анскильные лалки, тормоза это нормально для гнома

Deleted
()

Что-то срач утихать начал...

А вот Wine через Wayland хер заработает! Пыщ-пыщ-пыщ!!!11
«It is very unlikely that Wine is going to support Wayland in the same way as X. I worked on a Wayland driver for Wine some time ago, but discontinued the idea because Wayland lacks many features that are expected by Windows programs.» - комментарий разработчика.

ls-h ★★★★★
()
Последнее исправление: ls-h (всего исправлений: 2)
Ответ на: комментарий от Lowes

Выходит ядро Linux - уже гибридное? Сенсация! В допотопном монолитном ядре вроде бы все должно выполняться на уровне ядра, нет?

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

http://www.oreilly.com/openbook/opensources/book/appa.html

kir2yar
()
Последнее исправление: kir2yar (всего исправлений: 1)
Ответ на: комментарий от kir2yar

Исторически, XServer включал в себя принт-сервер. Судя по всему, тогда размышляли так: И графический сервер, и сервер печати, должны уметь рисовать текст и картинки, давайте объединим этот функционал.

Да там чего только не было. Даже лоадеры ELF, a.out, COFF туда запихали.

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

Будет для вина свой xserver, который будет рисовать в буфер wayland.

Игори и так на пингвине плохо плавают, а тут совсем потонут!

ls-h ★★★★★
()
Ответ на: комментарий от EXL

Даже лоадеры ELF, a.out, COFF туда запихали.

Интересно, зачем в графическом сервере свой парсер (или что оно?) исполняемых файлов?

ls-h ★★★★★
()
Ответ на: комментарий от Lowes

Не путай монолитное (дрова одно целое с ядром и в одном и том же кольце защиты работают) и мегалитное (ядро и юзерспейс вообще не разделены, все один большой блоб - обычно встраиваемые RTOS так работают)

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

я тут вижу срач по поводу fps

в частности вот эта «сетевая прозрачность» - а нахера она

Я не «свидетель святой сетевой прозрачности», так что не знаю. Меня spice/rdp вполне устраивают. Хотя x2go(основательная надстройка на той самой прозрачностью иксов) тоже регулярно пользуюсь.

Но ты вроде про fps и аппаратное ускорение имел что сказать. Или показалось?

Ivan_qrt ★★★★★
()
Ответ на: комментарий от ls-h

парсер (или что оно?)

Лоадер оно, бинарные данные не парсят их читают как есть.

uin ★★★
()
Ответ на: Что-то срач утихать начал... от ls-h

У wine апстрим вообще макос-ориентированный, и на все фичи линукса они болт кладут. Тот же gallium nine не приняли, т.к. его нет на макоси.

Рано или поздно запилят, не переживай. Но xfce, походу раньше на вэйланд успеет.

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

я в зубную фею поверю скорее, чем в программирование без костылей.

Вот же она!

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

потребовалось-бы жестко встроить D-Bus (реализовав ему сетевую прозрачность

А тут как раз запилили D-bus Broker - современную замену дбасу, в которой сетевая прозрачность нереализуема by design)))

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

вейланду не нужны иксовые дрова, достаточно поддержки opengl(ES?), EGL и KMS

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