11

All the answers I see mostly just say "server is optimized to be a server and desktop is optimized to be a desktop" with no technical details explaining how and where these optimizations are applied.

They should be running the same kernel right? So if we exclude software running on top of the OS (obviously the whole enterprise software stack only runs on server) what teaks and optimizations separate the two OSs?

This question was asked in more broad terms here. The accepted answer pointed to these differences between the two OSs: amount of supported memory and processors, supported software and services, supported connections (though this can be modified), and "the server OS is configured to give priority to background apps/services and the client OS is configured to give priority to foreground apps".

I have not been able to find any docs that explain how Server prioritizes background services or if there are any other tweaks to things like the networking stack or other low level components of the OS.

Is there any documentation that describes any optimizations/kernel tweaks in specific technical terms?

  • I'm sure there are things behind the scenes not so obvious too that are different with Server OSes such as registry keys, system files, DLLs, etc. that correlate to specific features and functions being available at the OS level. There are limits in client OSes for interfacing with certain protocol stack interfaces where certain Server OSes allow more concurrent connections via some interface or protocol where Server OSes will have less limitations or perhaps none. Microsoft sharing everything would be like Colonel Sanders giving everyone his secret recipe... – Pimp Juice IT Oct 28 '15 at 18:00
  • This is exactly what I'm talking about "...certain Server OSes allow more concurrent connections via some interface of protocol...". Your pretty much saying nothing of value here apart from "server OSs do server stuff and client OSs do client stuff". I'm asking for an actual answer with technical depth/examples. I'm not asking to see proprietary code. Wanting to know how the server OS is tweaked and behaves differently on a technical level is not asking too much. – red888 Oct 28 '15 at 19:58
  • I understand what you're saying for sure, this is why I only commented and didn't answered as I too don't know where to find this in depth whitepaper if there is such a thing. I think if MS published all this information, then there'd be a lot more people that would hack their client OSes to trick them into thinking they are server OSes and thus MS would get paid less for the server OSes so I'm not sure they'd put this detail out there for everyone. I'd like to know the answer too so I'll keep an eye on the post for satisfactory answers (or comments I suppose). – Pimp Juice IT Oct 28 '15 at 20:37
3

I am not aware of a white paper that details the differences. However, you can change the behavior of the server and desktop OS. By default the desktop gives priority to foreground apps and the server gives priority to background apps. This is configurable. If you run an RDP server / terminal server you often want the full desktop experience. You need to install that on server. Also in the control panel under "system and security- system" choose advanced system settings. Then under performance click on settings. This is the adjustment area for both visual effects and for processor scheduling.

Not the answer you're looking for? Browse other questions tagged or ask your own question.