I hate to come off as a windows defender but it's where I started so it kind of feels like my native language or something. Firstly there were legitimate reasons for having various versions of Vista. Namely it was supposed to be a tiered pricing structure so home users who don't need corporate features don't have to pay for them and also cheaper versions for "developing economies" that didn't need nearly the features. I think they were hoping to lure XP pirates in china/etc. to a cheap/legit alternative. You can see how well that went over. In fact I wholeheartedly agree that the hundred versions of vista (and only slightly fewer of 7) was a complete disaster and was done in the worst possible fashion. My only point was there were in fact legitimate reasons for doing it.
Also there were a lot of versions of XP: Home, Pro, MCE, and x64 (probably some others in "limited markets"). That's actually I don't know...two less than 7 has? Actually there's embedded xp as well but I won't count that.
And actually Windows has a lot more customization features than it apparently gets credit for. Windows 7 and later especially but designed specifically to be modular in that way to work lower powered devices all the way up to more modern devices (e.g. xbox one). Even with a normal version of 7 between 3rd party software, gpedit and registry tweaks you can make it do about anything you want. There's also that WinPE thing to truly start from nothing. No building from source obviously but that I've personally never done that in Linux either and even if I did I would just compile it and run it, not modify said source.
I'm kind of coming from a Windows perspective here but I'm slowly learning. Having learned most everything on ubuntu server (CLI only) I'm not sure I could fire up a CentOS box or Arch and really be able to use it just as effectively (config files/standard utils and file system differences). And it's a whole other thing entirely when it comes to embedded things like routers with or without busybox (OpenWRT is a good for instance...).
If one wanted to "build the foundation" of an OS on the windows side there's two options: WinPE (freely available from MS) and Hyper-V Server
, also free-as-in-beer. Just start installing drivers through the command line and install a GUI (blackbox for windows
for instance)...make your own custom Windows OS piece-by-piece. Can't legally distribute of course but you can offer scripts to make it possible for others to make it.
Sorry I went off on a tangent here. That windows-not-customizable line just always gets me for some reason. Do normal users really customize the kernel source that regularly?