TheRegister is reporting that Microsoft is spilling the beans on Windows 7 innard. To tell the truth, you must be in the software business or otherwise you will not be interested in the subject.
What you see is historical burden that Microsoft has to live with, and is trying to unentangle. On the layering issue for example, I do not think it is fair to say that Microsoft did not follow the layering advise serious programmers/developers now insist on.
On the optimization side it is good to see Microsoft trying to push the optimization to the limit on stuff that users use very frequently.
The main decision to go ahead with “UAC” and “MinWin” was not what we expected. Interesting. Although I do not think the reason for “UAC” is correct, because it introduce a second problem which is worse: It lure users into a false sense of security, as they think Windows is protected but it is not.
I, however, do not like the decision to use “Fault Tolerant Heap”. I think it is bad,very bad. It encourage sloppy programming practice and make bugs difficult to spot. The so-called “compromise” where FTH will not be turned on when you are debugging is useless. People like me for example, do not necessary use an IDE which offers debug mode. We tend to use the program itself, inserting printf() statements to trace the program. The reason we use it is preciesely because we know debugging mode software behave differently from running mode. If we do it on Windows 7, our bug will not be caught. Finally, it makes it difficult to write cross-platform software.