The Linux framebuffer (fbdev) is a graphic hardware-independent abstraction layer to show graphics on a console without relying on system-specific libraries such as SVGALib or the heavy overhead of the X Window System. Linux kernel has generic framebuffer support since 2.1.107 kernel.
It was originally implemented to allow the Linux 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, where it became popular largely for the ability to show the Tux logo on boot up. More significantly, it serves as a way of displaying Unicode characters on the Linux console. Under the non-framebuffer, VGA display of the PC, comprehensive Unicode support was impossible, for VGA console fonts were limited to 512 characters.
Nowadays several Linux programs such as MPlayer, and libraries such as GGI, SDL, GTK+ and Qt Extended can use the framebuffer immediately, avoiding the overhead of an X server. This is particularly popular in embedded systems.
There is now a library DirectFB which provides a framework for hardware acceleration of the Linux framebuffer.