Настройка режима
Настройка режима — это программная операция, которая активирует режим отображения (разрешение экрана, глубину цвета и частоту обновления) для контроллера дисплея компьютера с помощью расширений VESA BIOS или графических расширений UEFI (на более современных компьютерах).
Режим отображения устанавливается ядром. При настройке режима пользовательского пространства (UMS) режим отображения устанавливается процессом пользовательского пространства .
Настройка режима ядра более гибкая и позволяет отображать ошибку в случае фатальной системной ошибки в ядре даже при использовании сервера отображения в пользовательском пространстве.
Для настройки режима пользовательского пространства потребуются привилегии суперпользователя для прямого доступа к оборудованию, поэтому настройка режима на основе ядра исключает такое требование для графического сервера в пользовательском пространстве.
Выполнение
[ редактировать ]Microsoft Windows
[ редактировать ]Microsoft Windows Версии , основанные на NT, используют настройку режима ядра. Отображение ошибок ядра, ставшее возможным благодаря настройке режима ядра, официально называется «проверкой ошибок», но более широко известно как « синий экран смерти » .
Линукс
[ редактировать ]
Ядро Linux получило необходимое условие для настройки режима на основе ядра, приняв Intel GEM в версии 2.6.28, выпущенной в декабре 2008 года. [1] Это будет [ нужно обновить ] заменен менеджером памяти Tungstens Graphics TTM (Translation Table Maps), который поддерживает GEM API. [2] TTM был разработан для бесплатных драйверов с открытым исходным кодом для Radeon и S3 Graphics графических чипсетов ( см. раздел « Свободный драйвер графического устройства с открытым исходным кодом» ). [3] Поддержка графических чипсетов Intel GMA была принята в версии 2.6.29, выпущенной 23 марта 2009 года. [4] Поддержка ATI Radeon до R600 была принята в версии 2.6.31, выпущенной 9 сентября 2009 года. видеокарт [5] Поддержка R600 и R700 находилась в разработке в рамках DRM и была объединена в версии 2.6.32. [6] Поддержка Evergreen (R800) была добавлена в версию 2.6.34. Поскольку Nvidia не выпустила всю необходимую документацию для своего графического чипа, разработка продолжалась в рамках проекта nouveau , в котором используется реверс-инжиниринг для создания работающего драйвера с открытым исходным кодом для карт Nvidia. Nouveau был принят в версии ядра 2.6.33, выпущенной 10 декабря 2009 г. Настройка режима на основе ядра не только поддерживается драйвером nouveau, но и необходима. [7] Компоновщики Wayland (например, Weston ) и kmscon зависят от настройки режима ядра через ioctl .
FreeBSD
[ редактировать ]FreeBSD поддерживает как настройку режима на основе ядра, так и GEM для более поздних поколений графических процессоров Intel (IronLake, SandyBridge и IvyBridge), начиная с версии 9.1. [8]
NetBSD
[ редактировать ]NetBSD поддерживает настройку режима на основе ядра и ускоренную графику для устройств Intel и Radeon. Эта реализация была представлена в версии 7.0 путем переноса кода DRM/KMS Linux 3.15. [9]
OpenBSD
[ редактировать ]OpenBSD поддерживает настройку режима на основе ядра для графических процессоров Intel и Radeon. Начиная с версии 5.4 OpenBSD доступна поддержка графических процессоров Intel. С выпуском версии 5.5 реализация была расширена и теперь поддерживает чипсеты Radeon.
Альтернативы
[ редактировать ]Этот раздел необходимо обновить . ( август 2014 г. ) |
На конференции Linux Plumbers Conference 2013 были представлены следующие альтернативы:
- Было предложено разделить GEM и KMS. [10]
- Atomic Display Framework от команды Google Android. [11] [12]
- Общая структура отображения. [13]
См. также
[ редактировать ]Ссылки
[ редактировать ]- ^ «Линукс 2 6 28» . Ядро Linux для новичков . Проверено 14 февраля 2013 г.
- ^ Ларабель, Майкл (26 августа 2008 г.). «Менеджер TTM для Radeon, модифицированный GEM» . Фороникс . Проверено 14 февраля 2013 г.
- ^ Ларабель, Майкл (10 июня 2009 г.). «Диспетчер памяти TTM готов к выпуску» . Фороникс . Проверено 14 февраля 2013 г.
- ^ «Линукс 2 6 29» . Ядро Linux для новичков . Проверено 14 февраля 2013 г.
- ^ «Линукс 2 6 31» . Ядро Linux для новичков. 9 сентября 2009 г. Проверено 14 февраля 2013 г.
- ^ Ларабель, Майкл (30 сентября 2009 г.). «Производительность AMD R600/700 2D: открытые и закрытые драйверы» . Фороникс . Проверено 14 февраля 2013 г.
- ^ "нуво/KernelModeSetting" . freedesktop.org. 24 августа 2013 года . Проверено 11 августа 2014 г.
- ^ «Примечания к выпуску FreeBSD 9.1-RELEASE» . Фонд FreeBSD . 30 декабря 2012 г.
- ^ «Анонс NetBSD 7.0» . Проект NetBSD. 25 сентября 2015 года . Проверено 25 апреля 2016 г.
- ^ «Разделение узлов устройств DRM/KMS / Конференция Linux Plumbers: Разработка ядра, библиотек и утилит» . www.linuxplumbersconf.org . Архивировано из оригинала 30 октября 2013 г.
- ^ «Atomic Display Framework / Конференция Linux Plumbers: Разработка ядра, библиотек и утилит» .
- ^ «Проблемы KMS HWComposer, Atomic Display Framework и другие расширения KMS / Конференция Linux Plumbers: Разработка ядра, библиотек и утилит» . Архивировано из оригинала 31 августа 2015 г. Проверено 29 августа 2013 г.
- ^ «Common Display Framework / Конференция Linux Plumbers: Разработка ядра, библиотек и утилит» . www.linuxplumbersconf.org . Архивировано из оригинала 12 марта 2016 г.
Внешние ссылки
[ редактировать ]- Настройка режима на вики X.org
- Графический драйвер Intel на вики X.org
- Драйвер ATI Radeon на вики X.org
- Настройка режима ядра на вики проекта Fedora