While the point about advertising is interesting, I think it's a bit of a red herring: Apple and Microsoft are trying to make money by having people use their OS, so naturally they have to convert people, or convince them to not switch to the competition. Linux on the other hand doesn't need to convert people.
Sure, the more users you get, the more potential developers there are, and the better the system will end up being. And of course there are commercial Linux distributions. But in general, Linux doesn't need advertising, because it doesn't need to "win." It just needs to stay alive for those of us who want to use it!