Android 到底是個什麼東西?

來源:互聯網
上載者:User

google了張圖,android原來是個大雜包啊!

打眼一看,分了5大塊啊! 從應用程式到底層作業系統核心,真夠雜的!!!

仔細一看,第一層直接撇了! 拿個安卓手機開機後就能找到。

如此一來:

這下看著省心一點了! 

再看最下面Linux Kernel, 這麼高深的東西,看不了啊! 再說了作業系統應該都差不多,一堆的驅動包! 幹掉!

這回基本上都是乾貨了! 應該是需要研究的了!

再繼續看,中左下角那一堆,外觀管理器,多媒體架構,SQLite(竟然整合了資料庫?),OpenGL ES(老聽搞遊戲的人說但是不瞭解!),FreeType位元影像,向量字型渲染,WebKit(據說很牛的瀏覽器核心),SGL(碰到GL 就範暈),SSL(我猜是安全性通訊協定之類的)至於最不起眼的那個libc,據說C/C++大牛可是對他們情有獨鐘,能用他們搞搞Linux核心,動動驅動啥的,可對我來說天方夜譚啊!!!

據說這些都是用C/C++整的類庫API,向來玩不了這兩種語言,敬而遠之吧!

所以,我再砍!!!

 

雖然圖撕的難看一點,不過總算把沒用的給去掉了,可以靜心研究這張殘圖了,希望能從這張圖找到通往寶藏的神秘之路!!!!

 

只有兩大塊了,應用程式架構+應用程式運行環境! 

 

現在從頭想想,原來Android就是一個雜包啊,裡面有作業系統,作業系統上附帶了一些移動終端常用的應用軟體,如果你是高手,估計你可以不用這些軟體,自己寫了替換他們。

 

當然和java一樣,他們最佳化了一個虛擬機器,Java的JVM瘦身了,因為移動終端沒有電腦個大啊,主要是最佳化了記憶體使用量到最小,就變成了Dalvik 虛擬機器,不知道為什麼叫這個名字? 這個小虛擬機器可以執行個體化? 可以同時運行多個?

 

JAVA 虛擬機器JVM,只是聽說過,沒用過,也不知道啥樣? JVM有可執行檔嗎?

Dalvik說它有,而且有個標誌性的尾碼.pex, 說他能運行java寫的類,但是需要通過java的編譯器編譯,用dx轉換。 不明白!

 

不管怎樣,它還是不能脫離Linux核心的支援,比如底層的記憶體管理,線程管理之類的。

 

它是做什麼的呢?

它的上面還有個core Libraries, 跟應用程式架構裡面的組件一個顏色,說明都是Java語言開發的,當然,人家說了那個Dalvik是個可執行檔檔案,是什麼語言,不關我的事了。

 

每個應用程式都有一個自己的進程和相應的Dalvik VM執行個體為之服務!!!!--- 這話對嗎?

 

Dalvik可以隨便執行個體化?  得進一步研究!

目前先理解為一個Android的應用程式會有一個單獨的進程和一個專門為他建立的Dalvik VM執行個體為之服務。

 

Core libraries 核心類庫,在android 運行時環境中,介紹說它就是剛才撕掉的Libraries 在android 運行環境中被java封裝的介面類庫。

 

再看應用程式架構裡面,我靠7個當官的啊!!!還有一個服務商,View成了獨立系統了!!!

這7個Manager們,不用說都是搞管理的! 供應商Provider,這是搞服務的!  View獨立了嗎? 自成體系了!

 

據說這是Android為了讓我們developer開發application時有個標準,特意封裝的組件單位。 

我們developer編寫application難道都靠這些官員和供應商嗎,對了還有個自稱系統的傢伙!!!

看看曾經坐在他們上面的Contacts ,Phone,Browser ... 都是application, 估計應該是這樣了!

 

他們都是藍色的,應該都是java寫的, 據說android已經基本覆蓋了java的所有核心類庫,希望不是吹的。

 

啊呀,不看了,太晚了,睡覺!

 

 

 

 

 

 

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.