A Beowulf is a number of computers linked together to share processing resource to solve a problem or carry out a task. Beowulf's were originally built from standard off the shelf hardware i.e. a number of desktop PCs. It is now possible to buy small rackmount PCs now that are ideally suited to the construction of a Beowulf, which has resulted in a wider acceptance of Beowulf clusters in industry and commerce. There is no such thing as Beowulf software, all the software components, like the hardware, are available off the shelf.
By splitting a task between many processors/computers means that the work is performed quicker then running the task on one processor/computer. The cost of the multiple slower computers normally works out cheaper then buying a single powerful computer. In some cases the performance achieved by a Beowulf outstrips anything that would be available from a single computer, you are in the realms of real supercomputing power.
Check out the Beowulf page for a list of Beowulf's and websites to get an idea of what people organisations are doing. Also checkout the beowulf underground website for lots of good information. Lastly the Beowulf FAQ is worth a read.
There are a number of ways to set up a Beowulf. The core software controls the message passing which is the heart of the Beowulf. There are two main ways to do this, using MPI or PVM. I chose to use PVM since there was a lot more information available to me on the setup and configuration. If I get time I will try MPI just for my own education.