LINUX.ORG.RU

История изменений

Исправление geekless, (текущая версия) :

Ага, со стороны реализации XNext такая получается картина:

Дисплейный сервер должен работать с видеодрайвером через некоторый достаточно стабильный API (чтобы не было вот этого вот, когда вышла новая версия xorg, и у всех xf-драйверов сменилось ABI, внезапно).

Сам штатный композитор окон, который будет встроен в реализацию XNext, использует только те же API, что и приложения: OpenGL и т.п. Никаких особых «для внутреннего использования в иксах» рисующих API быть не должно.

В принципе, ему нужен только уровень 4 (или 3, смотря как границу провести), по твоей классификации. Что на на этом уровне должно быть:

  • Перечисление высокоуровневыех ресурсов: какие есть gpu, какие подключены к gpu мониторы и т.п.
  • Перечисление API уровня 4, которые доступны в данном окружении (vdpau, opengl...).
  • Возможность создавать хэндлы для рисования, привязанные к устройству.
  • Возможность к хэндлу забиндить контекст конкретного API.
  • Возможность выступить посредником авторизации между ядром и приложением, чтобы сказать затем сказать приложению: «вот тебе способ динамически слинковаться с opengl-переходником, а теперь рисуй там сам».

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

затычку для проброса по сети.

Имхо, самый разумный способ проброса по сети — это пробрасывать API уровня 4. Например, как OpenGL заданной версии в спецификации определена, так команды по сокету и гнать.

Исходная версия geekless, :

Ага, со стороны реализации XNext такая получается картина:

Дисплейный сервер должен работать с видеодрайвером через некоторый достаточно стабильный API (чтобы не было вот этого вот, когда с вышла новая версия xorg, и у всех xf-драйверов сменилось ABI, внезапно).

Сам штатный композитор окон, который будет встроен в реализацию XNext, использует только те же API, что и приложения: OpenGL и т.п. Никаких особых «для внутреннего использования в иксах» рисующих API быть не должно.

В принципе, ему нужен только уровень 4 (или 3, смотря как границу провести), по твоей классификации. Что на на этом уровне должно быть:

  • Перечисление высокоуровневыех ресурсов: какие есть gpu, какие подключены к gpu мониторы и т.п.
  • Перечисление API уровня 4, которые доступны в данном окружении (vdpau, opengl...).
  • Возможность создавать хэндлы для рисования, привязанные к устройству.
  • Возможность к хэндлу забиндить контекст конкретного API.
  • Возможность выступить посредником авторизации между ядром и приложением, чтобы сказать затем сказать приложению: «вот тебе способ динамически слинковаться с opengl-переходником, а теперь рисуй там сам».

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

затычку для проброса по сети.

Имхо, самый разумный способ проброса по сети — это пробрасывать API уровня 4. Например, как OpenGL заданной версии в спецификации определена, так команды по сокету и гнать.