由遊戲機到android〜嵌入系統的時代
文:傑特
雖然今年E3大玩3D和體感,但高科技界都知道,這兩年高科技界的主角既不是3D電視、亦自然也不會是可以看立體影像的遊戲機,而是iPhone OS vs Android:兩個主打智能手機市場的系統。
滿街都是嵌入系統
所謂嵌入系統(Embedded system)者,說穿了沒有什麼大不了,就是針對某一套硬件而設計、完全嵌入硬件內連成一體的操作系統。這和一般的汎用型操作系統不同是:一般的操作系統可以安裝在不同的硬件,最多只是組件配合問題,理論上只要附合要求任何電腦都可以安裝該系統,而非嵌入型那樣無法改變。而嵌入又可分為客戶特別製造的專用系統,這類客製系統的確可以針對某個別性的功能而編寫,所以無所謂汎用性的考慮,所以又有人說是特製系統,像小至手機電池控制晶片,大至共振儀都是這類,由於這類硬件功能單一化,也沒有更新的需要,所以開發者就真的為客人(產品設計者)編個最簡單的系統.燒進晶片塞進去就了事,這樣既省錢也能將錯誤減到最低。
不過這類系統一般都只能做規定的工作,完全沒有擴張性可言,而且能做的也太少(筆者相信你不會需要腦共振儀也可以沖咖啡的吧?)。雖然廣義上也是電腦但卻無法滿足多樣性的要求。所以當去到比較有擴張性的產品如PDA、smartphone又或者複製性較高的遊戲機時,廠商則偏向採用將現成的操作系統精簡化,這樣搞起來不但容易,也較易追加新功能,但另一方面問題亦自然較多,穩定性較差之餘也有很多限制,但相比起一般系統卻有輕巧易推動,而操作亦更附合特殊環境的需求。這就是比較多人知道的嵌入系統的另一類:以現存的設計加以優化的專用系統。
Dreamcast的CE到叉盒的2k
說到這類系統,遊戲玩家最早聽到的應該就是SEGA的Dreamcast和Windows CE了。
一直以來遊戲機本身其實並沒有所謂的嵌入系統這玩意,因為開發者都是直接存取遊戲機的硬件功能,比較先進的Playstation也只是加個開機畫面,以客製系統給用家管理一下記憶卡,又或者切換輸出影像格式之類,其他情況都是直接控制遊戲機輸出影像,好處當然是能夠將主機的性能發揮到最大限度,但代價是遊戲十分難以編寫,因為每一個功能都要自己落手落腳去呼叫硬件來做,效率自然慢而又吃力不討好。
去到Dreamcast的時候由於有過Saturn遊戲難編寫的問題,所以SEGA大膽地使用windows CE作為他們的嵌入系統,不過有趣的是雖云SEGA自己送上門,但他們反而不怎樣使用CE,原因是在遊戲和硬件加多一個系統表現當然會比較差,對SEGA那堆怪物開發者而言跟本無需借用DirectX的協助,所以實際沒幾隻遊戲用得上這個其實是燒在GD-ROM而非遊戲機晶片上的系統。
雖然DC是失敗收場,但卻首次讓一般人也知道這類系統在家電產品上的潛力。而之後Microsoft在他們的Xbox用的就是特製版windows 2000,以叉盒的性能用來推2000年制作再優化的win2000當然輕而易舉,而且DirectX的成熟更讓廠商輕易將電腦遊戲移過來,也間接讓一些遊戲引擎的表現更佳,也造就了現在叉零的成功。
畢竟現在的遊戲的複雜度已經和十年前完全不同的次元,特別是不少遊戲廠都想著一雞多吃的念頭,要他們針對個別硬件一句句指令去和硬件溝通也實在太不人道了,想想以前的遊戲一張CD碟已經很誇張,但現在卻隨便都10G以上,再加上即使不直接和硬件溝通,隔個OS還是很快,又方便移植去其他硬件平台,誰會那麼呆自討苦吃?
網路讓Smartphone走紅
至於PDA、Smartphone方面則一直以來都是封閉系統對開放系統,最早的是Palm系統對Windows CE,然後是Symbian,一方面是為單一硬件設計的系統另一方則是只要付錢就可以裝在任何硬件之上。不過在那個年代智慧手機其實還不成氣候,除非你真的是大忙人又或者愛玩高科技,否則也實在無此必要。當然,另一個原因是wifi的不普及,又沒有3G流動上網,不能隨街連線玩FB又或者Twitter又或者看新聞、又或者連上Google日曆翻查時間的話,你有需要買一部iPhone嗎?
沒錯,正如任何事都有所謂時機一樣,當時來運到就連山也擋不住,iPhone的成功其實有很大部份是乘著3G的風,但市面上卻沒有一個合符「老人小孩三分鍾內學會使用」的介面以及「和電腦上網相似度高達八成」的手機,日本手機沒錯是可以上網,但介面和電腦完全不同不在話,而且在不斷加入不同的新功能將手機弄得比電腦更煩,而Symbian和CE也是同一道理,由於嵌入系統的最大好處是廠商可以因應各種不同的硬件自行加入新功能,長久下來系統就失去了最初那簡潔的優點,甚至比起一般電腦還複雜,這也是日系手機和Symbian失敗的一大原因﹣系統老化架床疊屋是也。至於Palm作為祖師爺之一失敗其實很大原因是經營問題,至於元祖的PDA Apple Newton則是走得太早﹣想想1993年連電腦還不是那麼多人用,上網對絕大部份人而言還是異界之物,他們會需要一部PDA嗎?買本記事薄用筆寫還比較實際哩!
作為已成了Smartphone的標準形態的iPhone和一眾上網手機,都是托這個可以隨街上網的年代才能迅速成功,變成另一個改變個人生活的產品,也讓這類嵌入系統成了媒體的目標。
封閉vs開放
如上文所指,一直以來手機的嵌人系統都是封閉vs開放,由Palm對Symbian再加一個CE,去到現在是iPhone(再加blackberry)對Android(及windows phone),這和遊戲機上嵌入系統封閉對封閉完全不同。
基本上選擇封閉系統的公司他們打著的優點就是「軟硬一體」,整個系統是真的為某一類硬件度身訂造,用家能夠動的地方很有限,即使iPhone OS的核心其實還是OS X,但在各種改變優化之下已變成兩個不同的系統了。同理blackberry本身也是針對單一公司的單一產品編寫的系統,這類封閉系統因為只需要為一種硬件編寫功能,所以相對而言不但較穩定,統一性亦高,而且廠商亦會主動更新以提供最佳的系統給用家,因為他們賣的其實是軟硬一體的操作環境而非硬件表現,如不能提供一個優良環境的話對用家的信心是很大的打擊:iPhone已經比其他廠出得又慢表現又差,如果連操作都不好誰要用?另外因為系統開發也算在成本內所以機價實在壓不下來,別信那些網站的成本計算,你能夠拿那堆零件砌一部iPhone出來?設計師們是免費替你工作?開發iPhone OS的人呢?還有生產運送等成本?七除八拆下其實並沒有想像中的暴利。
至於Android這類開放系統雖然分為免費和有料兩種,但都是可以隨便使用,好處當然是可以不管廠牌,軟件開發理論上也不需要擔心兼容性的問題。不過帶來的另一個問題就是廠商由於在系統上已無獨一的賣點,所以只能在硬件上下工夫,讓每一部機都有不一樣的設計以求特出,而且加隨意加入專用的新功能和特製程式,結果還是跌回當年windows mobile又或者日本手機的老路,在無組織各吹各的調下,系統本身的特性被淡化了,而且太多廠牌太多新機讓用家無所適從。另一個問題是由於廠商只是賣機,為了吸引人不斷買新機所以只好不更新老形號,想享受最新的系統只能換機。導致用家買一部手機可能半年就變老機,很多新程式不能跑新功能沒有,算來三部便宜的Android手機加起來比一部貴的iPhone還要花多一大筆。比起來Apple還可以從app store那裡賺回來,所以他們也不在乎地免費讓用家升級(iPod touch就要付一點小錢),可是像HTC只靠賣機賺錢,讓用家免費升級有什麼好處?所以才會出現千奇百怪的一大堆Android手機,升級卻是能拖就拖,反而google因為Android的手機app商店他們有錢分,所以自然較爽快。
沒有對不對的問題
其實嵌入系統本身就不是為了開放而存在的,甚至說封閉才是正常,反而像Android開放使用才是特例。所以開放與否不是優勢,關鍵還是嵌入系統的本質:
在一個特殊的操作環境和特殊的硬件下,該系統能不能讓使用者有最佳的使用感覺去滿足用家的特殊需求?