<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 專(zhuān)題 > “自主”手機操作系統:如何判定及怎么做

“自主”手機操作系統:如何判定及怎么做

作者:魏永明 時(shí)間:2012-11-30 來(lái)源:電子產(chǎn)品世界 收藏

  四、如何開(kāi)發(fā)“自主”操作系統:目的、策略和方法

本文引用地址:http://dyxdggzs.com/article/139576.htm

  目的

  開(kāi)發(fā)“自主”操作系統的主要目的有兩種:一種是想再造一個(gè)類(lèi)似、i的操作系統,并作為其競爭者;一種僅僅是為了在商務(wù)談判和合作中獲得一個(gè)比較好的籌碼。當然,還有一種目的就是騙取政府的財政支持,對這類(lèi)不良目的,不屬本文討論范圍。

  我們先猜度一下國內外這幾年出現的一些“自主”操作系統,其目的是什么:

  Firefox :這是Mozilla公司推出的純粹基于HTML5/CSS3/JavaScript等網(wǎng)頁(yè)前端開(kāi)發(fā)技術(shù)推出的操作系統,和HP收購自Palm的web有類(lèi)似的軟件架構。HP收購了webOS之后的半年,即宣告放棄webOS,而Mozilla卻希望通過(guò)類(lèi)似技術(shù)的Firefox OS成為的競爭者。一會(huì )兒我們分析下為什么Firefox OS要比webOS有更強一些的生命力。

  華為提出要開(kāi)發(fā)的“自主”操作系統:作為一個(gè)智者,任正非不可能不知道一個(gè)真正“自主”的操作系統應該是什么樣子的。華為就算再有錢(qián),再有人才,短時(shí)間內也是搞不定一個(gè)“自主”操作系統的(如前所述,主要是建立對應的生態(tài)系統太難了)。這么說(shuō)來(lái),華為開(kāi)發(fā)“自主”操作系統,其目的其實(shí)就是做一個(gè)“備胎”,以便在和、Windows Phone等合作時(shí)能夠有一個(gè)可以討價(jià)還價(jià)的砝碼。也就是說(shuō),華為并不是真的要做“自主”的操作系統;或者這么說(shuō),支持團隊去做,做成Android那樣最好,做不成Android那樣,如果真有一天打起架來(lái)可以湊合用也行。

  阿里云OS:馬云同志的野心很大,他做阿里OS,就是要復制谷歌在移動(dòng)互聯(lián)網(wǎng)的商業(yè)模式,進(jìn)而在移動(dòng)互聯(lián)網(wǎng)領(lǐng)域推廣阿里體系的服務(wù)和內容??上У氖?,馬云貌似不太懂技術(shù),也沒(méi)個(gè)明白人給他做參謀,結果花了錢(qián)還被人捏住了七寸。最新的消息,阿里云OS獨立運行,再投個(gè)2億美金繼續搞。馬云同志啊,光有錢(qián)是不行的,你身邊還得有個(gè)把技術(shù)大牛幫你把關(guān)、出謀劃策才行啊。

  策略

  好,面對這兩種開(kāi)發(fā)“自主”操作系統的目的,應該有什么樣的策略呢?其實(shí)策略很簡(jiǎn)單,不管你是真心還是假意,都應該按照本文第三章給出的“自主”操作系統之特征進(jìn)行開(kāi)發(fā),除此之外,別無(wú)他法。任何期望找捷徑的方法,都不可能獲得成功。這里所說(shuō)的找捷徑的方法具體有:

  ·給Android整容。如OMS、阿里OS。

  ·忽略操作系統中生態(tài)系統的重要性,在Linux或其他開(kāi)源操作系統內核、系統庫等基礎上包裹一個(gè)簡(jiǎn)單的框架而形成的操作系統。這種操作系統,其復雜度和Linux發(fā)行版相當,離本人定義的真正“自主”操作系統還差十萬(wàn)八千里。讀者可能會(huì )問(wèn),這樣的系統做備胎不是還行嗎?為什么也得按照真做那樣開(kāi)發(fā)呢?你要知道的是,對手也不是傻子,人家看你的架勢,就知道你不是真做——你起碼得拉出真做的架勢來(lái),人家才能怕你啊!

  順便談?wù)勎覍跒g覽器技術(shù)的web操作系統的看法。

  理論上講,瀏覽器可以做很多事情,甚至可以替代PC機上的通用操作系統。但是,最新的瀏覽器技術(shù)(HTML5/CSS3等),還存在一些技術(shù)上的問(wèn)題。主要的問(wèn)題有如下兩個(gè):

  ·瀏覽器主要采用的JavaScript編程語(yǔ)言,本質(zhì)上是一種難于管理(源代碼保護、無(wú)法進(jìn)行有效的軟件架構設計、難于調試等等)的編程語(yǔ)言,同時(shí)內存消耗巨大,性能不佳。最新的說(shuō)法是,Facebook創(chuàng )始人直言全面采用HTML5的策略是個(gè)失誤,正在向操作系統的原生應用轉移。也就是說(shuō),JavaScript語(yǔ)言難以承載一個(gè)良性發(fā)展的生態(tài)系統。

  ·因為許多原因(主要是利益和政治因素),HTML5相關(guān)的標準有分裂的跡象,同時(shí)進(jìn)展緩慢。

  HTML5技術(shù)作為原生應用的一種補充,可以起到很好的作用,但是,如果要想在瀏覽器技術(shù)上建立一個(gè)真正可以和Android等競爭的操作系統,恐怕還需要很長(cháng)的時(shí)間(技術(shù)上必須有突破)。要不然,谷歌現在主推的應該是ChromeOS,而不是Android。

  現在回答剛才提到的問(wèn)題:為什么Firefox OS可以比webOS的生命力更長(cháng)久些?主要的原因是,Firefox OS是開(kāi)源的,有比較強大的企業(yè)在主導其發(fā)展,作為一個(gè)脫胎于開(kāi)源基金會(huì )的企業(yè)(Mozilla公司),也能獲得合作伙伴的一些好感;相反,因為webOS是封閉,HP又沒(méi)有能力像蘋(píng)果那樣打造一個(gè)完全封閉的平臺和生態(tài)系統,所以最終的命運是被人拋棄了。雖然后來(lái)webOS也走上了開(kāi)源的道路,但大勢已去,HP不親自帶頭搞,光靠開(kāi)源社區是搞不成的。

  方法

  假定你是一名“自主”操作系統項目的技術(shù)管理者,你第一步要考慮的問(wèn)題是什么?許多人的回答可能是:先選操作系統內核、基礎庫什么的。其實(shí)錯了,第一步要考慮的應該是你打算選擇什么編程語(yǔ)言作為原生應用的編程語(yǔ)言。

  世界上的編程語(yǔ)言有很多種,有些語(yǔ)言貼近機器,比如匯編語(yǔ)言、C語(yǔ)言,有些語(yǔ)言貼近人,比如Basic、Java,還有些語(yǔ)言用于特定領(lǐng)域,比如網(wǎng)頁(yè)服務(wù)器端使用的PHP,有些適合做不同軟件之間的粘合劑,比如Perl、Python。本文第三章已經(jīng)解釋了編程語(yǔ)言以及圍繞編程語(yǔ)言形成的運行環(huán)境、框架是將操作系統區隔于其他操作系統的主要技術(shù)特征。因此,我們必須慎重選擇一種編程語(yǔ)言。而且一旦選定了一種編程語(yǔ)言,“自主”操作系統在開(kāi)發(fā)者看來(lái)長(cháng)什么樣,其實(shí)就基本上定了。

  選擇編程語(yǔ)言要考慮如下因素:這種編程語(yǔ)言是否易于學(xué)習和掌握?是否有龐大的開(kāi)發(fā)者在使用它?這種編程語(yǔ)言是否具有高級語(yǔ)言的基本特征,比如,支持面向對象編程?這種編程語(yǔ)言是否是編譯執行的?這種編程語(yǔ)言是否利于保護開(kāi)發(fā)者的知識產(chǎn)權?這種編程語(yǔ)言是否有完整的工具鏈支持?這種編程語(yǔ)言是否有集成開(kāi)發(fā)環(huán)境的支持?這種編程語(yǔ)言是否易于保護整個(gè)操作系統不會(huì )被惡意代碼輕易破壞?如此等等。

  

 

  其實(shí)很多讀者看到這里,都會(huì )想到Java語(yǔ)言。是的,Java語(yǔ)言或其派生語(yǔ)言如C#是構架“自主”操作系統的最佳編程語(yǔ)言??上?,已經(jīng)被Android和Windows Phone給捷足先登了。

  如此一來(lái),你可以考慮重新設計一門(mén)類(lèi)似Java的語(yǔ)言,也可以通過(guò)其他手段,讓你使用Java語(yǔ)言構建的操作系統有別于其他操作系統。比如,構建自己的虛擬機,如Android使用的Dalvik那樣(Dalvik和Oracle的JDK標準虛擬機有很大不同,從而讓Oracle還挺難告贏(yíng)谷歌的);你也可以用Dalvik,但讓類(lèi)庫、運行環(huán)境和Android不同(這樣做的法律風(fēng)險要大一些)??傊?,你需要有自己的創(chuàng )新,全部抄襲是不行的。

  確定了編程語(yǔ)言,接下來(lái)的工作其實(shí)就比較直接了,從上而下設計就是了。主要有:

  1、定義和實(shí)現提供給原生應用程序的基礎API和/或虛擬機。

  2、在應用程序基礎API、標準C/C++函數庫和相關(guān)組件(通常都是開(kāi)源軟件)的基礎上構建操作系統的運行環(huán)境和框架。主要涉及系統服務(wù)、模塊之間的通訊機制,包括圖形界面、瀏覽器引擎、OpenGL ES支持接口等等。

  3、同時(shí)選擇操作系統內核,通常也就是Linux,要與眾不同,用BSD也行。

  4、搞定集成開(kāi)發(fā)環(huán)境和模擬器,讓開(kāi)發(fā)者可以在PC機上為你的操作系統開(kāi)發(fā)應用程序。

  5、讓你的操作系統運行在真實(shí)硬件上,為開(kāi)發(fā)者提供應用樣例和文檔。

  6、持續迭代,讓你的“自主”操作系統不停往前發(fā)展。

  上面的第一點(diǎn)和第二點(diǎn),是“自主”操作系統有別于其他操作系統,且支撐你可以和其他人競爭的關(guān)鍵點(diǎn)。往下的東西都不是構成“自主”操作系統真正競爭力的東西。

  這么看來(lái),其實(shí)也挺簡(jiǎn)單的。不是嗎?貌似有錢(qián)、有個(gè)把技術(shù)上的明白人就能做到。技術(shù)上沒(méi)問(wèn)題了,市場(chǎng)、法律等方面的事情,請專(zhuān)業(yè)人員幫忙,中國這類(lèi)人才還是蠻多的,缺的,其實(shí)還是技術(shù)人員以及懂系統工程和軟件開(kāi)發(fā)的管理人員。



關(guān)鍵詞: Android Google OS

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>