Тікелей көрсетілетін инфрақұрылым - Direct Rendering Infrastructure

DRI-1.0
Түпнұсқа автор (лар)Precision Insight, вольфрам графикасы
Әзірлеушілерfreedesktop.org
Бастапқы шығарылымТамыз 1998; 22 жыл бұрын (1998-08)[1]
Тұрақты шығарылым
2.4.х / ақпан 2009 ж
ЖазылғанC
ПлатформаPOSIX
ТүріНегіздеме / API
ЛицензияMIT және басқа лицензиялар[2]
Веб-сайтдр.freedesktop.org
DRI-2.0
Түпнұсқа автор (лар)Кристиан Хогсберг т.б.
Әзірлеушілерfreedesktop.org
Бастапқы шығарылым2008 жылғы 4 қыркүйек; 12 жыл бұрын (2008-09-04)[3]
Тұрақты шығарылым
2.8 / 11.07.2012 ж; 8 жыл бұрын (2012-07-11)[4]
ЖазылғанC
ПлатформаPOSIX
ТүріНегіздеме / API
ЛицензияMIT және басқа лицензиялар[2]
Веб-сайтдр.freedesktop.org
DRI-3.0
Түпнұсқа автор (лар)Кит Пакард т.б.
Әзірлеушілерfreedesktop.org
Бастапқы шығарылым2013 жылғы 1 қараша; 7 жыл бұрын (2013-11-01)[5]
Тұрақты шығарылым
1.0 / 2013 ж., 1 қараша; 7 жыл бұрын (2013-11-01)[5]
ЖазылғанC
ПлатформаPOSIX
ТүріНегіздеме / API
ЛицензияMIT және басқа лицензиялар[2]
Веб-сайтдр.freedesktop.org
Екі графикалық аппараттық драйвер бар: біреуі X ішінде орналасқан дисплей сервері. Бұл драйвердің бірнеше дизайны болған. Ағымдағы бөлік оны екі бөлікке бөледі: DIX (Device-Independent X) және DDX (Device-тәуелді X)
Гламур жеңілдетеді X сервері, және libGL-fglrx-glx меншіктің орнына radeon ашық көзі бар драйвердің libDRM-ін қолдана алады екілік блок.
Көрсету есептеулер аутсорсингке беріледі OpenGL дейін GPU нақты уақыт режимінде жасалуы керек. The DRI қол жетімділікті және есеп жүргізуді реттейді.

The Тікелей көрсетілетін инфрақұрылым (DRI) - бұл тікелей қол жеткізуге мүмкіндік беретін негіз графикалық жабдық астында X терезе жүйесі қауіпсіз, тиімді жолмен.[6] DRI-дің негізгі қолданылуы - үшін аппараттық жеделдетуді қамтамасыз ету Меса жүзеге асыру OpenGL. DRI а-да OpenGL үдеуін қамтамасыз етуге бейімделген фрейм-буфер консолі жоқ дисплей сервері жүгіру.[7]

DRI-ді енгізу X сервері және онымен байланысты клиенттік кітапханалар, Mesa 3D және Тікелей көрсету менеджері ядро ішкі жүйесі.[6] Оның бәрі бастапқы код болып табылады ақысыз бағдарламалық жасақтама.

Шолу

Классикада X терезе жүйесі X Server архитектурасы - бұл эксклюзивті қол жетімді жалғыз процесс графикалық жабдық, демек, нақты жасаушы көрсету үстінде фрейм-буфер. X клиенттері тек қана көрсету командаларын жіберу үшін X серверімен байланыс орнатады. Бұл командалар аппаратурадан тәуелсіз, яғни X11 хаттамасы қамтамасыз етеді API графикалық құрылғыны рефераттайтын, сондықтан X клиенттері негізгі аппараттық құралдың ерекшеліктерін білуге ​​немесе алаңдамауға мәжбүр болады. Жабдыққа арналған кез-келген код код ішінде болады Құрылғыға тәуелді X, X серверінің видеокарта немесе графикалық адаптердің әр түрін басқаратын және оны жиі деп аталатын бөлігі видео немесе графикалық драйвер.

