#winhec# 開發人員刷屏看點 (視訊)

北京的201個藍天發表於2015-03-19

今天大家已經被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。每週推送內容,有技術也有生活,和你一起做一個有情懷的程式猿。

相關文章