The flight computer usually takes the NMEA stream outputted by the gps module, converts it into easy to read coordinates and logs it. It then sends the gps data via various communication methods to the payload operator. Flight computers are also used to trigger cameras, activate cutdown devices and control sensors and even stream video. There are a wide range of cheap and easily accessible systems avaliable which have been used by various members of UKHAS, each member usually has their favourite!
Used on MIHAB 1,2, and 3 in conjunction with Bascom AVR compiler, this is avaliable as a free trial that will compile 4Kb of code. AVR's have to be programmed using ISP (in system programming) you can make your own printer port based programmer, but buying one will remove a source of headaches. (They can be found for < £15 on ebay). You can get really easy to use AVR controller boards from active robots, display 3000, and mcs electronics also sell some very good looking boards with external ram and SD cards. You will need to use the bascom programmer plugin or ponyprog, to program your chip. AVR's have loads of great built in hardware e.g. I2C, SPI, multiple UART's , wake on interrupt, external ram busses ect. They are also a lot less power hungry than gumstix or routers, a typical AVR clocked at 16MHz will run off 3.3 volts at 25ma. If you're looking for some help/advice on AVR's check out:
Cheap but seems to lack memory ect? http://www.rev-ed.co.uk/picaxe/
Used successfully by CUSpaceflight for the Badger flight computer series. (NXP LPC2148 on current revision).
A Gumstix is a very small computer based on the Intel Xscale processor running at either 200 or 400mhz. It is a mother / daughterboard system with a variety of different functions such as:
Not really a smart phone but more a smart phone module, but as it has a python interpreter, camera interface, GPS, GPRS with TCP/IP and analogue inputs this could run a whole payload!
The python code has access to virtual terminals to control the phone and recieve data from the GPS (sirf3). There are also libraries for running bit banged i2c and spi out of the GPIO pins. 1.5Mb of ram avaliable.