Көтерілуі 3D көрсету осы архитектураның шегін көрсетті. 3D графикалық қосымшалар командалар мен деректердің үлкен көлемін шығаруға бейім, оларды көрсету үшін X серверіне жіберу керек. Сомасы ретінде процесаралық байланыс (IPC) X клиенті мен X Server артуы артты, 3D рендеринг өнімділігі X драйверлерін дамытушылар соңғы графикалық карталардың 3D аппараттық мүмкіндіктерін пайдалану үшін IPC-сыз жаңа архитектура қажет деген қорытындыға келді. X клиенттері графикалық жабдыққа тікелей қол жеткізуі керек, бұл үшін үшінші тараптың процедурасына сүйенбей, барлық IPC шығындарын үнемдейді. Бұл тәсіл классикалық X сәулетімен қамтамасыз етілген «жанама көрсетілімге» қарағанда «тікелей көрсету» деп аталады. The Тікелей көрсетілетін инфрақұрылым бастапқыда кез-келген X клиентіне осы «тікелей көрсету» тәсілін қолдана отырып, 3D бейнелеуді жүзеге асыруға мүмкіндік беру үшін жасалған.

DRI-ді X клиентінде жеделдетілген 2D тікелей көрсетуді жүзеге асыруға қолдануға ештеңе кедергі болмайды.[3] Жай ешкімге бұған қажеттілік болған жоқ, өйткені жанама көрсетудің 2D өнімділігі жеткілікті деңгейде болды.

Бағдарламалық жасақтама архитектурасы

Тікелей көрсетілетін инфрақұрылымның негізгі архитектурасы үш негізгі компоненттен тұрады:[8]

  • DRI клиенті - «тікелей көрсетуді» жүзеге асыратын X клиенті - ағымдағы бейнекартаны немесе графикалық адаптерді басқаруға қабілетті аппараттық «драйвер» қажет. Мыналар DRI драйверлері әдетте ұсынылады ортақ кітапханалар клиент қайда динамикалық байланысты. DRI 3D графикалық жабдықтың артықшылықтарын пайдалану үшін ойластырылғандықтан, кітапханалар, әдетте, клиенттерге 3D API сияқты аппараттық жеделдетілген енгізу ретінде ұсынылады. OpenGL, 3D жабдықты жеткізушінің өзі немесе сияқты үшінші тарап ұсынады Mesa 3D ақысыз бағдарламалық жасақтама жоба.
  • X сервері an X11 протоколының кеңеюі - DRI кеңейтімі - DRI клиенттері екеуімен үйлестіру үшін қолданады терезе жүйесі және DDX драйвері.[9] DDX драйверінің бөлігі ретінде X Server процесі DRI клиенттерімен бірдей DRI драйверімен динамикалық түрде байланысады, бірақ X клиенттеріне жеделдетілген 3D рендерингін қамтамасыз ету үшін GLX жанама көрсетуге арналған кеңейту (мысалы, тікелей көрсетуді қолдана алмайтын қашықтағы X клиенттері). 2-өлшемді көрсету үшін DDX драйвері сол графикалық құрылғыны пайдаланатын DRI клиенттерін де ескеруі керек.
  • видеокартаға немесе графикалық адаптерге қол жетімділік ядро ​​компонентімен реттеледі Тікелей көрсету менеджері (DRM).[10] X Server-дің DDX драйвері де, әрбір X клиентінің DRI драйвері де графикалық жабдыққа қол жеткізу үшін DRM қолдануы керек. DRM қамтамасыз етеді үндестіру графикалық аппаратураның ортақ ресурстарына - командалық кезек, карточка регистрлері, бейне жады, DMA қозғалтқыштары сияқты ресурстарға ... - барлық бірнеше бәсекелес пайдаланушы кеңістігі процестерінің бір уақытта қол жеткізуіне кедергі болмауын қамтамасыз етеді. бір-бірін. DRM сонымен қатар кез-келген X клиентіне 3D рендерингін орындау үшін қажет болғаннан гөрі аппараттық құралға қол жеткізуге мүмкіндік бермейтін негізгі қауіпсіздік күші ретінде қызмет етеді.

