将 Windows Phone 7 移植到 HTC HD2 比最初想象的“复杂 10 倍”

阅读时间图标 4分钟读


读者帮助支持 MSpoweruser。如果您通过我们的链接购买,我们可能会获得佣金。 工具提示图标

阅读我们的披露页面,了解如何帮助 MSPoweruser 维持编辑团队 查看更多

HTC HD2 引脚 没有人想到将 Windows Phone 7 发布到 HTC HD2 这很容易,但在这篇文章中,一直在研究它的 Da_G,手里拿着烙铁和 JTAG 机器,证实这实际上是一项艰巨的挑战。

阅读 他漂亮的技术职位 休息后:

是的,RustyGrom 几乎涵盖了它。 首先,它被称为紧凑版的“CE”,这绝不是用词不当。 该系统设计得尽可能紧凑(所有东西都有构建时开关,因此您可以关闭几乎所有组件以实现非常“轻”的图像)显然,包括不存在的组件的驱动程序将是浪费空间,因为它们永远不会被使用。 所以没有包括在内。 在 PC 方面,BIOS 使用标准接口提供基本功能级别,因此创建通用驱动程序以将平台提升到该级别,并且可以从那里加载特定于供应商的驱动程序。

如果您想将嵌入式设备安装在台式计算机上并在其上加载 Windows 7,您可以从完全组装好的计算机(视频卡、主板、cpu、内存等)开始——打开它的电源。 它加载初始化基本硬件的 BIOS,并开始从硬盘驱动器加载其余部分。 嵌入式设备加载了仅提供闪存读/写支持的 NAND XLDR。 然后,XLDR 将“EBOOT”或“IPL”加载到典型设备上的 ram 中。 HTC 不使用 EBOOT/IPL 模型(在这里我们已经进一步脱离“标准”),而是将其拆分为 mARM AMSS(一个定制设计的 RtOS,加载和运行调制解调器 ARM CPU ) 和声压级。 一旦 AMSS 将 SPL 加载到 ram 中并执行它,SPL 就会初始化 aARM(应用 ARM CPU),进行各种检查(我们是否处于更新模式?我们是否需要公开一个闪存接口来更新操作系统的其余部分?做我们只是启动操作系统并移到一边?)

最后,您可以通过高度特定于设备的代码,进入(稍微)更通用的 CE 内核/驱动程序,这些 CE 内核/驱动程序被 SPL 复制到 ram 中并执行(本机内核/XIP 分区)

那么,CE7/WP7 与该型号有何不同? (这是我们现在在 CE5.x/WM6.x 中使用的模型) – mARM AMSS 提供了不同的接口和初始化程序。 这意味着来自我们可能移植的捐赠设备的任何 WP7 驱动程序都无法与我们当前的 AMSS 一起使用。 这反过来意味着不重新编写驱动程序/内核或 AMSS 就无法启动。

因此,为了再次将其与台式 PC 进行比较,我们需要为系统上的每个组件编写一个 BIOS、一个硬件抽象层和一组驱动程序(可能很多驱动程序在其余部分完成后就可以使用) )

Do I sound jaded yet? Yes, yes I am It’s probably a factor of 10 more complicated than I thought it would be initially.

这是需要连接的 JTAG 引脚输出,顺便说一句。 主板两边都有针脚,这也让我很头疼,因为我原本打算在 HD2 上安装一个外部端口,这样我就可以轻松地保持 JTAG 连接,但你基本上必须移除整个主板以保持可靠的连接,这实际上排除了在实时设备上运行它。

当然,Da_G 继续在他的 HTC HD2 上工作(上面连接到 JTAG 的设备内部图片),但人们确实想知道(这可能是亵渎)Android 在 HTC HD2 上的进步,我们在接下来的 7 个月内仍然需要 Windows Phone 12 来阻止相关设备吗?

请在下方告诉我们您的意见。

有关主题的更多信息: HTC HD2, 软件, Windows手机7的