The original NT kernel was quite nice, but at around the NT 4.0 mark, it started going off the rails, with an awful lot of stuff being brought into kernel space "for performance reasons".
I do believe – if I am not mistaken – that the Linux kernel is monolithic, and that means however much NT has in the kernel, there simply can't be any more than what Linux currently does. I do not see this has hindered Linux in anyway to run on ARM-based hardware, however.
First of all, let's assume we have access to the codebase of whatever Windows variant we want to start from.
Irrelevant. Unless we are looking at some very convoluted division of responsibilities here and the total absence of well-defined APIs, there is no reason for access to soucre code being essentially for any party other than MS itself for the incorporation of Windows to RPi.
If you wanted to start from the NT codebase, AIUI you'd be looking at bringing in support for a whole new architecture platform that isn't currently supported, into a platform that has thrown away all pretensions of supporting anything other than x86.
Don't get me wrong here, but do you have any substantial evidence to prove that such "pretensions" do in fact exist?
It may be that the Vista/Win7/Win8 family of kernels are still multi-platform, but I strongly doubt it. You'd probably have to start with something at around the Win2K point.
Again, don't get me wrong here, but I do believe I have phrased my question carefully enough to exclude any speculations that are without technical merits. Unless you have something to substantiate your doubt, then I'll simply have to kindly ask you, again, for some substantial evidence to support your claim.
If you want to start from the Win8/ARM codebase, you'd have to backport all the ARMv7 stuff it uses to use ARMv6 equivalents where possible
I am not sure I am missing something here – and pushing aside the fact Windows embedded lines support ARMv6 from the word "go" - but isn't this supposed to be the kind of stuff that you take care of in the compiler?
slim the whole thing down to work within the amount of memory available
As I have pointed out several times, this has been done once on the server side of things, and I am not seeing that the Server Core install option is going to vanish in the next release of Windows Server, which, I must add, has always been based on the same things released for the client editions of Windows.
and somehow work out a way of getting it to run at anything above a snail's pace (the Pi's ARMv6 core is *significantly slower per-cycle than a single ARMv7 core, which Win8 is demanding 2 of, and at a significantly higher clockspeed).
Again, I expect reasoning well-substantiated with technical details and not idle speculations based on the system requirements of a specific release of a product family that is in no way created specifically with RPi in mind, and I do hope that I won't have to repeat this again just to remind people what my question is and isn't in the future.
CE, you could probably get to work. <irony>All</irony> you'd need to do would be to write a new BSP (that's actually quite a lot of work to do). In all cases, you'd need to get support from Broadcom to develop the GPU side of things, but if we assume you're MS, then that's probably gonna be OK.
I do believe that's part of the idea of having MS involved.
The "secure boot" issue is not thorny for ideological reasons, it's thorny for hardware reasons – you can't implement it on the Pi platform. Thus, you are not going to get MS's approval to run Win8/ARM on the Pi unless they decide to throw away that restriction.
I don't see why that would be an issue at all unless I have already formed an opinion on whether they will hesitate to forgo this supposed "restriction". (Needless to say, I have not.)
There are ideological reasons to avoid such a hardware restriction from a user's point of view (I own the hardware, I should be able to run what the hell I like on it, for example), but that's an aside.
And why is that a problem at all with Windows?
In what way would it be in the interests of the foundation to do so?
Because, say, Windows is a popular operating systems? In fact, I am using it right now, all my family members are using it right now, all my friends are using it right now, and my neighbour's cats would probably be using it as well if not for the fact they are cats. Hence, I don't think the question that one should be asking here is "why" but, rather, "why not".
In what way would it be beneficial to have Windows of some variant running on the Pi, given that it's not going to be able to run any existing software.
I do believe that the userland side of the issue is well taken care of by the existing development frameworks of the platform and, if possible, the involvement of MS. This is not to mention that development tools for Windows are also pretty well-established due to the commercial nature of the platform - and, if I am not mistaken, this ought to take care of the "Computer Science" side of the picture pretty thoroughly.
(x86 stuff won't run because it's x86, Win8/ARM stuff won't run because it assumes ARMv7, CE stuff because what little there is of it is a festering pile of dingo's kidneys).
I am pretty sure your personal sentiments of the platform is not what exactly I am asking for here, but that nonetheless gets me to rethink whether my queries are indeed worth the effort.