Craig Hockenberry (via DF) makes a good point about allowing arbitrary background apps to use the iPhone’s radios.
It seems likely that he’s right about the future direction Apple will take with this. My own preference would be for a generalised events framework, maybe based on the existing notification support. If it supported launch-on-notification, there wouldn’t really be a need for background apps at all, it seems to me. Doing things this way would mean that it was possible to co-ordinate use of the device’s radios in a sensible way, and it would also allow applications to ask to have code run e.g. at a certain time in the future, without having to leave any of their own code running in the background.