http://www.arduino.cc/playground/Learning/BuildProcess
Provides a basic explanation of how Arduino builds and uploads your sketch. In particular, this should be useful to anyone who wants to use the Arduino environment with another i/o board, or who wants to compile straight .c or .cpp code.