http://www.fmsoft.cn/zhcn/about/blog/minigui/ 【作者】MiniGUI 及飛漫軟件創始人魏永明。 【重編注】這篇文章,是為紀念 MiniGUI 發布 10 年(2009年)而寫的。從 2010 年到現在的 2011 年中期,這個世界的變化很快。MiniGUI和飛漫軟件從水平市場逐漸集中精力于手機這個垂直市場,而 2007 年 Google 發布的 Android系統,如秋分掃落葉般發展迅速,看起來將在 2012 年全面占據中低端(千元)智能機市場。MiniGUI這個產品的生命周期,也似乎要走到盡頭了——起碼在手機市場,大概也只能在功能手機這個領域存活三到五年左右的時間。但不管如何,大家了解下MiniGUI 這個嵌入式系統、移動終端中關鍵系統軟件的發展歷程,應該還算是有些用的吧。 一、引言 MiniGUI 的開發起始于 1998 年底,第一個版本大致發布于 1999 年 6月。從第一個版本的面世到現在,已經過整整十年時間。在這十年當中,經過許多客戶的使用和驗證、經過飛漫軟件多年的持續研發投入和精心打造,今天的MiniGUI,已經成為了性能優良、功能豐富的、跨操作系統的嵌入式窗口系統,用戶遍布全球各地,為中國的嵌入式系統軟件樹立了一面鮮活的旗幟。在這十年中,MiniGUI的發展大致經歷了三個階段: 1999年到2002年:純自由軟件階段。在這個階段,MiniGUI 以純粹的自由軟件形式開發和發布,這時的MiniGUI 還很不成熟。 2002年到2005年:圍繞開源的 MiniGUI,通過定制開發、技術支持、培訓等服務發展MiniGUI。在這個階段,飛漫軟件通過為客戶提供定制開發、技術支持服務等業務,逐步將 MiniGUI打造成了一個成熟的嵌入式系統軟件。 2005年到2009年:以銷售 MiniGUI 增值版產品、軟件使用授權的模式持續推廣和開發MiniGUI。在這個階段,飛漫軟件通過銷售 MiniGUI 軟件產品獲取收入并持續發展 MiniGUI,并開發了基于 MiniGUI的瀏覽器(mDolphin)、J2SE 方案(mPeer)、mStudio 等相關及配套軟件產品,形成了圍繞 MiniGUI的一個完善的軟件平臺。 MiniGUI,作為一個完全自主開發的系統軟件,走過了十年的歷程,生命力如此之強,在當今浮躁的大環境下實屬難得。那么,MiniGUI在這十年中走過了哪些路程?發展 MiniGUI 又有哪些現實的價值?本文將詳細為大家闡述 MiniGUI 的十年歷程以及執著發展MiniGUI 的現實價值。 二、MiniGUI 的最初發展 MiniGUI 的起源,要從 1998 年算起。 那時,自由軟件的思想剛剛從國外傳入到中國大陸,大陸也有許多人開始學習和關注Linux。在此之前,筆者還沉浸在微軟為我們營造的軟件世界中。那時,筆者不知道 Linux 是一個什么東西,而 Windows的封閉、臃腫卻讓我有了看看微軟之外世界的想法。在這樣的背景下,我有了嘗試其他操作系統的沖動,而我當時所從事的研究課題也迫使我作出一個選擇――是Windows 還是 Linux。 當時,我在清華大學某實驗室工作。該實驗室正要開發一套工業控制系統――用于新型機床的數控系統。以前,這樣的控制系統一般都建立在DOS 操作系統之上,因為 DOS 最為簡單,并且能夠直接控制中斷和 I/O,從而可以獲得非常高的實時響應能力。但 DOS 是一個16 位操作,不能充分發揮基于 32 位處理器的新硬件平臺的功能,因此,我們首先要選擇一個新的 32位操作系統。由于微軟系列產品在大家心中“神圣不可侵犯”的地位,我所在研究小組的領導傾向于使用 Windows NT作為操作系統開發這個數控系統。現在想起來真是有些后怕!如果當時真的選擇了 WindowsNT,那這個數控系統簡直就是無法完成的――因為它需要 2ms 的實時響應能力!WindowsNT,這個號稱“新技術”的操作系統,實際根本不是一個硬實時操作系統,而且其龐大累贅的體系結構,也無法真正應用于工業現場環境使用。 在經過很長時間的調研之后,我們對 Linux 有了一定的認識。其中最為關鍵的是,Linux 已經有了一個實時的內核補丁,即RT-Linux。利用 RT-Linux,可以直接處理中斷,從而能夠讓一個普通的 Linux系統成為一個健壯的硬實時系統。經過長時間的游說,實驗室終于決定選擇 Linux作為數控系統的操作系統平臺。但緊接著出現了另一個問題――GUI 怎么辦。因為 Linux 上的 X Window也不可避免地龐大和累贅。我們曾經做過一個試驗,如果在 RT-Linux 上啟動 XWindow,則會導致嚴重的關鍵中斷延遲。而且,當時的 X Window 漢化技術也不很成熟。所以,建立一個輕型的 GUI系統,并且具有良好的中文支持,是首先要解決的問題。 但實際上,這已經不是什么問題了。那時,我已經具備了一定的圖形用戶界面系統開發經驗。早在 1995 年,就已經開發完成了DOS 上一個簡單的圖形用戶界面系統。我將她稱為 MiniGUI。在 Linux 上的 SVGALib函數庫的幫助下,建立一個類似的圖形用戶界面支持系統的確是一項并不困難的工作。經過筆者大概半年沒日沒夜的編碼,MiniGUI最初的版本(0.2.0)在 1999 年 6 月遵循 GPL 許可證發布,并在 SMTH BBS 的 FreeDevelop版面做了對 MiniGUI 的介紹。這樣,一個最初僅僅因為解決 Linux 上中文化圖形界面問題而開發的 MiniGUI就這樣問世了。 1999 年時,大陸已經有許多非正式組織在倡導 Linux操作系統,也已經出現了一些由中國人主持的自由軟件項目,比如由章文嵩主持的 Linux Virtual Server 項目、由蘇哲主持的Smart Boot Manager 項目等等。后來,包括 MiniGUI在內的這三個自由軟件項目,被公認為三大由中國人主持和開發的自由軟件項目。 作為筆者的個人興趣,從 1999 年到 2002 年期間,MiniGUI始終作為一個純粹的自由軟件項目而持續開發和發布,最終發展到了 1.2.0 版本。在這一階段,還有眾多組織和企業支持了 MiniGUI的開發: 由清華大學學生何小波、陶品等發起和組織的AKA 組織。這個組織為 MiniGUI 早期的發布、宣傳做了大量的工作。 聯想公司。聯想在 2000年期間,也嘗試開發自己的發行版(Happy Linux),并采用 MiniGUI作為其安裝程序。筆者以個人身份參與了該項目的開發,經過該項目的開發,MiniGUI形成了一個較為完整的圖形用戶界面支持系統,第一次體現了其商業價值。 藍點(深圳)軟件技術有限公司。該公司是早期三大中文Linux 發行版之一 Bluepoint Linux的開發商。2000年5月到2001年5月,筆者曾在該公司的北京研發中心工作,并嘗試將 MiniGUI 用于深圳元征公司的汽車檢測用PDA 設備中。這期間,MiniGUI 得到了一些新的發展。 北京中科紅旗軟件技術有限公司。該公司是 RedFlagLinux 發行版的開發商。筆者也曾在該公司的嵌入式事業部工作。在該公司工作期間(2001年5月到2002年8月),嘗試將MiniGUI 應用于單兵作戰手持設備以及信息終端中。在這期間,MiniGUI 得到了進一步的發展。 IBMdeveloperWorks 網站。2001年到2002年期間,通過擔任該網站的專欄作家,筆者撰寫了一批闡述 MiniGUI設計思想、MiniGUI 使用和編程的文章,為推廣 MiniGUI 起到了推波助瀾的作用。 梅特勒托利多(常州)稱重儀表公司。該公司是筆者所知、除筆者自己之外,第一個將MiniGUI 應用于商用嵌入式設備中的企業。這個企業也是后來飛漫軟件的第一個客戶。 雖然作為一個自由軟件項目,MiniGUI可以僅憑個人興趣以及一些為數不多的用戶的鼓勵和支持慢慢發展,但因為國內的軟件基礎薄弱,無法在短時間內形成適合自由軟件發展的土壤,因此,筆者決定創立一個商業化公司,通過商業化機構的運作,促進MiniGUI 的快速發展。這樣,就誕生了北京飛漫軟件技術有限公司。 三、MiniGUI 的商業化發展歷程 2002 年 9月,筆者創立了北京飛漫軟件技術有限公司,嘗試自由軟件的商業化運作模式。飛漫軟件成立之初,我們的主要業務模型是通過定制服務、技術支持、培訓等業務來獲得收入,MiniGUI仍然作為一個自由軟件項目而發展,只是其維護者從個人轉向了商業機構。 飛漫軟件從成立到2005年底持續開發MiniGUI,并發布了若干版本:于 2003 年 5 月發布了 MiniGUIV1.2.6 版本;于 2003 年 9 月發布了 MiniGUI V1.3.0 版本;2003 年 10 月,MiniGUI完成了到 uClinux 和 eCos 操作系統的移植,并發布了 MiniGUI V1.3.3 版本。至此,MiniGUI成為一個跨平臺的嵌入式圖形用戶界面支持系統。 2004 年 8 月,華為選擇 MiniGUI作為平臺軟件產品,用于機頂盒、手持終端等產品領域。在此之前,飛漫軟件主要的業務,是通過為客戶提供基于 MiniGUI的定制開發業務,以及技術支持服務來獲得收入,而華為采購 MiniGUI 并支付軟件授權使用費用,為快速發展 MiniGUI提供了另外一條商業化道路。這樣,從 2005年開始,飛漫軟件開始了一次重要的轉型,即以軟件產品的銷售、軟件使用授權作為主要的業務而進行發展,并推出了 MiniGUI增值版產品。飛漫軟件也走上了一條較為快速發展的道路,從 2005 年到 2007 年,飛漫軟件的年銷售額增長率保持在 40%以上。 2005 年 1 月,TD-SCDMA 標準的主要制定者(大唐移動,現在的聯芯科技)采用 MiniGUI 作為商用TD-SCDMA 手機的 MMI 方案;2005年 7 月,基于 VxWorks Simulator 的 MiniGUI演示開發環境順利完成,該環境的成功搭建進一步加深了飛漫軟件與美國風河間的合作。 2006 年 1 月,正式發布 MiniGUI 的相關組件產品 mGp V1.0、mGi V1.0 以及 mG3dV1.0;2006 年 5 月,飛漫軟件成為美國風河系統公司全球合作伙伴,為 VxWorks 提供全面的圖形解決方案。 2006 年 12 月,在香港舉辦的世界電信展上,大唐移動(現聯芯科技)隆重推出采用 MiniGUI 和 Fhas應用開發平臺作為圖形顯示系統和終端應用開發平臺的 TD-SCDMA 3G 手機終端軟件標準平臺 Arena。經過多年的發展,截止2009 年 10 月,中國移動 3G 手機(即 TD-SCDMA 手機)市場中,有超過 50% 的 3G手機使用MiniGUI作為其圖形用戶界面。在 2009 年上半年,由中國移動深度定制的四款 3G 手機中,有兩款手機采用MiniGUI;這兩款手機是:中興通訊的U210 以及宇龍酷派的 F69。除此之外,還有早期試商用階段的中興通信 U85、海信 T68等型號的 TD 手機。目前,采用 MiniGUI 開發的手機類產品已經有十幾款型號。 2008 年 10 月,經過一年多的開發,飛漫軟件發布了 MiniGUI V3.0。最新的 MiniGUI V3.0 版本在MiniGUI V2.0/1.6 的基礎上,提供了眾多高級功能特性,將幫助用戶開發具有更好用戶體驗的嵌入式產品。MiniGUI 3.0中蘊含有眾多由飛漫軟件研發團隊首創的技術(外觀渲染器、界面特效等),標志著 MiniGUI3.0從模仿、跟隨他人走向了自主創新階段。與此同時,飛漫軟件基于 MiniGUI開發的其他兩項技術和產品:mDolphin(嵌入式瀏覽器)、mPeer(嵌入式 J2SE解決方案)也得到了諸多重要客戶的認可并使用。 2009年初,全球500強企業思科系統(中國)有限公司和飛漫達成合作,在網絡電視領域展開廣泛深入的合作,思科系統(中國)有限公司選用飛漫軟件的全線系列產品作為其網絡電視方案的基礎軟件,包括MiniGUI、mDolphin瀏覽器、mPeerJ2SE 解決方案。 2009 年 10 月,在中華人民共和國成立 60 周年之際,飛漫軟件推出了 MiniGUI 的配套開發工具產品mStudio。至此,圍繞 MiniGUI 的關鍵應用、開發工具等就相對完整了。 2009年,經過多年的實踐,飛漫軟件終于找到了一條符合市場需求的發展道路,并穩步走上了快速發展道路。雖然 2008年底、2009年初,和眾多中小企業一樣,飛漫軟件也受到了全球性金融危機的影響,但 2009 年飛漫軟件的預期銷售業績將同比增長 80%或者更高。這一成績的取得,證明了飛漫軟件所選道路的正確性,也標志著飛漫軟件的發展已經走向了快車道。 值得一提的是,直到今天,飛漫軟件仍然以自由軟件的形式發布 MiniGUI 的某些版本。其中包括廣泛使用的 MiniGUIV1.3.3,最新發布的 MiniGUI-GPL V1.6.10 等。同時,飛漫軟件還積極以開放源碼的形式發布了諸多軟件,如mGDesktop、mGallery、mGIS 等等。飛漫軟件也已成為國內為開源社區貢獻代碼最多的本土企業。 四、執著發展 MiniGUI 技術的現實意義 盡管 MiniGUI 的發展并不是一帆風順的,盡管 MiniGUI從純自由軟件走向商業化運作的模式被許多人詬病,但飛漫軟件執著發展 MiniGUI技術的現實意義不僅僅是為了單個企業的商業成功,而且也為了中國軟件行業的發展、中國嵌入式行業的發展: 在中國軟件產業缺乏人才、缺乏經驗,而且知識產權保護乏力的情況下,開發一個系統軟件的過程必定是艱難曲折的。但是,MiniGUI的成功表明,中國人完全有能力來自行開發完整的系統級軟件以及配套的開發工具,并將其商業化,最終通過為客戶帶來價值而證明自己的價值。 在開發 MiniGUI 以及 mDolphin等軟件的過程,飛漫軟件積累了大量的研發管理經驗,培養了大批軟件開發和測試人才。這些人才不僅僅為飛漫軟件的發展做出了重要貢獻,也必將把飛漫軟件的成功開發經驗,尤其是研發管理經驗帶到其他企業,從而幫助整體提升中國嵌入式軟件的開發水平和管理水平。 飛漫軟件的成功,將吸引大批優秀人才進入到嵌入式軟件的開發潮流中,相信中國必將涌現更多掌握核心技術、具有創新能力的嵌入式軟件企業,從而帶動中國嵌入式產業的長足發展。 五、以“十年磨一劍”的精神來重塑嵌入式行業 在中國短短的軟件產業發展歷史中,經過十年時間研發和推廣的軟件鳳毛麟角。飛漫軟件的實踐表明,只有抱定“十年磨一劍”的長遠目標,才能在基礎薄弱、人才缺乏、融資環境惡劣的中國軟件業整體環境下打造出一個個軟件精品。嵌入式行業,尤其是電子消費類產品行業,所面臨的競爭激烈,產品更新換代非常快,要想在這個紅海中暢游,沒有多年的研發積累是不可能的。 筆者呼吁嵌入式行業的從業者,從現在開始,加大研發投入,重視軟件價值,以“十年磨一劍”的精神來重塑中國的嵌入式行業! |