什么是 Windows 10 IoT,您希望何时使用它?

微软提供了九个不同版本的 Windows 10,从家用版到企业版,再到服务器版。其中,Windows 10 IoT(物联网)版本可能不是你最常接触的,但它在日常生活中应用的频率可能比你想象的要高。

Windows 10 IoT:从 Windows Embedded 进化而来

Windows 10 物联网 是早期 Windows 版本(即 Windows Embedded)的升级版。你或许还记得那些 使用 Windows XP 系统的 ATM 机,它们亟需更新。这些ATM和其他类似的设备都运行着 Windows Embedded (XPe)。 其核心概念是提供一个精简版的 Windows 操作系统,使其能在性能较低的硬件上流畅运行,并专注于特定的应用场景。

例如,银行可能会在 ATM 机上使用这个系统,零售商可能会在 POS(销售点)系统中使用,而制造商则可能会在简单的原型设备上使用。但是,Windows IoT 的意义远不止于一个改名以迎合物联网概念的 Windows 版本,它的应用也不仅仅局限于大型企业。这一点在它的两个不同版本——IoT Enterprise 和 IoT Core 中体现得尤为明显。

IoT Enterprise:面向多设备场景

微软提供了两种 Windows 10 IoT 版本:企业版和核心版。企业版本质上是 Windows 10 企业版,但增加了额外的锁定控制功能。例如,你可以使用这些控制强制 Windows 只显示一个特定的展台应用。Windows 系统依然在后台运行,但普通用户无法访问这些服务。如果你在使用自助服务终端时遇到应用程序崩溃,且Windows 10 系统界面暴露出来,那么你很可能遇到的是 Windows 10 IoT Enterprise 系统。

与 Windows 10 企业版类似,你无法在商店购买 IoT 企业版的许可证。微软是通过转售合作伙伴和 OEM 协议来分发许可证的。由于这是一个完整的 Windows 版本,因此它具有所有标准功能。然而,它有一个显著的缺点:IoT Enterprise 无法在 ARM 处理器上运行。

IoT Core:适用于简单电路板、独立程序和传感器

一个由 Raspberry Pi 和 Windows IOT 驱动的带轮子的小型硬件机器人。

相比之下,IoT Core 则被大幅精简。它没有提供完整的 Windows Shell 体验,相反,该操作系统只能运行单个通用 Windows 程序 (UWP) 应用程序和后台进程。但是,IoT Core 可以在 ARM 处理器上运行。选择 IoT Core 的理由通常是运行不需要太多用户直接交互的简单程序。比如,智能温控器 就使用了 IoT Core 系统。另外,由于它与 ARM 兼容,你可以在简单的电路板上运行 IoT Core,比如 树莓派

这些特性使得 IoT Core 成为制造商进行快速原型设计或业余爱好者进行一次性项目的理想选择。Hackster 是一个硬件和软件开发社区,其中有许多 IoT Core 的示例,比如 带宠物识别功能的猫门,一个人脸识别门,一个智能家居仪表盘和一个魔镜。如果你掌握了必要的技术,就可以自行构建这些项目。微软甚至展示了一个由树莓派驱动、使用 Windows IOT 并与全息图交互的机器人。微软提供了相关资源,你可以下载 IoT Core 并免费用于个人项目。

此外,Raspberry Pi 或 Minnowboard 上的 IoT Core 可以搭配各种传感器和机制,比如摄像头、PIR 传感器、伺服器和温度传感器,从而扩展其应用范围。这使得 Windows 10 可以接收并处理这些传感器收集的数据,这也是物联网的基本概念。

Windows IoT:Visual Studio 开发者的封闭源选择

你可能会好奇,为什么有人会选择 Windows IoT,而不是 Linux 或 Android 等其他替代方案。这很大程度上取决于设备的用途、目标以及开发人员的背景。

开源的优势,例如许可和定制选项,通常被认为是其显著优势,而且也确实如此。但开源并非在所有场景下都是最佳选择。有时,特定的项目需要使用闭源(或专有)软件。一些企业和政府机构(无论好坏)也明确禁止采购时使用开源软件。即使公司没有明确禁止,也可能会非正式地不鼓励或反对使用开源软件。如果你是一名制造商,并且可以选择使用任何一种方案,那么你可能会选择任何一种能让你的客户满意的方法。

抛开开源与专有软件之争,对某些开发者来说,还有一个显著的优势。Windows 10 IoT 与 Visual Studio 相关联,可以使用该 IDE 为其开发应用程序。事实上,IoT Core 被设计为“无头”运行(没有图形界面),并通过连接到另一台 Windows 10 电脑进行编程和反馈。如果你大部分开发时间都花在 Visual Studio 中,那么选择 Windows 10 IoT 而不是其他替代方案可以节省学习和设置的时间。你可以立即运用你已有的全部经验。

普通用户可能不会下载和使用 Windows 10 IoT,但这并不意味着他们不会接触到它。在大多数情况下,如果你不是开发人员,该系统会在你没有意识到的情况下为你默默工作。它可能在为你以前使用过的 餐厅点餐自助终端 或者 准备下一杯鸡尾酒的设备 提供支持。即使你是开发者或者喜欢搞业余项目的人,如果你觉得学习 Linux 等替代方案过于耗时,Windows 10 IoT 也许是你下一个项目的最佳选择。