Going into detail over the concepts of what a frame buffer is would be a great deal of documentation for little return if the results or reasons were not evident. The main purpose of this documentation is to express why and when you might want to enable frame buffering, and what it's for. I do not claim to know everything about frame buffering. My intention for writing this is to help beginner to novice users understand the general premise as well as compile and enable frame buffering on their systems :-)
Frame buffering is a new feature in the 2.2.x Linux kernel, which allows you to have a hardware-independent console device for your virtual terminals. What this means is application software can access the graphics hardware through the frame buffer device and not need to know anything about the actual hardware. Think of a frame buffer used in Linux as a representation of the frame buffer off the graphics card. Linux uses a device (/dev/fb[0-7]), and the card uses the hardware register.
Ok so what does this mean? Well, when you boot up your machine you get a wonderful show of text; devices that are found, partitions that are mounted, services that are started and a lot more information that usually flies by. The main thing to note right now is not the fact that you see messages, but more importantly what mode you are in when you view the messages. At boot-up there are no drivers loaded (until the process is finished) so what you are seeing on the screen is "text" mode. All the characters are echoed to the screen at the lowest level.
What frame buffering allows you to do is run in "graphics" mode when normally you would be in "text" mode for your console. This is a great feature for larger monitors and high-res. capable graphics cards, not to mention being able to see all the entries in "top" on one screen ;-) Keep in mind that you can set your text mode resolution another way (SVGATextMode), but a lot of time you will still be left the little scan lines in your text. By scan lines, what I am referring to is those little annoying lines that seem to dissect each character into 15 or 20 horizontal lines.
I wondered myself why anyone would care to implement this feature, until I started playing with it. In my humble opinion the best reason for turning this feature on is .....you get a graphical penguin displayed in the top left corner of the screen while your machine boots!!! (two of them if you have a dual processor machine), and it is not the same penguin that you get on say a Mandrake system at the prompt, it's an actual graphic (seeing as how we're switching to graphics mode, this would be a good indication that it worked once it is compiled into the kernel). I've found this allows for even longer "online" times with little or no eyestrain.