Flying Toaster said:
This is my first post ever here so bear with me if I happen to have done something wrong.
Yes, I am aware that this post exists (even though I am not confident about any similar posts) but that"s not what I am trying to ask here.
What I would like to know here is if anyone in the Raspberry Pi project has contacted Microsoft at all in regards to the possibility of having a Windows edition specifically designed and licensed for it. I know this sounds a bit "out there", but, then, there is the SGI Visual Workstation 320/540.
x86 versus ARM:
I assume you mustn"t have actually read the Windows 8 on R-PI thread, or you still are unaware that the R-PI is ARM based not x86 (like the Pentium processor etc) .
Your example, demonstrates that lack of understanding, as the SGI visual workstation, is x86 based, so Windows can work on it with trivial adaptations.
However the PI uses a wholly different processor architecture than the x86, named "Advanced Risc Machine" or ARM.
So what you are actually asking Microsoft to do is to completely re-write windows for the ARM architecture, so that it can run on the R-PI. Then, even if they did that, none of the windows applications will run either on it because they too are x86 based!
The only (old) version of "windows" that ever ran on the ARM platform was Windows CE, which is windows in name only.
Its exactly because of this, and the fact that the ARM architecture is gaining strength in the market, that Microsoft decided to make an end to their decades old dependancy on the x86 architecture, and to start supporting the ARM architecture (for tablets) too with Windows 8. Note that even on Windows 8 running on ARM the x86 windows applications will not run either. Applications have to be (re-)written for ARM. And re-writing an application for ARM might be difficult or impossible as its often not just a simple re-compile, and depending on what platform that the software was written on, the same platform must also be able to create ARM code, which is very often not the case.
So as I explained before, older windows versions simply won't run on the PI natively.
and as was established before, in the "windows 8 on R-PI" thread, windows 8 will also not run on the PI for reasons stated there.
Conclusion, no modern form of Windows will ever run on the R-PI, except for..
As with any CPU, you can write an emulator to "fake" a CPU of another architecture, but by nature such an emulated CPU takes up RAM and also will run a factor 10 slower than the native CPU, (the actual factor depends on the quality of the code obviously, but x10 is a good ballpark figure) so a 700MHz CPU of one kind can emulate a 70MHz CPU of another kind. The more complicated the emulated CPU is, the more code is needed to emulate it, and the slower the result will be.
In practice this means that the PI can emulate an older x86 CPU (say a i486) running at the equivalent of say 66MHz and has say 180 MB of RAM to work with. This makes it possible, with the right software to run windows 3.1, and perhaps windows 95, but nothing more advanced.
Current x86 CPU's these days are also internally RISC processors, as that is the best way to create faster CPU's, so they have hardware internally to "transcode" x86 instructions to a form of RISC, (VLIW) there even has been an attempt to create a RISC processor that transcoded x86 code in real time using its own RISC instructions to those RISC instructions, to create a faster and more power efficient "x86" CPU but that attempt failed, as using more transistors was ultimately a more effective (but energy hungry) solution, and using a few 100 Watt didn't seem to be an issue. It might be possible to write such a real time instruction transcoder in software for the ARM, but I doubt it will be (much) faster than a traditional emulator.