今天大家已经被winhec刷屏了,本来不想写这篇了,但看了所有的文章,大家关注的都是windows 10的那些新功能,小米win10刷机,联想千元手机,小娜啥的。对于keynote上第二部分 Don Box 的演讲部分大家只字未提,这实在对不起广大的开发人员。那些都是都是给媒体嚼舌根,造舆论的;所以我还是给大家念叨一下真正有价值的东西。

说实话,博主一直搞软件开发的,和硬件的关系仅限于高中和大学假期在中关村攒机的经历(当然还有给女神修电脑,这个谁没干过呢?)。为啥我一个搞软件的要来参加硬件大会?其实呢?我不是搞软件的,是搞软件工程的。软件和软件工程有啥不同呢?你可以这样理解,搞软件是淘金,搞软件工程是卖牛仔裤,我做的是如何开发软件,专注的是工具,方法,效率,自动化等等。所以,我来winhec的目的是想看看怎样能够简化,优化硬件开发的过程。

和北京的雾霾天比起来,清晨深圳空气中传来的是阵阵大海味道和春天的丝丝温暖。

碧绿的棕榈树后面就是本次winhec会议的会场,深圳罗湖君悦酒店;够逼格,据说参加winhec不是报名,不是买票,而必须是微软邀请的。

IoT 开发板

Windows 10给大家带来的不仅仅是PC,平板和手机;更重要的IoT开发平台。而需要开发IoT就需要开发板。今天的winhec上微软公布了三块重要可以用于windows 10 IoT开发的主板。

更细节的配置看下图,这里还多了一块。

大家可以到 http://www.msdn.microsoft.com/hardwaredevboard 了解更多信息。

这几块开发板的主要区别

- Shark Cove
○ 只支持x86 32位应用,
○ 基于Intel Atom处理器的Windows或Android平板。
○ 售价:299美金
○ 官网:http://www.sharkscove.org/

- MinowBoard Max,
○ 支持x64位应用
○ 基于Intel Atom处理器,适合进行驱动开发和创客应用
○ 售价:单核板 99美金, 双核板 199美金
○ 官网:http://www.minnowboard.org/meet-minnowboard-max/

- Raspberry Pi2
○ 4核 ARM处理器,主要用于创客应用
○ 可以跑Linux和Windows
○ 售价:35美金
○ 官网:http://www.raspberrypi.org/raspberry-pi-2-on-sale/

- Qualcomm DragonBoard 410C
○ 高通snapdragon 400处理器
○ 自带Wi-Fi,蓝牙和GPS
○ 适合驱动开发,创客应用,可以跑Windows, Android和Linux
○ 支持1080p HD视频输出,和H.264视频处理能力
○ 售价:不详
○ 官网:https://developer.qualcomm.com/mobile-development/development-devices/dragonboard/410c

不用我多说了,高通的这个410C非常之强大。但稍微思考一下,你会发现这几块板子的定位不同,各有所长。树莓派有最好的社区支持,高通的硬件强大,应该是里面最抢眼的两个了。

开发板的应用场景主要有两个:1) 给硬件厂商开发自己的硬件和驱动程序提供开发平台;2)给创客们(makers)提供创新和尝试的平台。微软给出的这几块开发板基本上覆盖了市面上能看到的重要处理器和平台,配合windows 10的通用性,应该可以在这两个应用场景上满足开发人员的所有需求了。

开发工具链

有了统一的操作系统和开发板,我们还需要开发工具可以支持完整的应用开发周期,这就是本次winhec keynote上带给大家的另外一个重要信息。

这次轮到Don Box这位大神出场了,今天winhec的刷屏信息都集中在Terry Myerson上了,对此博主很不满意。也许你还不知道他是谁,但是你一定知道COM,知道SOAP。那么你应该知道Don Box,具体信息大家可以看看以下这篇文章:http://www.techcn.com.cn/index.php?doc-view-146094.html

Don Box的演讲才是今天winhec上最精彩的部分

使用免费的Visual Studio社区版进行Win10通用驱动程序开发

什么是通用驱动?如果你进行过Windows App或Windows Phone的开发,那么你一定知道通用应用(Universal App)。是的,通用驱动就是可以在所有运行Windows 10的PC,平板,手机和IoT设备上运行的基于同一套代码的通用驱动程序(Universal Driver)。这意味这只要是目标平台支持的硬件,你都不必为这个硬件平台单独开发驱动程序,同一套代码,支持连接到你的不同设备。(当然,这是个子集,并不是所有的驱动都可以做成通用的。)

Windows Driver Framework (WDF) 通过GitHub开源

微软的开源之路才刚刚开始,今天的GitHub上已经可以clone到这个驱动程序框架了

框架代码
https://github.com/Microsoft/Windows-driver-frameworks
样例代码
https://github.com/Microsoft/Windows-driver-samples

通用驱动程序入门
https://msdn.microsoft.com/library/windows/hardware/dn941241(v=vs.85).aspx

下面是现场演示,同一套代码在以上提到的几块开发板上运行。

从图片看的不是太清楚,下面这段视频可以说明,当感应到光照时,不同的开发板使用同样的驱动程序作出了同样的响应。

使用FFU进行部署

使用FFU可以把操作系统,驱动程序,应用程序全部打包,并创建可以直接部署到目标硬件的 image。在这个image中包含了分区信息。可以通过USB同时刷入8台设备,或者写入存储设备(如SD卡);所谓的线刷和卡刷。

现在,你应该可以理解为啥在大家已经被winhec刷屏的情况下还要连夜写下这篇博文。作为开发人员,你是不是已经等不及在你的小米上刷上windows 10了?是不是等不及装上Visual Studio 社区版,clone一份WDF,搞一块开发板,开始你的IoT之旅?

