進度條

微軟(Microsoft)裁撤Windows部門?基於Linux系統的物聯網+AI的時代將到來?

「跨時代的終點」-從Windows作業系統的殞落,觀察微軟在物聯網與雲端服務的佈局

作者: Vincent Ke 更新日期:
校正小編補充:
 

雲端作業系統 + AI人工智慧,這個組合好熟悉!難不成電影雲端情人(英文原名 her)的時代要開始了嗎?

 

先不說是否真能與電腦談一場柏拉圖式戀愛,作業系統迎合你的喜好而自動學習的功能雖不成熟,但早已在各大系統與裝置裡面加入了!微軟這次的大動作滿有意思的,這幾年在裝置端的失敗,看看是否可以借由這次破釜沈舟來重返榮耀!

 

微軟在3月底發佈了一則驚世駭俗的重大新聞,就是預計在2018年度裁撤Windows的營運部門,並把事業重心放置雲端事務上,這個政策取決於互聯網時代的來臨,舉凡像是亞馬遜、Google以及微軟自家的雲端服務,已經可以有等同個人電腦裡Windows作業系統服務,像是我們最常使用到的Office系列,今年(2018年)也找來了目前最夯的Youtuber業配王HowHow代言(頻道影片)。

 

這樣的政策面雖然對工程師來說是一個不小的衝擊,但對雲端服務來說,等同是一個重大個宣判,告訴各位投資者及客戶,雲端服務的紅海戰爭,已經正式開打。

 

 

而這次的裁撤卻也促生了微軟兩個新生部門,一個是體驗和裝置(Experiences & Devices)部門,以及雲端與 AI 平台(Cloud + AI Platform)部門。體驗和設備部門之後的核心業務會負責Windows 和 Office 軟體開發工作,並負責生產如 Surface 、Xbox及其他微軟開發的硬體裝置。而雲端與 AI 平台部門,則如出其名,將以提供雲端服務的企業服務為核心,包括 Azure 雲端服務以及各種分散式運算解決方案等。

 

這樣政策也宣判過去在微軟透過以Windows及Windows CE為嵌入式裝置的作業系統,未來也將全數移轉到以Linux為核心的Windows,作為日後物聯網(Internet of Things, IoT)戰爭廝殺的重大籌碼,但這個舉動的意向為何呢?微軟的下一步策略又是什麼?

 


我想這必須先從「嵌(唸 ㄑㄧㄢ)入式裝置」(Embedded System)說明開始提起,我們都知道嵌入式裝置是IoT的應用及解決方案之一,過去英國電機工程師協會的定義為「控制、監視或輔助設備、器具(機器)或其他工廠運作的裝置」,並具備下列特徵:

 

  1. 僅執行特定功能,故和家用電腦或Server上就有很大的區別
  2. 透過微電腦與周邊軟硬體來架構核心
  3. 穩定、全自動操作循環

     

像是早期的Mp3播放器,到現在的智慧家電、藍芽喇叭,其實都是嵌入式裝置的廣泛應用,而這中間不可或缺的,就是即時多工處理核心 (real-time multi-tasking kernel),和具備即時多工作業的作業系統,來完成這些裝置上CPU、記憶體的管理和分配,以及和其他裝置的聯繫等,但在核心及作業系統的選擇上,同樣是intel晶片Window與Linux相比可說相當吃虧。

 

 

Windows本身在嵌入式裝置上有作業系統的解決方案(如精簡版Windows 的 WindowsCE 或是 Windows 10),但設計複雜,程式肥大等特性,逐漸已經在市場和性能反應上落後Linux不少;而在開源及自由軟體運動的協助下,Linux核心發佈多次版本,來針對I/O、進度、系統甚至是TCP/IP上作出了各種優化,但因Window是商用軟體的考量,除了原始碼非開放外,無法輕易做到個別硬體的客製化開發更是一大痛點,加上在架構上過為複雜,一但更改核心設計更可能影響到其他商用軟體的支援。

 

這也是我們很少看到Windows補丁程式發佈的原因之一,更別提外界人士(或社區)自發性的優化提案,被微軟公司接受的案例。

 

