nouveau

Материал из Википедии — свободной энциклопедии
Перейти к: навигация, поиск
nouveau
Linux kernel and OpenGL video games.svg
Nouveau в Mesa 3D
Тип

драйверы

Операционная система

Linux (ядро)/X11 (AMD64, x86, PowerPC), BSD/X11[1]

Последняя версия

1.0 (17 июня 2012)

Лицензия

MIT (драйверы),
MIT и GNU GPL Direct Rendering Manager[1]

Сайт

nouveau.freedesktop.org

nouveau ([nuvo]) — проект по созданию свободных драйверов видеокарт компании nVIDIA с поддержкой ускорения вывода трёхмерной графики. Изначально основан на распространяемом по свободной лицензии, но нечитаемом драйвере «nv» 2D-графики от nVIDIA.

Название «nouveau» обозначает «новый» на французском языке, и было, по словам Stéphane Marchesin, предложено автозаменой IRC‑клиента вместо «nv».[2]

Разработка[править | править вики-текст]

2D[править | править вики-текст]

На июнь 2012 реализованы практически полная поддержка 2D для всех видеокарт Nvidia, начиная с моделей серии Riva TNT и заканчивая GeForce GTX, в том числе поддерживается 2D-акселерация.[3]

3D[править | править вики-текст]

В начале 2008 года в 3D‑ветви драйвера для Gallium3D, не предназначенной даже для тестирования (за исключением тех, кто может помочь исправлениями и нахождения патча, внёсшего ещё не исправленный баг), с некоторыми видеокартами NV40 можно было добиться приемлемой работы некоторых трёхмерных игр.[4][5]

Произведён переход на Gallium 3D, работа над поддержкой DRI прекращена.[6][7][8]

Общий менеджер памяти пока не используется, поэтому программы, использующие OpenGL, могут работать нестабильно.[9] Планировалось использовать TTM, но со временем появилось ещё несколько менеджеров памяти, и были обнаружены проблемы с производительностью при использовании TTM. В октябре 2008 года ведётся перевод драйвера с TTM на интерфейсы менеджера памяти GEM (англ.), разрабатываемого компанией Intel, и внутренности TTM.[10]

Реверс-инжиниринг[править | править вики-текст]

Работа утилиты REnouveau (квадрат в левом верхнем углу)

Реверс-инжиниринг производится с помощью специальной утилиты REnouveau, которая выводит на экран определённые изображения с использованием проприетарного 3D-драйвера от NVIDIA, и считывает из памяти видеоадаптера изменившиеся данные.[11]

Также разрабатывается mmio-trace, следящая за доступом драйвера к памяти (MMIO (англ.)).[12]

Примечания[править | править вики-текст]

  1. 1 2 FAQ (англ.). nouveau Wiki. Проверено 5 ноября 2007. Архивировано из первоисточника 1 марта 2012.
  2. The state of Nouveau, part I (англ.). LWN.net (15 February 2008). Проверено 7 марта 2008. Архивировано из первоисточника 1 марта 2012.
  3. Релиз свободного X.Org видеодрайвера Nouveau 1.0
  4. KoalaBR. Nouveau Companion 35 (англ.) (13 February 2008). Проверено 16 февраля 2008. Архивировано из первоисточника 1 марта 2012.
  5. Dave Airlie. Bringing kittens back to life - continuing story of open source graphics drivers (англ.). MEL8OURNE LCA2008 and Linux Australia. — Демонстрация — ближе к концу видео.. Проверено 14 февраля 2008. Архивировано из первоисточника 1 марта 2012.
  6. The state of Nouveau, part 2 (англ.). LWN.net (26 February 2008). Проверено 7 марта 2008. Архивировано из первоисточника 1 марта 2012.
  7. Nouveau Companion 36 (англ.) (7 March 2008). Проверено 7 марта 2008. Архивировано из первоисточника 1 марта 2012.
  8. David Lin. Nouveau Drops Its Old DRI Driver (англ.). Phoronix Media (13 July 2008). Проверено 14 июля 2008. Архивировано из первоисточника 1 марта 2012.
  9. Nouveau Companion 38 (англ.) (5 April 2008). Проверено 13 апреля 2008. Архивировано из первоисточника 1 марта 2012.
  10. Pekka Paalanen. Nouveau Companion 40 (англ.). Phoronix Media (29 октября 2008). Проверено 29 октября 2008. Архивировано из первоисточника 1 марта 2012.
  11. REnouveau (англ.). nouveau Wiki. Проверено 5 ноября 2007. Архивировано из первоисточника 1 марта 2012.
  12. MMIO Trace (англ.). Проверено 18 января 2008. Архивировано из первоисточника 1 марта 2012.

Ссылки[править | править вики-текст]