新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 專題 > Android,開(kāi)源還是封閉?

Android,開(kāi)源還是封閉?

作者:阮一峰 時(shí)間:2010-11-04 來(lái)源:阮一峰博客 收藏

  滿大街都在談?wù)?a class="contentlabel" href="http://m.butianyuan.cn/news/listbylabel/label/Android">Android。

本文引用地址:http://m.butianyuan.cn/article/114194.htm

  它是當(dāng)紅炸子雞。許多人覺(jué)得,iPhone將受到它的強(qiáng)力挑戰(zhàn)。

  我也曾經(jīng)對(duì)它充滿了期待,但是后來(lái)的事態(tài)發(fā)展,令我改變了看法。前幾天,我就在網(wǎng)志上寫(xiě)了自己的擔(dān)憂:

  “首先,應(yīng)用程序只能用java語(yǔ)言開(kāi)發(fā),莫非所有的應(yīng)用程序都運(yùn)行在一個(gè)巨大的虛擬機(jī)上?(【更正】網(wǎng)友留言指出,2009年6月發(fā)布NDK工具包,支持C/C++語(yǔ)言編程,不過(guò)性能不如SKD工具包中的Java語(yǔ)言。 )

  其次,Google對(duì)Android采用了一種全面霸權(quán)式的管理,完全不是其他開(kāi)源軟件的開(kāi)發(fā)方式,一切都由Google說(shuō)了算,很多地方是黑箱,外界不得而知。”

  沒(méi)有想到,僅僅過(guò)了兩天,擔(dān)憂就變成了現(xiàn)實(shí)。Linux Kernel的維護(hù)者Greg Kroah-Hartman宣布,將Android 代碼從 Linux kernel 代碼庫(kù)中刪除。這意味著,Linux Kernel的開(kāi)發(fā)小組不認(rèn)可Android的貢獻(xiàn),兩者產(chǎn)生了沖突。

  消息公布以后,外界普遍覺(jué)得驚訝和可惜。好不容易,才有了一個(gè)這么受歡迎的開(kāi)源手機(jī)系統(tǒng),應(yīng)該齊心協(xié)力、共同開(kāi)發(fā)才對(duì),為什么要“窩里斗”呢?到底是什么矛盾,使得Linux Kernel小組剔除Android代碼呢?

  Greg Kroah-Hartman寫(xiě)了一篇詳細(xì)的文章,解釋這個(gè)決定。下面就來(lái)看看,他是怎么說(shuō)的,以及Android到底是一個(gè)什么樣的系統(tǒng)。

  在這之前,你最好知道Greg Kroah-Hartman是誰(shuí)。他是目前Linux Kernel的核心開(kāi)發(fā)人員,負(fù)責(zé)stable軟件包的發(fā)布。就是說(shuō),每一個(gè)新版本的Linux Kernel,都是經(jīng)過(guò)他的手流出來(lái)的。此外,他還負(fù)責(zé)硬件驅(qū)動(dòng)的部署。而他的手機(jī)就是HTC G1,每天都在使用。所以,他是絕對(duì)有資格談?wù)撨@個(gè)問(wèn)題的,他的看法代表了Linux社區(qū)對(duì)Android的看法。

  首先,他指出Android和其他的Linux發(fā)行版不一樣:

  “Google has taken the Linux kernel, and nothing else from a "traditional" Linux system.

  Google只用了kernel,別的東西都沒(méi)用。”

  這就是說(shuō),與Ubuntu、Debian、Redhat這樣的傳統(tǒng)Linux發(fā)行版相比,只有系統(tǒng)的底層結(jié)構(gòu)是一樣的,其他東西在Android里都不一樣,尤其是程序員的編程接口是完全不同的。因此,Android應(yīng)用程序都必須重新寫(xiě)過(guò),現(xiàn)存的Linux程序無(wú)法移植上去。所以,從嚴(yán)格意義上說(shuō),Android是一種全新的系統(tǒng),它與Linux的距離,比Mac OS與Linux的距離還要遠(yuǎn)。

  

 

linux相關(guān)文章:linux教程


c++相關(guān)文章:c++教程



上一頁(yè) 1 2 3 下一頁(yè)

關(guān)鍵詞: google Android

評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