自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

解析Android應(yīng)用程序構(gòu)成原理

移動開發(fā) Android
曾經(jīng)的我對Android應(yīng)用程序充滿了強(qiáng)烈的期待和喜歡,但是隨著接觸的增多,令我改變了看法,下面就說一下我的看法。

Android應(yīng)用程序是由java語言開發(fā)的也只能用java語言開發(fā),Google對Android采用了一種全面霸權(quán)式的管理,完全不是其他開源軟件的開發(fā)方式,一切都由Google說了算,很多地方是壟斷形式的。

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

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

Greg Kroah-Hartman寫了一篇詳細(xì)的文章,解釋這個決定。下面就來看看,他是怎么說的,以及Android到底是一個什么樣的系統(tǒng)。在這之前,你***知道Greg Kroah-Hartman是誰。他是目前Linux Kernel的核心開發(fā)人員,負(fù)責(zé)stable軟件包的發(fā)布。

就是說,每一個新版本的Linux Kernel,都是經(jīng)過他的手流出來的。此外,他還負(fù)責(zé)硬件驅(qū)動的部署。而他的手機(jī)就是HTC G1,每天都在使用。所以,他是絕對有資格談?wù)撨@個問題的,他的看法代表了Linux社區(qū)對Android的看法。首先,他指出Android和其他的Linux發(fā)行版不一樣:

[[8939]]

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

它解決了長期令手機(jī)制造商頭痛不已的問題:業(yè)界缺乏一個開源的Java虛擬機(jī),以及統(tǒng)一的應(yīng)用程序接口?,F(xiàn)在,程序員只要寫一次程序,就能在各種手機(jī)硬件平臺之上使用。”

這段話解釋了,為什么Android應(yīng)用程序,都必須用Java語言開發(fā)。因?yàn)椴贿@樣做的話,沒法讓程序做到硬件無關(guān)。且慢,這真的是理由嗎?傳統(tǒng)的Linux系統(tǒng),也并不依賴特定的硬件啊!只要把源代碼根據(jù)不同的平臺,分別編譯一下,同一個程序不也照樣可以在不同的硬件架構(gòu)、不同的Linux發(fā)行版中使用嗎?

這下問題來了:如果你是硬件廠商,希望你的硬件能在 Linux kernel 下運(yùn)作,那么就必須要有驅(qū)動程序。如果驅(qū)動程序的程序代碼公開,等于硬件規(guī)格也公開的差不多了。許多廠商不愿意這么做,所以就提供編好的驅(qū)動程序,但不提供原始碼。

Android 的重點(diǎn)就是商業(yè)應(yīng)用,Google采用了一些手法來繞過這問題。他們把驅(qū)動程序移到 "userspace",也就是說,把驅(qū)動程序變成在 Linux kernel 上頭跑,而不是一起跑的東西,這樣就可以避過GPL。然后,在 kernel 這邊開個小門,讓本來不能直接控制到硬件的 "userspace" 程序也可以碰得到,這樣只要把"開個小門"的程序代碼公布就行啦。”

【編輯推薦】

  1. 新一代的Android手機(jī)介紹 
  2. 深度剖析Android SDK版本介紹 
  3. 谷歌Android手機(jī)能否站穩(wěn)中國 
  4. PythonAndroid深度剖析Android應(yīng)用程序的四種構(gòu) 造塊 
  5. 探秘與眾不同的Android系統(tǒng)? 
責(zé)任編輯:chenqingxiang 來源: 和訊博客
相關(guān)推薦

2010-02-04 10:17:38

Android應(yīng)用程序

2010-01-25 17:14:44

Android應(yīng)用程序

2010-02-06 15:26:11

Android應(yīng)用程序

2010-02-07 10:21:27

Android應(yīng)用程序

2022-12-25 18:03:13

Debug原理軟件

2011-06-09 09:12:12

QT symbian

2011-09-01 10:01:35

PhoneGap應(yīng)用程序GoodDay

2009-12-21 15:48:29

WCF應(yīng)用程序

2011-08-12 14:54:45

iPhone委托

2010-01-25 13:29:53

Android本地應(yīng)用

2011-11-03 09:41:35

Android簽名安全性

2011-08-17 16:12:20

iPhone應(yīng)用程序

2017-03-02 11:10:39

AndroidMVVM應(yīng)用程序

2010-02-07 10:25:11

Android

2009-06-10 11:47:32

Android應(yīng)用程序模塊

2010-02-05 18:21:24

Android應(yīng)用程序

2011-05-27 10:13:39

Android 簽名

2011-05-10 13:56:27

Android應(yīng)用程序Android MarAndroid

2018-10-25 15:13:23

APP脫殼工具

2011-08-09 17:36:34

Xcode 4App
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號