Most users and closed software providers seems to feel more comfortable with the Windows maximal operating system option because at there is one well defined and rich mainstream platform so it's easy to make an application work on it and thus be ready for most mainstream computers. On the other hand, it is very likely that the application will not work on the next release of the same operating system, because small changes will break it as the application has not gone through the more flexibility development cycle that any Linux (an example of minimal operating system) application has to go. In the end, it makes software providers even happier because they know that you will have to by the next release just in order to be able to use the same features as the current release of the application ... but on the next release of the operating system.
Now, the big problem with the maximal operating system option is that it lacks flexibility. As an example, Windows currently needs three different versions (NT or 2000, 98, and CE) to basically cover various needs that Linux better covers with a single version and if you specify that a software should run on all of these, the environment suddenly gets much smaller, and even worse, not that consistent at all.
So, the end result is that most software will run only in a subset of environments and most users will stop upgrading the operating system and the applications. From this we have two important conclusions:
Also, please don't believe that Linux is always a minimal operating system. Some software providers build software that only runs on RedHat distributions. In this case, you can think of RedHat as a maximal operating system, with all the consequences explained above.