我刚开始研究操作系统,我最近意识到处理器架构和操作系统实现之间存在多大差异。
所以,我想知道是否有人能告诉我微软如何让Windows在ARM和英特尔上工作的某些指针。我的进一步阅读和指导会很棒。
答案 0 :(得分:3)
直到最近,Windows还没有为ARM编译。 Windows CE,Windows Embedded Compact,Windows RT,Windows Phone等都是在ARM上编译和执行的;但是,Windows的桌面版和服务器版仍然严格依赖于英特尔架构。从Windows 10开始,将会有一些融合,其中所有版本的操作系统将共享一个将在多种体系结构上编译的公共核心。
大部分操作系统都是用C / C ++编写的,这些架构上的编译器都很发达。更大的挑战在于维护或统一体系结构特定的实现,优化和汇编代码。在许多情况下,必须维护单独的体系结构特定代码。
Linux内核在这方面非常相似。不同的工具链和编译器配置用于为不同的体系结构编译内核。此外,配置参数用于在编译时启用和链接不同的代码片段。