去年春天,微软公布了自己的window系统与物联网系统的方案,该方案使用树莓派和window 10组成物联网的核心。树莓派是一个与window全然不同的执行在ARM构架下的系统。
是的,也许微软决心离开桌面系统。构架一个数以十亿计的物联网平台。或者用它来填补数以万计的POS终端和ATM机留下的空白。
当window 10物联网系统第一次公布时。人们对这样一个window实时系统抱着非常大的希望。可以执行真正的Windows应用程序在树莓派上但是一个杀手级的特性。
在树莓派上执行Skype的视屏通话但是一个非常Cool的方式。
Window 10物联网核心并不很像一个操作系统。它作为一个设备,能够执行使用Windows API写的应用,可是不能执行脚本。假设你想控制多个设备,每一个程序都须要使用程序进行开发,如Visual Basic。JavaScript,C#,或者是Python。
Window 10物联网核心的一个主要特性是网络互动性。
当启动树莓派并指定一个浏览器后。它会呈现一个基于互联网的界面。你能通过它检測设备是否连接。是否执行,并启动新的应用程序。这被觉得是一个基于网络特性的窗体控制面板。
尽管windows 10物联网系统使用了HDMI作为输出,但输出的信息不多。视频输出的能力临时未被支持。这样。一些数字设备如POS机和ATM机能够使用window 10的物联网系统,但对于通用计算机。最好使用其它的系统实现。
安装:
官方说法,安装window 10的物联网系统仅仅能在已经安装了window10系统的机器上执行。在GitHub上有一个ffu2img的项目。该项目使用python语言编写,可以将微软专门的FFU镜像文件转换成IMG文件,从而可以在nix或者有Win32DiskImager的window系统上执行。
Window 10系统相对其它的windows系统来说是免费的,但执行windows 10物联网核心的要求是将镜像文件放在SD卡中安装而且仅仅能监控使用物联网核心的设备。不知道为什么这个系统不能提供一个IMG镜像文件。
当将镜像文件放到SD卡上之后。安装windows 10物联网系统核心就像树莓派介绍的一样简单:将卡放进树莓派的卡槽,连接以太网电缆,并供电。不须要使用键盘和鼠标,你差点儿不须要做什么事,须要做的仅仅是通过HDMI接口的监控输出信息,输出信息包含IP地址和USB设备是否连接等。
你能对语言和网络设置等做一些改动。这里也有一些教程和样例。比方连接到Visual Studio和点亮LED灯,可是样例不多。主要的使用windows 10物联网核心的信息不过 网络信息、设备名称、和一张树莓派的图片。
官方宣称,树莓派支持的Wifi模块仅仅有官方宣布的BCM43143芯片。可是我们一般会在树莓派上使用的wifi模块是Edimax EW-7811Un,这个小模块使用了Realtec公司的芯片。
奇怪的是,假设你手头有一块树莓派2的板子。你接上wifi模块之后是不能工作的。通常的想法是觉得缺少Realtec芯片的驱动。
但事实并不是这样,事实上没有一个window的驱动可以在windows 10 物联网系统核心上工作,即使是树莓派官方的驱动,如树莓派的摄像头驱动,这些驱动都不会被window 10物联网驱动核心支持。
假设你想要更进一步的证据证明windows 10物联网核心是一个不可扩展的系统,你仅仅须要再看深一点。数字音频是全然被忽略的,板子的引脚8和10,通常树莓派的3.3V电压的UART引脚被保留了。微软企图让这块板子不能使用硬件UART接口。
幸运的是,这些问题仅仅是临时的。一个window的设备驱动团队表示很多其它的wifi驱动将会被支持,但也仅限于那些树莓派基金会支持的官方驱动。
相同的关于UART口支持的问题也会得到进一步的协调。
究竟是为谁开发的:
关于微软推出的这样的操作系统不支持眼下通用的标准wifi、UART或者其它重要硬件设备的说法,是为了通过出售这样的设备对抗开源硬件运动的趋势。当然这仅仅是一种推測。
让我们再想一想window 10物联网核心的实际意义。你能使用Visual Studio编敲代码并上传到不论什么执行物联网系统核心的设备上。这些编程的工作有一个非常友好的界面。对于那些20出头的windows框架开发团队来说非常easy使用。这不是一个针对爱好者开发的设备。而是一个针对终端和ATM机而开发的设备。那些仍在成千上万制造的ATM设备。使用的是Windows XP系统,不久将会被淘汰,这就是微软企图拯救这个市场的方法。
物联网系统核心的用户不会是你、也不是我、更不是那些9岁左右想要点亮LED灯的孩子们。这个系统是给公司用来替换那些成千上万的执行XP系统的嵌入式终端设备的。
收好你的SD卡吧:
对于那些有一块树莓派2和一张SD卡的人来说,你在尝试windows 10物联网系统核心花费的是你的时间,而这并不值得。
尽管windows 10物联网核心对于一个公司来说是个伟大的产品,由于可以继承那些使用Visual Basic等编写的产品。
但对于DIYer来说这并不能创造新的东西。并且,会有非常多可选的方案来取代它。比方Cloud9 IDE和BeagleBone就是一个非常好的选择。
这不是一个能代替一切的操作系统。如Linux那样的系统能支持很多其它的硬件。
Windows 10 IOT Core是一个刚開始学习的人。并应该进一步的学习。
它的存在对于那些想要它的人来说是合适的,但对于其它人来说也许linux才会是一个更好的选择。
優態客(YourTechnic)的博客:www.yourtechnic.com
優態客(YourTechnic)的联系方式:postmaster@yourtechnic.com