DRI1

DRI архитектурасында, жадының өлшеміне байланысты бейне карталар сол кезде экранның бір данасы болды алдыңғы буфер және артқы буфер (сонымен қатар көмекші тереңдік буфері және трафарет буфері ), барлық DRI клиенттері және X сервері бөліседі.[11][12] Олардың барлығы тікелей артқы буферге шығарылды, солай болды ауыстырды алдыңғы буферімен тік дайындама аралығы уақыт.[11] Артқы буферге шығару үшін, DRI процесі рендерингтің болуын қамтамасыз етуі керек қиылған үшін бөлінген аймаққа терезе.[11][12]

The үндестіру X сервері арқылы орындалды сигналдар және а ортақ жады SAREA деп аталатын буфер.[12] DRM құрылғысына кіру ерекше болды, сондықтан кез-келген DRI клиентіне қажет болды құлыптау бұл а көрсету жұмыс. Бұл арада құрылғының басқа пайдаланушылары, соның ішінде X Сервер - бұғатталған болатын, және олар ағымдағы көрсету операциясының соңында құлып босатылғанша күтуге мәжбүр болды, тіпті егер бұл екі операцияның арасында қайшылық болмаса да.[12] Тағы бір кемшіліктер - қазіргі DRI процесі құрылғыда құлыпты босатқаннан кейін операциялар жадының бөлінуін сақтамады, сондықтан графикалық жадқа жүктелген кез келген деректер текстуралар алдағы операциялар үшін жоғалып кетті, бұл графикалық өнімділікке айтарлықтай әсер етті.

Қазіргі уақытта DRI1 мүлдем ескірген болып саналады және оны қолдануға болмайды.

DRI2

Танымалдылығының артуына байланысты композициялық терезе менеджерлері сияқты Compiz, тікелей рендерингтің инфрақұрылымын X клиенттері тікелей рендеринг кезінде «экраннан тыс пиксарттарға» қайта бағыттауды қолдайтындай етіп қайта құру керек болды. Кәдімгі X клиенттері X сервері ұсынған бөлек пиксартқа қайта бағыттауды көрсететін - экрандағы пиксмап деп аталатын -, бірақ DRI клиенттері роботаны композиторлық терезе менеджерін айналып өтіп, тікелей кері буферге жасай берді.[11][13] Шешім DRI-дің буферлермен жұмыс істеу тәсілін өзгерту болды, бұл DRI-ді жаңа операциялар жиынтығымен мүлдем басқа кеңейтуге, сонымен қатар Тікелей көрсету менеджері.[3] Жаңа кеңейтім «DRI2» деп аталды, бірақ бұл оның кейінгі нұсқасы емес, бірақ DRI-дің түпнұсқасымен үйлеспейтін басқа кеңейтілім - шын мәнінде екеуі де X серверінде ұзақ уақыт қатар өмір сүрген.

DRI2-де ортақ (артқы) буфердің орнына әрбір DRI клиенті жеке жеке алады артқы буфер[11][12] - олармен байланысты тереңдік және трафарет буферлер - оны беру терезе мазмұнын аппараттық жеделдету. DRI клиенті своптар жалғанмен «алдыңғы буфер ",[12] композиторлық терезе менеджерімен ауыстырылатын соңғы экран артқы буферін құру (құру) көздерінің бірі ретінде қолданылады. VBLANK аралығы нақты алдыңғы буфермен.

