Кейт Паккард (Keith Packard), лидер проекта X.Org, на протяжении последних трех лет работающий в Intel,
опубликовал обзор текущего развития графической подсистемы Linux и свободных драйверов для видеокарт Intel в частности.
На этой неделе была закончена работа над квартальным релизом драйвера видео подсистемы Linux на базе графического чипсета Intel. Новая версия знаменует окончание редизайна архитектуры и стабилизацию кода. Наиболее значимые изменения коснулись блока управления графической памятью, настроек режима ядра и механизма выделения 3D буферов. Теперь, внимание разработчиков будет сфокусировано на исправлении достаточно длинного списка ошибок, работе над повышением производительности и исключении устаревших и мало используемых режимов.
На сегодняшний день видео драйвер Intel поддерживает режимы работы в пользовательском адресном пространстве и в пространстве ядра; три режима рендеринга (None/DRI1/DRI2); два режима управления памятью (старый статический метод и новый объектный — GEM); четыре метода акселерации 2D (None/XAA/EXA/UXA). Здесь необходимо заметить, что в теории каждый из этих способов обработки изображения может быть выбран независимо от другого, доводя количество возможных комбинаций до 48. Разумно предположить, что при таком большом числе вариантов некоторые комбинации полностью неработоспособны , некоторые не были протестированы на должном уровне, третьи нуждаются в серьезном тюнинге по причине неудовлетворительного быстродействия, стабильность работы четвертых сильно зависит от используемого чипсета. В целом, ни одна комбинация пока не находится в состоянии абсолютной готовности.
По сравнению с ситуацией двухлетней давности, когда графическая обработка осуществлялась только в пользовательском режиме с ограниченными опциями рендеринга и управления видео памятью, функциональность видео драйвера значительно повысилась. Его архитектура и интерфейсы API приобрели законченный вид. Но вместе с этим резко вырос объем обслуживаемого кода и количество неисправленных ошибок, что не добавляет радости ни разработчикам, ни тестировщикам. В связи с этим работа над драйвером будет продолжаться в направлении оптимизации количества поддерживаемых режимов, объединения их функциональности и исключения неиспользуемых. Но эта работа будет проводится не в ущерб конечному пользователю и в новом коде сохранится поддержка видео чипсетов предыдущих поколений.
|