Linux framebuffer


The Linux framebuffer is a graphic hardware-independent abstraction layer to show graphics on a computer monitor, typically on the system console. It allows direct access to the framebuffer using only the Linux kernel's own basic facilities and its device file system interface. It does not rely on user space software like SVGALib.

Applications

There are three applications of the Linux framebuffer:
Examples of the third application include Linux programs such as MPlayer, links2, Netsurf, w3m, fbff, fbida, and fim and libraries such as GLUT, SDL, GTK, and Qt, which can all use the framebuffer directly. This use case is particularly popular in embedded systems.
The now defunct DirectFB is another project aimed at providing a framework for hardware acceleration of the Linux framebuffer.
There was also a windowing system called FramebufferUI implemented in kernel-space that provided a basic 2D windowing experience with very little memory use.

History

Linux has generic framebuffer support since 2.1.109 kernel.
It was originally implemented to allow the kernel to emulate a text console on systems such as the Apple Macintosh that do not have a text-mode display, and was later expanded to Linux's originally supported IBM PC compatible platform.