校正小編補充:

  這是相當致命的一樣因素,早年在ODM場嵌入式裝置的開發中,尤其是ARM晶片(常見於手機、平板中)正火熱的那幾年,賣一台賺四台,利潤比賣衣服還高。客戶永遠有新想法,市場火熱,零件裝置不斷出新。如果無法在短時間解決裝置相容性的問題,老闆、客戶方面的壓力馬上出現。


  如果主機是Linux裝置,Sample Code Driver通常很快就會在社群出現,或是你可以找到很多參考書籍與網路文章討論,對於因市場熱絡而被公司補充新人來說碰到完全不能解決的情況相對少很多。


  如果是WindowsCE主機,幾乎查不到資訊,只能等廠商發Sample Code出來,如果沒有Smaple Code或是有Bug。除了自己解之外(對新手來說幾乎完全不可能),那就只能讓業務對廠商施加壓力。

   
  更不用說在這樹莓派(Raspberry Pi)開發版已經連高中生都可以輕易把玩開發的年代,還在想辦法移植驅動程式到WindowsCE? 人家自走車搭配人臉辨識系統都不知道甩你幾條街了?
 

 

 

 

而我們都知道Linux是自由軟體運動以及GNU計畫躍進的代表角色,過去GNU計劃裡開發的軟體,都只能依賴在Unix作執行,而Linux出現後,許多軟體也可以接續使用Linux為主要作業系統來進行開發,因此也越來越多的團隊參與Linux作為開發測試平台的計劃,來符合更多如學術上的個別硬體、或是針對其他目的作出的客製開發。演變迄今Linux kernel 目前已經具備小而巧,支援度廣(不管是平台還是軟體)的代名詞。

 

正因為自由軟體計劃的特性,比起封閉的商用軟體,更容易招攬開發者的投入,僅管他現在背負者GPL這個令人疑慮的條例,但仍無法消彌程式開發者優化Linux的熱情,哪怕只要提高處理效能的1%,這些躍進都有可能讓你在軟體界名留青史。而這樣的特性,更適合應用在IoT上針對互聯網解決方案的嵌入式裝置上作應用。

 

綜合上述優缺點,這也是現在Linux成為了嵌入式裝置應用的主要考量之一,?了讓Linux可以成功導入嵌入式裝置,更促使了嵌入式Linux(Embedded Linux)的誕生,目前也廣泛的運用在智慧型手機、PDA及媒體播放器上,像Android 系統就是利用Linux 核心的一個非常著名的嵌入式實例。

 

校正小編補充:

  蘋果電腦的MacOS 系統內涵的核心也是由類Unix核心改出來的(與Linux相當接近),所以相容度相當高,也導致於現在多數的Linux與網站開發工程師選用Macbook Pro筆電當作開發工具(全世界80%以上的網站都是在Linux作業系統下架設網站(作業系統免費商業使用),無論是使用PHP, Java, Ruby On Rails還是其他的程式語言架設,微軟擁有的C#除外)

 

 

所以Windows將開發重心移到Linux下作發展,似乎也奠定了Linux在IoT時代的角色定位,當然這並不是一步險棋,而是宣告微軟業務類型未來會進行的重大轉變,當微軟不在是一個純軟體供應商時,他的下一步的戰略又是什麼呢?

 

過去一年,微軟公司分享許多未來他們在智慧雲端(intelligent cloud)及智慧邊緣(intelligent edge)的看法與佈局,智慧雲端即是提供更多強而有力的計算輔助,結合AI給企業更多面向的運用,而智慧邊緣則是IoT的下一步,邊緣是指在物聯網中最終端的接收裝置(或可稱邊緣裝置),透過裝置的更細小化,作出像是感知器上的應用,例如空氣品質監測、雨水蒐集及人臉辨識等,都是未來邊緣裝置的應用之一,來取代過去傳統的嵌入式裝置,達到體積精小化、任務單一化的目的。這樣的政策走向,也告知著雲端運算以及多工運算核心的重要,而Linux更是其中運作的關鍵角色。

 

 

所以從時代的演進,微軟已經從過去的軟體公司,演進成行動、雲端和AI公司,並將整體的開發資源投入在雲端服務上,似乎也告訴廣大消費者,IoT的紅海戰正式開打,隨著時代的演進,面對越來越微型化的嵌入式裝置(或邊緣裝置)如何有效的導入Linux,對C語言的熟悉和開發經驗,都是應用Linux其他套件所需的重要課題。總之未來的趨勢無人可擋,具備Linux的基底,絕對是讓自己躍身為IoT要角的不二法門。

 


最後,如果你喜歡我們的文章,別忘了到我們的FB粉絲團按讚喔!!

Medium vincent

Vincent Ke

喜歡把混亂的事情變的簡單 用嘴巴做事其實很可以 但要結合靈活的腦袋思考 就一起來拆解吧