The largest problem is that windows is licensed based on CPU size and core count. Microsoft believes that they should be able to make money off of the size of your environment, because whatever gain you get from having more CPU power, is only enabled by them. This is one of the more primary reasons why people are choosing linux or macos as well as freeBSD instead of windows. There is no direct relationship to the compute size of a deployed system to the amount of "money" that may be made. But, alas, microsoft only operates in the money making mode. This is why consumer versions of windows have always suffered from security risks and very poor performance under load. The complexity of the scheduling details mentioned here are part of the problem. Instead of fixing problems and providing APIs and systems that keep this stuff from happening, they've engineered solutions around something that one person can do. There is no end to end view of what windows and the kernel might be such that the OS can completely function with the least amount of visible presence in the operation of the software systems.