今天大家已经被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。每周推送内容,有技术也有生活,和你一起做一个有情怀的程序猿。

世界上不是所有的东西都是用直接经济契约来维系的,比如:阳光,空气,爱情和开源软件。
 
分类: IoT
标签: 开源微软视频IoTWindows10

winhec的更多相关文章

  1. Guest Speaker on 2015 WinHEC Shenzhen 秋季大会

    继今年3月份的WinHEC春季大会,秋季大会于11月10日-11日深圳如期举行.此次大会的主题是Windows 10 IoT和Microsoft Azure,云和端的无缝连接是微软物联网解决方案的典型 ...

  2. WinHEC 2015 深圳之行

    在上个月,本人有幸在MVP Team和MVP Lead的帮助下,参加了微软在深圳召开的WinHEC 2015大会. 在本次大会上,见证了微软和国内企业的合作,并且发布一些关于在Windows 10方面 ...

  3. #winhec# 开发人员刷屏看点 (视频)

    今天大家已经被winhec刷屏了,本来不想写这篇了,但看了所有的文章,大家关注的都是windows 10的那些新功能,小米win10刷机,联想千元手机,小娜啥的.对于keynote上第二部分 Don ...

  4. #一周五# (视频) 手掌四轴Estes 4606,树莓派2和WRTNode,WinHEC 2015深圳

    又到周五,本周<快速创建网站>系列接近尾声,主要部分已经完成,还差最后一篇博主我正在整理.这里给大家分享一些最近看到的有意思的东西. 手掌四轴飞行器 无人机这段时间可是大出风头,DJI或者 ...

  5. 【WinHec启示录】透过Windows 10技术布局,谈微软王者归来

    每个时代都有王者,王者的成功,往往是因为恰逢其时地发布了一个成功的产品(具有里程碑意义,划时代的产品).Windows 95的成功标示着微软是PC时代的王者:WinXP的成功标示着微软是互联网时代的王 ...

  6. WinHEC(Windows硬件project产业创新峰会)将2015回归

    WinHEC这是Windows Hardware Engineering Cumminity,中国呼吁Windows硬件project产业创新峰会.将2015在早期的回报,2015年3月18日至19日 ...

  7. 【WinHec启发录】透过Windows 10技术布局,谈微软王者归来

    每一个时代都有王者,王者的成功,往往是由于恰逢其时地公布了一个成功的产品(具有里程碑意义,划时代的产品).Windows 95的成功标示着微软是PC时代的王者:WinXP的成功标示着微软是互联网时代的 ...

  8. #一周五# win10通用平台,无处不在的Xamarin,msbuild开源,MVP卢建晖的Asp.NET 5系列 (视频)

    又到周五,本周博主的大部分时间都花在深圳了.最近winhec的消息太多了,我只想补充一点,就是winhec时隔7年之后回归,大多数的媒体都还在沿用之前的“硬件工程大会(Hardware Enginee ...

  9. 大新闻!HoloLens即将入华商用

    昨天微软搞了大新闻,Terry和Alexi到了深圳,在WinHEC大会上宣布了2017上半年HoloLens正式入华商用. 关于HoloLens的技术原理和细节官方文档和报道已经披露很多了,他是一款真 ...

随机推荐

  1. cocos2D(五岁以下儿童)---- CCNode

    本将主要介绍下CCNode这个类.CCNode是全部节点的基类,当中包含我们经常使用的CCScene(场景).CCLayer(图层).CCSprite(精灵)等.它是一个不可以可视化显示的抽象类,仅仅 ...

  2. SpringAop进行日志管理。

    在java开发中日志的管理有非常多种.我通常会使用过滤器,或者是Spring的拦截器进行日志的处理.假设是用过滤器比較简单,仅仅要对全部的.do提交进行拦截,然后获取action的提交路径就能够获取对 ...

  3. ural 1932 The Secret of Identifier (容斥原理)

    标题效果: 计算到n字符串. 精确到只是有一个不同的字符,两个不同的字符.三个不同的字符,四对不同的字符. IDEAS: 枚举状态. dp[i] [j] ...当前串取出 i 状态下的全部字符转化成十 ...

  4. PC结束 Spark 二次开发 收到自己主动,并允许好友请求

    本次Spark二次开发是为了客服模块的开发, 能让用户一旦点击该客服则直接自己主动加入好友.而客服放则需自己主动加入好友,不同弹出对话框进行允许,这方便的广大客服. 如今废话不多说,直接上代码. pa ...

  5. [git] fatal: This operation must be run in a work tree

    正在使用git  init --bare 它的成立裸仓库后,,正在使用git 其他命令将出现fatal:This operation must be run in a work tree 问题,途径: ...

  6. Android清除缓存功能来实现

    我们都知道在Android的设置->应用程序中能够查看应用程序的相关信息,当中有一个功能是清除缓存. 如图: watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZ ...

  7. java.lang.ClassCastException: java.lang.NoClassDefFoundError cannot be cast to java.lang.RuntimeException

    不是一个Exception,而是一个Error,要强制转成Exception类型,就出错了java.lang.NoClassDefFoundError java.lang.RuntimeExcepti ...

  8. BMP文件格式及读写

    转 http://blog.csdn.net/pkueecser/article/details/5579604 http://blog.csdn.net/pkueecser/article/deta ...

  9. eclipse+Java2WSDL+WSDL2Java 2012-12-06 12:32:43| 分类: j2ee |报道|字体大小 认购 一、eclipse如何使用低axis生成wsdl 可以使用

    eclipse+Java2WSDL+WSDL2Java 一.eclipse下怎样用axis生成wsdl 能够使用axis提供的Java2WSDL功能生成所要公布类的 WSDL,过程例如以下:  1.在 ...

  10. JQuery插件开发初探——图片轮播

    在熟悉了插件开发的结构以后,自己尝试着做了一个稍微复杂一点的小功能:图片轮播插件. 由于之前使用的一款图片轮播插件,性能不高,页面加载的时候需要载入全部的图片,因此速度很慢. 通过自己做这个小插件,能 ...