Осы жаңа буферлерді басқару үшін Direct Rendering Manager жаңа функционалдылықты, атап айтқанда графиканы қамтуы керек еді жады менеджері. DRI2 бастапқыда эксперименталды қолдану арқылы жасалды TTM жады менеджері,[11][13] бірақ кейінірек оны қолдану үшін қайта жазды GEM ол DRM жады менеджері ретінде анықталғаннан кейін.[14] DRI2 ішкі буферлік басқарудың жаңа моделі DRI-дің бастапқы енгізілуіндегі екі негізгі өнімділікті шешті:

  • DRI2 клиенттері бұдан былай DRM құрылғысын оны көрсету үшін пайдалану кезінде бұғаттамайды, өйткені қазір әр клиент басқа процестерден тәуелсіз жеке көрсету буферін алады.[12]
  • DRI2 клиенттері бейне жадына өздерінің буферлерін (текстурамен, шың тізімдерімен, ...) бөліп, оларды қалағанынша сақтай алады, бұл бейнені айтарлықтай азайтады есте сақтау қабілеті тұтыну.

DRI2-де терезе үшін жеке экраннан тыс буферлерді (артқы буфер, жалған алдыңғы буфер, тереңдік буфер, трафарет буфер, ...) бөлуді X Server өзі орындайды.[15][16] DRI клиенттері операцияны шақыру арқылы терезеге рендеринг жасау үшін осы буферді шығарып алады DRI2GetBuffers және DRI2GetBuffersWithFormat DRI2 кеңейтімінде қол жетімді.[3] Ішкі, DRI2 қолданады GEM атаулары - ұсынған ғаламдық тұтқалардың түрі GEM API бұл DRM құрылғысына кіретін екі процестің бір буферге сілтеме жасауына мүмкіндік береді - бұл буферге «сілтемелерді» айналдыру үшін X11 хаттамасы.[16] Терезенің рендерлік буферін буферлік бөлуге X Серверінің жауап беруінің себебі мынада GLX кеңейтімі бірнеше X клиенттеріне мүмкіндік береді OpenGL сол терезеде ынтымақтастықты көрсету.[15] Осылайша, X сервері бүкіл көрсету процесінде буферлердің бүкіл өмірлік циклін басқарады және оларды қауіпсіз қайта өңдеуге немесе тастауға болатын уақытты біледі. Терезенің өлшемі өзгертілгенде, X сервері терезенің жаңа өлшеміне сәйкес келетін жаңа көрсету буферлерін бөлуге және терезеге InvalidateBuffers оқиғасын қолданатын DRI клиентіне өзгеріс туралы ескертуге жауап береді, сондықтан олар GEM шығарып алады. жаңа буферлердің атаулары.[15]

DRI2 кеңейтімі DRI клиенттері үшін басқа негізгі әрекеттерді ұсынады, мысалы DRM құрылғысын және драйверін пайдалану керек (DRI2Connect) немесе DRM құрылғысының көрсету және буферлік мүмкіндіктерін пайдалану үшін X серверімен аутентификациялау (DRI2Аутентификация).[3] Экранда көрсетілген буферлердің презентациясы DRI2CopyRigion және DRI2SwapBuffers сұраныстар. DRI2CopyRigion жалған алдыңғы буфер мен нақты алдыңғы буфер арасында көшірме жасауға болады, бірақ вертикалды бос интервалмен синхрондауды қамтамасыз етпейді, сондықтан ол себеп болуы мүмкін жырту. DRI2SwapBuffersкерісінше, VBLANK синхрондалған артқы және алдыңғы буфер арасындағы свопты орындайды, егер ол қолдаса және екі буфер бірдей өлшемде болса немесе көшірмесі (блит ) басқаша.[3][15]

DRI3

DRI2 бастапқы DRI-ге қарағанда айтарлықтай жақсарғанымен, жаңа кеңейтім кейбір жаңа мәселелерді де ұсынды.[15][16] 2013 жылы осы мәселелерді шешу үшін DRI3 деп аталатын Тікелей көрсетілетін инфрақұрылымның үшінші қайталануы жасалды.[17]

DRI3-тің DRI2-мен салыстырғанда негізгі айырмашылықтары:

  • DRI3 клиенттері X Server-ге бөлуді жүзеге асырудың орнына өздерінің буферлерін бөледі - бұл DRI2 қолдайтын әдіс еді.[15][16]
  • DRI3 ескі сенімсіздіктен арылады GEM негізделген буферді бөлісу механизмі GEM атаулары DRI клиенті мен X сервері арасындағы буферлік объектілерді қауіпсіз және жан-жақты негізделген пайдасына өткізуге арналған (жаһандық GEM тұтқалары) PRMA DMA-BUF, ол қолданады файл дескрипторлары орнына.[15][16]

