Direct Rendering Infrastructure
DRI software | |
---|---|
Genere | Motore grafico |
Sviluppatore | freedesktop.org |
Data prima versione | agosto 1998 |
Sistema operativo | Unix-like |
Linguaggio | C |
Licenza | MIT e altre (licenza libera) |
Sito web | dri.freedesktop.org/wiki/ e dri.freedesktop.org |
Modifica dati su Wikidata · Manuale |
![](http://upload.wikimedia.org/wikipedia/commons/thumb/c/c2/Linux_Graphics_Stack_2013.svg/310px-Linux_Graphics_Stack_2013.svg.png)
Direct Rendering Infrastructure (DRI) è un'interfaccia usata in X Window System per permettere in modo sicuro l'accesso delle applicazioni utente all'hardware video senza che i dati passino (lentamente) attraverso il server X. La sua applicazione primaria è quella di fornire l'accelerazione hardware di Mesa, un'implementazione di OpenGL. È anche stata adottata per dare l'accelerazione OpenGL nella console framebuffer senza bisogno che un Server X sia in esecuzione.
Il progetto fu iniziato da Jens Owen della Precision Insight. È stato prima reso disponibile come parte di XFree86 4.0 ed ora è parte di X.Org. Attualmente è mantenuto dalla Tungsten Graphics e molti altri sviluppatori open source.
Componenti
Il DRI per OpenGL è costituito da diverse parti:
- La prima è il Direct Rendering Manager (DRM). Il DRM è una combinazione di almeno due moduli del kernel, uno che costituisce il cuore del DRM, l'altro invece fornisce delle API allo spazio utente per accedere a differenti classi di hardware video.
- La seconda è il modulo driver userland, il quale contiene un driver OpenGL che prepara buffer di comandi che il DRM deve mandare all'hardware e interagisce con il sistema a finestre per sincronizzare l'accesso all'hardware.
- La Terza, è una specie di server. In X questo è il modulo libdri.so e un driver 2D che può usare DRI. Nel framebuffer l'implementazione di questo server è rappresentata da MiniGLX, che inizializza il modulo DRM e fornisce alcune API di X al driver userland malgrado la mancanza di un server X.
Versioni
DRI2
Nel 2007 gli sviluppatori di X hanno iniziato a lavorare su DRI2, nel quale verranno migliorati molti problemi che si sono presentati nel vecchio progetto. Tra i miglioramenti più importanti vi sono: la mancanza di blocchi interni e supporto regolare per il rendering su schermo, in modo tale che le applicazioni composite XVideo/OpenGL vengano amministrate correttamente.
DRI3
![Sezione vuota](http://upload.wikimedia.org/wikipedia/commons/thumb/f/f8/Quill-Nuvola.svg/20px-Quill-Nuvola.svg.png)
Adozione dei driver video
Sono stati scritti parecchi driver DRI open source, compresi quelli per ATI Mach64, ATI Rage128, ATI Radeon (ora AMD Radeon), da 3dfx Voodoo 3 fino a Voodoo 5, da Matrox G200 fino a G400, la serie SiS 300, Intel da i810 fino a i965, S3 Savage, e VIA, Nouveau per la schede NVIDIA. Alcuni venditori di schede grafiche hanno scritto driver DRI closed source, compresi ATI e PowerVR. DRI è supportato dal kernel Linux e FreeBSD, e ne è stato fatto un porting per NetBSD e OpenSolaris.
Voci correlate
Altri progetti
Altri progetti
- Wikimedia Commons
Wikimedia Commons contiene immagini o altri file su Direct Rendering Infrastructure
Collegamenti esterni
- (EN) Direct Rendering Infrastructure project home page, su dri.sourceforge.net.
- (EN) Mesa, su mesa3d.org.
- (EN) Tungsten Graphics, su tungstengraphics.com.
V · D · M | ||
---|---|---|
Componenti | Avahi · Compiz · ConsoleKit · D-Bus · DeviceKit · DRI · Flatpak · FriBidi · HAL (deprecato) · Nouveau · PackageKit · Plymouth · PolicyKit · Portland Project · systemd · Wayland · X.Org | ![]() |
Librerie | AppStream · cairo · Fontconfig · GStreamer · HarfBuzz · Pango · Mesa 3D · Poppler · Swfdec · Video Acceleration API · XCB · Xft | |
Framework | CppUnit · Galago · GeoClue · Telepathy · Open Collaboration Services | |
Voci correlate | Create Project · Libre Graphics Meeting |
![](http://upload.wikimedia.org/wikipedia/commons/thumb/1/12/Nuvola_apps_emacs.svg/25px-Nuvola_apps_emacs.svg.png)