Another interesting tidbit: "Language runtimes provide services—notably garbage collection—that can interact poorly with programs. For example, a generational garbage collector may introduce seconds-long pauses in program execution, which would disrupt a media player or operating system. On the other hand, a real-time collector suitable for the media player might penalize a computational task."
Maybe I'm just sheltered, but I've never seen seconds-long pauses in a GC'd system. Not even a bad Java app. "Homogeneous environments also evolve into large, complex, and expensive systems since they must support the union of the requirements of every application that depends on them." This also seems a little biased. I think there are excellent examples of simplicity run amok in various operating systems that help prevent devolution into overt complexity, including the OS presented. I think GC in general gets a bad rap, and coming up with a systemwide GC policy might have been a good thing. But now I'm showing my bias.... -Jack