Клиент жағынан буферді бөлу үзіледі GLX GLX қосымшаларының бір терезеде бірлесіп жұмыс істеуі мүмкін емес деген мағынадағы болжамдар. Жақсы жағы, DRI клиенті өзінің өмір бойы өзінің буферлерін басқаруы көптеген артықшылықтар әкеледі. Мысалы, DRI3 клиенті үшін көрсету буферінің өлшемі әрдайым терезенің ағымдағы өлшемімен сәйкес келетіндігін қамтамасыз ету оңай және сол арқылы артефактілерді терезе өлшемін өзгертетін клиент пен сервер арасындағы буферлік өлшемдердің синхронизациясының болмауына байланысты жоюға болады. DRI2-де.[15][16][18] Жақсы өнімділікке де қол жеткізілді, өйткені қазір DRI3 клиенттері X сервері рендеринг буферін жіберуді күткен қосымша сапарды үнемдейді.[16] DRI3 клиенттері, әсіресе композиторлық терезе менеджерлері алдыңғы жақтаулардың ескі буферлерін сақтауда және оларды басқа өнімділікті оңтайландыру ретінде тек терезенің бүлінген бөліктерін көрсететін негіз ретінде қайта пайдалануға мүмкіндік алады.[15][16] DRI3 кеңейтімін енді жаңа буферлік форматтарды қолдау үшін өзгерту қажет емес, өйткені олар қазір DRI клиентінің драйвері мен DRM ядросының драйвері арасында тікелей жұмыс істейді.[15] Файлдар дескрипторларын қолдану керісінше кез-келген пайдаланылмаған GEM буферлік объектісін қауіпсіз тазартуға мүмкіндік береді, оған сілтеме жасалмайды.[15][16]

Техникалық тұрғыдан DRI3 екі түрлі кеңейтімдерден тұрады, «DRI3» кеңейтімі және «Present» кеңейтімі.[17][19] DRI3 кеңейтуінің негізгі мақсаты - DRI клиенттері мен X Server арасында тікелей көрсетілген буферлерді бөлу механизмін жүзеге асыру.[18][19][20] DRI клиенттері GEM буферін объектілерді мақсатты мақсат ретінде бөледі және пайдаланады, ал X Сервер бұл бейнелеу буферін X11 нысанының «pixmap» деп аталатын түрін қолдана отырып ұсынады. DRI3 екі операцияны ұсынады, DRI3PixmapFromBuffer және DRI3BufferFromPixmap, біреуі GEM буферлік объектісінен («DRI клиенттік кеңістігінде») пикм-карта жасау үшін («X сервер кеңістігінде»), ал екіншісі керісінше және X pixmap-ден GEM буферлік нысанын алу үшін.[18][19][20] Бұл DRI3 операцияларында GEM буферлік объектілері келесі түрде беріледі DMA-BUF GEM атауларының орнына файл дескрипторлары. DRI3 сонымен бірге синхрондау нысандарын DRI клиенті мен X сервері арасында бөлісу әдісін ұсынады, бұл ортақ буферге сериялық қол жеткізуге мүмкіндік береді.[19] DRI2-ден айырмашылығы, бастапқы DRI3Ашық операция - бірінші кезекте әрбір DRI клиенті қай DRM құрылғысын қолданатындығын сұрауы керек - X серверімен алдын-ала орындалған кез келген қажетті аутентификация процедурасымен, файлдың дескрипторын құрылғы түйініне файлдың орнына бұрыннан ашылған файл дескрипторын қайтарады.[18][19]

