There are two ways to handle this:
1) The OS has a mechanism that goes through and shuts down programs after X amount of inactivity by the user, or if the memory reaches a certain low (with a pop up to the user explaining that if nothing is done, X, Y and Z programs will be exited to improve memory usage.)
2) Limit the background process to certain apps that meet a higher vetting standard than the regular apps. If you want your to-do program to have alarms, you have to prove it won't be a memory hog. Or if you want your IM program to have background notifications, you have to prove it works within certain parameters of CPU and bandwith use.
This isn't rocket science, and it's not like other OS companies don't already do this. For all the complaints piled on Windows Mobile, I haven't had any memory issues with my Epix (which replaced my iPhone as my main phone). Is it perfect? No, but neither was the iPhone. And as a user, I recognize that certain programs have a bigger memory footprint and choose to actively exit them.
And what really boggles my mind is that a simple flip phone for free from AT&T can run AIM in the background. Apple is working incredibly hard to prove that square wheels work just as well as round wheels, if you don't mind all the bumping and shaking and sometimes on rough ground you won't go anywhere.
The iPhone is a neat device, but it fails miserably in certain areas for no reason other than Apple doesn't want to play well with others. It's their right, but that's what it boils down to.