Was ist der Unterschied zwischen (Linux-)Framebuffer und GPU-Speicher?

Was ist der Unterschied zwischen (Linux-)Framebuffer und GPU-Speicher?

was ist der Unterschied zwischen einem Linux- oder softwaregesteuerten Framebuffer und einem GPU-Speicher? Gibt es eine gute bebilderte Anleitung, die die Funktionsweise des Linux-Framebuffers erklärt? Verwenden wir auf einer eingebetteten Platine mit GPU normalerweise den Framebuffer oder die GPU, um einen Live-Videofeed zu verarbeiten?

Antwort1

ABildspeicher, Framebufferist ein Speicherbereich, dessen Inhalt zur Anzeige bereit ist. Im Speicher können mehrere Framebuffer gleichzeitig vorhanden sein: einer (für jeden Monitor), der aktuell angezeigt wird (Frontbuffer) und andere, die vorbereitet werden (Backbuffer oder Arbeitsbuffer).

Ein Framebuffer kann von jedem beliebigen Teil des Systems gefüllt werden: durchFirmwaredurch den Kernel, der auf der GPU läuft, durch den Kernel, der auf der CPU läuft, durch denX-Server, durch eine Bewerbung…

Eine GPU bietet Zeichenfunktionen, die schneller sind, als wenn Software auf der Haupt-CPU die Pixel einzeln berechnet. Diese Funktionalität kann Dinge wie „Fülle dieses Rechteck mit einer einheitlichen Farbe“, „Kopiere dieses Rechteck an diese Position“, „Verkleinere dieses Rechteck um 1,5“, „Wende diese Farbmaske an“, „Berechne eine Perspektive dieses 3D-Objekts“, „Dekomprimiere diesesMPEGstreamen“, …

Das Rendern eines Videos erfolgt, wenn möglich, normalerweise in der GPU. Die spezialisierte Hardware in der GPU ist dafür besser geeignet (schneller, verbraucht weniger Strom, benötigt weniger Speicherbandbreite) als eine Allzweck-CPU.

verwandte Informationen