Robotics is hard enough as it is when all your dependencies are working. The last thing you need are additional problems coming from incompatible components or unsupported combinations.
I looked into this a little and here was my progression:
Raspberry Pi doesn't support Ubuntu because it's ARM CPU uses an older instruction set (ARM v6 I believe?) and the Ubuntu team dropped support for this back in like 2009.
Beaglebone is similar to a Raspberry Pi in many ways and has a newer instruction set so it will run Ubuntu. However the 'best' Ubuntu ARM distribution is coming out of the Linaro project and they dropped support for the Beaglebone a few revisions back (last was Linaro 12.03) because it's using an older TI OMAP 3 processor (welcome to the wonderful world of rapid smartphone progress).
My next step was to look at the TI Pandaboard which uses the newer OMAP 4 processor that is currently supported, but it costs closer to the $200 range.
But now Ubuntu officially released for the Nexus 7. At 200 dollars, the Nexus 7 gets you everything a Raspberry Pi offers plus a lot more. Keep in mind that even with a Raspberry Pi, once you add in the charger, wifi adapter, storage card, and cables you're creeping up closer to 100 dollars than 35 dollars so imho the Nexus 7 is a much better deal.
Lastly, don't try and output a 1 khz signal out of a non real time OS. Attach yourself a cheap microcontroller like the PJRC Teensy (Arduino clone) and let it handle the simple real time tasks for you. This way you dedicate the inexpensive CPU to these simple time sensitive tasks. At 16 MHz with support for multiple timers, a little AVR MCU can handle a half dozen tasks like this without issue.