DRI3 экранда көрсетілген буферлерді көрсетудің ешқандай механизмін ұсынбайды, бірақ басқа кеңейтілімге сүйенеді Сыйлық кеңейту, сол үшін.[20] Сыйлық оның басты міндеті - буферлерді экранда «ұсыну» болғандықтан, ол клиенттік қосымшалармен жеткізілетін буферлердің мазмұнын қолдана отырып, кадрлар буферін жаңартумен айналысатындығына байланысты аталған.[19] Экранды жаңарту керек уақытта, әдеттегі уақытта жасалуы керек VBLANK аралығы сияқты артефактілерді көрмеу үшін жырту. Present сонымен қатар VBLANK интервалына экран жаңартуларын синхрондауды басқарады.[21] Сондай-ақ, бұл X клиентінің лезде болатындығы туралы хабардар етеді, әр буфер экранда іс-шаралар көмегімен көрсетіледі, сондықтан клиент өзінің көрсету процесін ағымдағы экранның жаңару жылдамдығымен синхрондай алады.

Present кез келген X пиксартты экранды жаңартудың көзі ретінде қабылдайды.[21] Пиксмаптар стандартты X нысандары болғандықтан, Present-ті тікелей көрсетуді жүзеге асыратын DRI3 клиенттері ғана емес, кез-келген тәсілмен кез-келген X клиенті пиксмапта көрсете алады.[18] Мысалы, қолданыстағы емесGL негізделген GTK + және Qt бұрын қолданылған қосымшалар екі буферлі пайдалану арқылы пикс-картаны көрсету XRender. Осы кеңейтімді осы қосымшалар экранның тиімді және жыртылмайтын жаңартуларына қол жеткізу үшін қолдана алады. Present DRI3 құрамына кірудің орнына бөлек автономды кеңейтілім ретінде жасалуының себебі.[18]

GL X емес клиенттерге VBLANK-пен синхрондауға мүмкіндік беруден басқа, басқа да артықшылықтар бар. DRI3 графикалық өнімділігі жақсырақ, өйткені Present айырбастау буферінде DRI2-ге қарағанда тиімді.[19] DRI2-де жоқ бірқатар OpenGL кеңейтімдеріне Present ұсынған жаңа мүмкіндіктер негізінде қолдау көрсетіледі.[19]

Present X клиенттеріне екі негізгі операцияны ұсынады: терезенің аймағын пиксмарттың бір бөлігі немесе барлық мазмұнын пайдаланып жаңарту (PresentPixmap) және клиентке хабарлауды қалайтын белгілі бір терезеге байланысты презентация оқиғаларының түрін орнатыңыз (PresentSelectInput).[19][21] Терезе X клиентіне хабарлама бере алатын үш презентация оқиғасы бар: презентацияның жалғасқан әрекеті - әдеттегіден қоңырауға дейін PresentPixmap- аяқталды (PresentCompleteNotify) пайдаланған кезде, пиктограмма а PresentPixmap операция қайта пайдалануға дайын (PresentIdleNotify) және терезе конфигурациясы - көбінесе терезе өлшемі өзгерген кезде (PresentConfigureNotify).[19][21] Ма PresentPixmap операция тікелей көшірмені орындайды (блит ) алдыңғы буферге немесе a айырбастау алдыңғы буфері бар барлық артқы буфердің XI-ді DRI2-де болғанындай анық таңдаудың орнына Present кеңейтуді іске асырудың ішкі бөлшегі болып табылады.

Бала асырап алу

Бірнеше DRI драйверлері, соның ішінде арналған ATI Mach64, ATI Rage128, ATI Radeon, 3dfx Voodoo3 арқылы Voodoo5, Matrox G200 арқылы G200, SiS 300 сериясы, Intel i810 арқылы i965, S3 Жабайы VIA UniChrome графикалық чипсеталары және ново үшін Nvidia. Кейбір графикалық жеткізушілер жабық көзі бар DRI драйверлерін жазды, соның ішінде ATI және Kyro.

DRI-дің әр түрлі нұсқалары әртүрлі амалдық жүйелермен, басқаларымен қатар енгізілген Linux ядросы, FreeBSD, NetBSD, OpenBSD, және OpenSolaris.

