LINUX.ORG.RU
ФорумTalks

XCB vs X11. Кто что знает?


0

0

Узнал, что есть альтернатива библиотеки libx11, называемая xcb, которая, как пишут, работает быстрее.
Также нагуглил, что раньше был xcb бакенд для gtk, но что то ничего конкретного не нашел.

Правда ли либа дает прирост производительности?
Почему не используется?

★★★★★

qt потому что быстрее

и все тут

wfrr ★★☆
()

google directfb

тама и gtk есть и X11 rootless server

robot12 ★★★★★
()

cairo уже имеет бекэндом xcb. awesome, например, напрямую с xcb работает (сам не использую, но слышал). Про то, для чего эта библиотека была сделана и какие цели она преследовала читай тут:

http://www.freedesktop.org/software/xcb/xfree86-xcb.pdf

Сейчас привязка к Си генерируется из описания на XML. Первые версии использовали m4. Остальное, вроде бы, то же самое все. Выводы сам сделай, что она улучшает, а что нет.

Zubok ★★★★★
()

Кстати почему не используется? По крайней мере начинает точно.

[octy@octylt tmppd]$ euse -I xcb
lobal use flags (searching: xcb)
************************************************************
[+ C  ] xcb - Support the X C-language Binding, a replacement for Xlib

Installed packages matching this USE flag: 
media-libs/mesa-7.5.2
media-libs/xine-lib-1.1.16.3-r1
media-sound/phonon-4.3.80
x11-libs/cairo-1.8.8
x11-libs/libX11-1.3.2

Понятия не имею зачем оно в фононе :-)

octy ★★
()

Помоему она thread safe в отличие от обычного xlib.

anonomouso
()

Кстати да, тоже заметил, что появилась в дистрибутиве.

P.S. А Опера собиралась переходить на xlib. А на какой, интересно? ;-)

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

О, дай угадаю, гентоошнег, который считает себя настолько гуру, что не читает eselect news из принципа?

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

>Сейчас привязка к Си генерируется из описания на XML.

Ё. Ну я подозревал что XML-схемы там не просто так, но вот что генерится оно во многом XSLT.. Кстати, не могу найти сами xslt-файлы, для xpyb и xhsb.

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

>xcb не поддерживает glx, и следовательно, opengl.

А как же у меня сейчас и система на xcb вся, и opengl работает? :)

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

А к Питону и Хаскелю уже биндинг к самой XCB, а не к протоколу, насколько я понимаю. Есть там какие-то py_client.py и в libxcb/src/c-client.py. Скорее всего, в данному случае используется не XSLT, а сам Python.

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

Наворотили они, конечно.. Отличная задача для метапрограммирования: либа при установке глядит в xml-описание и генерирует сама себя. Вот и вспоминай по том, что некоторые язычки без ненормальной концентрации скобок не могут напрямую использовать свой код как данные.

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

для хаскелля вообще xml не используется, сразу через ffi xcb.h юзают. гхм.

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

xpyb использует xcb чтобы коннектиться к серверу и отправлять непосредственно реквесты. Сами реквесты описаны в xml, и код, который их непосредственно формирует, строится как раз на базе xml.

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

>Вот и вспоминай по том, что некоторые язычки без ненормальной концентрации скобок не могут напрямую использовать свой код как данные

За смешение кода и данных нужно отрывать яйца, чтобы навык не передавался по наследству.

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

В целом и общем это сразу стало понятно. Я-то не смотрел никогда раньше на код биндинга к Python и наивно понадеялся, что они напрямую прицепились к *бинарному* протоколу, включая процедуры соединения с сервером, как это сделано, например в CLX: http://www.cliki.net/CLX

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

Ога. Например как в XSLT. Ты еще скажи, что .phtml не пишешь) Я так понимаю «смешение кода и данных» вызывает болезненные воспоминания?)

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

>Ога. Например как в XSLT.

Нормальный шаблон с логикой вывода. Это допустимо.

Ты еще скажи, что .phtml не пишешь


Да, не пишу. Только .php. Никогда не использую смешение контроллера и представления. Почти нигде у меня PHP не используется как шаблонизатор или вид на высоком уровне. В PHP использую только код. Если где-то PHP используется как шаблонизатор, то там нет ни строчки контроллера. Только представление и его логика.

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