好吧福利来了,明天,每一位参加winhec的参会者都会获得一块MinowBoard Max。

晚上还有幸和Don Box,Terry Myerson和来自华为,Bosch,Intel的众多专家一起闭门交流。而作为硬件MVP,微软送出的开发板不仅仅是一块。
谢谢微软MVP项目组的Celine,来自windows开发团队Asobo,和另外两位MVP守斌和施炯。今天学到了很多。


欢迎关注本博客微信订阅号 anb-io。每周推送内容,有技术也有生活,和你一起做一个有情怀的程序猿。

#winhec# 开发人员刷屏看点 (视频)的更多相关文章

  1. 【经典】Linux开发人员必看资料+工具

    Linux是一种自由和开放源码的类Unix操作系统,存在着许多不同的Linux版本,但它们都使用了Linux内核.Linux可安装在各种计算机硬件设备中,比如手机.平板电脑.路由器.视频游戏控制台.台 ...

  2. .NET开发人员必看:提高ASP.NET Web应用性能的24种方法和技巧

    那性能问题到底该如何解决?以下是应用系统发布前,作为 .NET 开发人员需要检查的点. 1.debug=「false」 当创建 ASP.NET Web应用程序,默认设置为「true」.开发过程中,设置 ...

  3. 【热门收藏】iOS开发人员必看的精品资料(100个)——下载目录

    iPhone.iPad产品风靡全球,巨大的用户群刺激着iOS软件开发需求,然而国内人才缺口很大,正处于供不应求的状态,ios开发前景大好.我们整理了51CTO下载中心100份热门的ios开发资料,做了 ...

  4. Windows Phone开发人员必看资料

    win phone开发必看资料,下载地址收藏啦!收藏后可有选择性的下载,希望大家喜欢! 完整附件下载:http://down.51cto.com/data/414417 附件预览: Windows E ...

  5. iOS开发人员必看的精品资料(100个)

    目录下载地址:http://down.51cto.com/data/416672 附件预览如下: iOS游戏开发之Unity3D引擎系列 http://down.51cto.com/zt/399 iP ...

  6. solr教程,值得刚接触搜索开发人员一看

    http://blog.csdn.net/awj3584/article/details/16963525 Solr调研总结 开发类型 全文检索相关开发 Solr版本 4.2 文件内容 本文介绍sol ...

  7. 【转载】solr教程,值得刚接触搜索开发人员一看

    转载:http://blog.csdn.net/awj3584/article/details/16963525 Solr调研总结 开发类型 全文检索相关开发 Solr版本 4.2 文件内容 本文介绍 ...

  8. 开发人员不可不看的 OBD通讯协议知识

    OBD-II Network Standards» J1850 VPW– Adopted by GM; also known as Class 2.– Adopted by Chrysler (kno ...

  9. Windows Phone 8.1上的开发人员请看

    1)SDK选择:如果你是在Windows Phone 8.1上做一个新App, 或者想把7.x/8.0的App移植到8.1上,请使用WinRT SDK,而不是Silverlight.当然Silverl ...

随机推荐

  1. asp.net session

    简介编辑 session对象用于存储特定的用户会话所需的信息 . Session对象的引入是为了弥补HTTP协议的不足,HTTP协议是一种无状态的协议. Session中文是"会话" ...

  2. 如何获取配置文件Web.config的AppSetting节点数据

    ConfigurationManager必须要先在工程里添加system.configuration.dll程序集的引用. 1 System.Configuration.ConfigurationMa ...

  3. java的if else语句入门

    条件语句,是程序中根据条件是否成立进行选择执行的一类语句,这类语句在实际使用中,难点在于如何准确的抽象条件.例如实现程序登录功能时,如果用户名和密码正确,则进入系统,否则弹出“密码错误”这样的提示框等 ...

  4. 【Java每日一题】20161117

    package Nov2016; public class Ques1117 { public static void main(String[] args) { Sub sub = new Sub( ...

  5. [修正] Berlin 10.1 支持 iPhone 4 (iOS v7.x)

    原本在 Seattle 版本时,还能支持 iPhone 3GS (iOS v6.x), iPhone 4 (iOS v7.x),到了 Berlin 已不支持了,在用户的抱怨下,只好自己尝试去修正它,经 ...

  6. 改变 TMemo 的背景颜色 (Firemonkey)

    说明:展示使用程序码改变 Firemonkey TMemo 的背景颜色. 适用:XE6 源码下载:[原創]Memo改背景色_XE6.zip //---------------------------- ...

  7. quartz TRIGGER_STATE变为ERROR解决方法

    今天,项目组一个同事说开发环境一直正常quartz定时任务今天不跑了,因为异常已经封装了,所以应该不是没有捕获异常导致.也检查了JobDetail肯定没有重复的任务,最后检查qrtz_triggers ...

  8. 多平台下Modbus通信协议库的设计(一)

    1.背景 1.1.范围 MODBUS 是 OSI 模型第 7 层上的应用层报文传输协议, 它在连接至不同类型总线或网络的设备之间提供客户机/服务器通信. 自从 1979 年出现工业串行链路的事实标准以 ...

  9. CSS中的浮动和定位

    在了解CSS中的浮动和定位之前有必要先了解清楚标准流和脱离标准流的特性 标准流的默认特性 1.分行.块级元素,并且能够dispay转换. 2.块级元素(block):默认独占一行,不能并列显示,能够设 ...

  10. Elastislide - 响应式的图片循环展示效果

    Elastislide 是一款非常优秀的响应式 jQuery 图片循环展示(旋转木马)插件,集成了 Touchwipe 插件以支持触屏设备.提供了四种效果:水平图片传送带.垂直图片传送带.固定在屏幕底 ...