Тарих

Жобаны Дженс Оуэн және Кевин Э. Мартин Precision Insight компаниясынан бастады (қаржыландырды Кремний графикасы және Қызыл қалпақ ).[1][22] Бөлігі ретінде кеңінен қол жетімді болды XFree86 4.0[1][23] және қазір оның бөлігі болып табылады X.Org сервері. Қазіргі уақытта оны қолдайды ақысыз бағдарламалық жасақтама.

DRI2 бойынша жұмыс 2007 ж. Әзірлеушілердің саммитінде a Кристиан Хогсберг ұсыныс.[24][25] Хогсбергтің өзі DRI2 жаңа кеңейтімі мен модификацияларын өзі жазды Меса және GLX.[26] 2008 жылғы наурызда DRI2 көбінесе жасалды,[27][28][29] бірақ бұл мүмкін емес X.Org сервері 1.5 нұсқасы[14] және 2009 жылдың ақпанынан бастап 1.6 нұсқасына дейін күтуге тура келді.[30] DRI2 кеңейтімі ресми түрде 2009 жылдың қазан айындағы X11R7.5 шығарылымына енгізілді.[31] DRI2 хаттамасының алғашқы (2.0) алғашқы нұсқасы 2009 жылдың сәуірінде жарияланды.[32] Содан бері 2012 жылдың шілдесінен бастап 2.8 нұсқасы болып табылатын бірнеше қайта қарау болды.[4]

DRI2 бірнеше шектеулеріне байланысты, DRI-Next деп аталатын жаңа кеңейтімді Keith Packard және Eric Anholt X.Org Developer 2012 конференциясында ұсынды.[15] Кеңейту DRI3000 атында қайтадан ұсынылды Linux.conf.au 2013.[16][17] DRI3 және Present кеңейтімдері 2013 жылы жасалды және 2013 жылдың желтоқсанынан бастап X.Org Server 1.15 шығарылымына біріктірілді.[33][34] DRI3 хаттамасының алғашқы және жалғыз нұсқасы (1.0) 2013 жылдың қарашасында шығарылды.[5]

Сондай-ақ қараңыз

Әдебиеттер тізімі

  1. ^ а б c Оуэн, Дженс. «DRI жобасының тарихы». DRI жобасы вики. Алынған 16 сәуір 2016.
  2. ^ а б c Mesa DRI лицензиясы / Авторлық құқық туралы ақпарат - Mesa 3D графикалық кітапханасы
  3. ^ а б c г. e f Хогсберг, Кристиан (4 қыркүйек 2008). «DRI2 кеңейтімі - 2.0 нұсқасы». X.Org. Алынған 29 мамыр 2016.
  4. ^ а б Эйрли, Дэйв (2012 ж. 11 шілде). «[ХАБАРЛАМА] dri2proto 2.8». xorg-хабарлау (Тарату тізімі).
  5. ^ а б c Пакард, Кит (1 қараша 2013). «[ХАБАРЛАМА] dri3proto 1.0». xorg-хабарлау (Тарату тізімі).
  6. ^ а б «Mesa 3D және Direct Rendering Infrastructure wiki». Алынған 15 шілде 2014.
  7. ^ «Framebuffer консолі үшін DRI». Алынған 4 қаңтар, 2019.
  8. ^ Мартин, Кевин Е .; Сенім, Рикард Е .; Оуэн, Дженс; Акин, Аллен (11 мамыр 1999). «Тікелей көрсетілетін инфрақұрылым, төмен деңгейлі жобалау құжаты». Алынған 18 мамыр 2016.
  9. ^ Оуэн, Дженс; Мартин, Кевин (11 мамыр 1999). «Тікелей көрсетуді қолдауға арналған DRI кеңейтімі - протокол сипаттамасы». Алынған 18 мамыр 2016.
  10. ^ Сенім, Рикард Е. (11 мамыр 1999). «Тікелей ұсыну бойынша менеджер: тікелей рендерингтің инфрақұрылымына арналған ядроға қолдау». Алынған 18 мамыр 2016.
  11. ^ а б c г. e f Пакард, Кит (21 шілде 2008). «2008 жылдың шілдесіндегі X мәртебесі». Алынған 26 мамыр 2016.
  12. ^ а б c г. e f ж Пакард, Кит (24 сәуір 2009). «Intel драйверінің фокустарын кеңейту». Алынған 26 мамыр 2016.
  13. ^ а б Хогсберг, Кристиан (8 тамыз 2007). «Бағытталған тікелей көрсету». Алынған 25 мамыр 2016.
  14. ^ а б Хогсберг, Кристиан (4 тамыз 2008). «1.5 серверінен DRI2 резервтік көшірмесін жасау». xorg (Тарату тізімі).
  15. ^ а б c г. e f ж сағ мен j к л Пакард, Кит (28 қыркүйек 2012). «DRI.Next туралы ойлар». Алынған 26 мамыр 2016.
  16. ^ а б c г. e f ж сағ мен j Уиллис, Натан (2013 ж., 11 ақпан). «LCA: X-адамдар сөйлейді». LWN.net. Алынған 26 мамыр 2016.
  17. ^ а б c Пакард, Кит (19 ақпан 2013). «DRI3000 - одан да жақсы тікелей ұсыну». Алынған 26 мамыр 2016.
  18. ^ а б c г. e f Пакард, Кит (4 маусым 2013). «DRI3 кеңейтімін аяқтау». Алынған 31 мамыр 2016.
  19. ^ а б c г. e f ж сағ мен j Edge, Jake (9 қазан 2013). «DRI3 және қазіргі заман». LWN.net. Алынған 26 мамыр 2016.
  20. ^ а б c Пакард, Кит (4 маусым 2013). «DRI3 кеңейтімі - 1.0 нұсқасы». Алынған 30 мамыр 2016.
  21. ^ а б c г. Пакард, Кит (6 маусым 2013). «Қазіргі кеңейту - 1.0 нұсқасы». Алынған 1 маусым 2016.
  22. ^ Оуэн, Дженс; Мартин, Кевин Э. (15 қыркүйек 1998). «3D үшін мультипиптік тікелей сәулет сәулеті». Алынған 16 сәуір 2016.
  23. ^ «XFree86 4.0 нұсқасын шығару». XFree86 жобасы. 7 наурыз 2000. Алынған 16 сәуір 2016.
  24. ^ «X Developers Summit 2007 - Ескертулер». X.Org. Алынған 7 наурыз 2016.
  25. ^ Хогсберг, Кристиан (3 қазан 2007). «DRI2 Design Wiki парағы». xorg (Тарату тізімі).
  26. ^ Хогсберг, Кристиан (2008 ж. 4 ақпан). «DRI2 жұмысын біріктіру жоспарлары». xorg (Тарату тізімі).
  27. ^ Хогсберг, Кристиан (15 ақпан 2008). «DRI2 жасалған». xorg (Тарату тізімі).
  28. ^ Хогсберг, Кристиан (31 наурыз 2008). «DRI2 тікелей көрсету». xorg (Тарату тізімі).
  29. ^ Хогсберг, Кристиан (31 наурыз 2008). «DRI2 тікелей көрсету». Алынған 20 сәуір 2016.
  30. ^ «Server 1.6 филиалы». X.org. Алынған 7 ақпан 2015.
  31. ^ «X11R7.5 нұсқасы туралы ескертпелер». X.Org. Алынған 20 сәуір 2016.
  32. ^ Хогсберг, Кристиан (20 сәуір 2009). «[ХАБАРЛАМА] dri2proto 2.0». xorg-хабарлау (Тарату тізімі).
  33. ^ Пакард, Кит. «[АНОНС] xorg-server 1.14.99.901». X.org. Алынған 9 ақпан 2015.
  34. ^ Ларабел, Майкл. «X.Org Server 1.15 шығарылымында бірнеше жаңа мүмкіндіктер бар». Phoronix. Алынған 9 ақпан 2015.

Сыртқы сілтемелер