作者kikiow (隨浪逐流)
看板Soft_Job
標題Re: [請益] 手機程式開發與兼顧硬體能力
時間Sun Sep 25 21:49:36 2011
請問android OS是從linux裡面去再做修改的嗎?
--> 是從monolithic kernel 發展出來,linux也是用相同kernel
IOS是用micro kernel
所以我的問題是: 要如何了解它的底層? (有沒有具體一點的說法)
那所謂的底層是多底層?
--> 一般講到的底層,是指可以直接控制到硬體部分,例如去拉GPIO.或者接收一些
Data (0101 ..)那類
以android來說,基本上可以分四層作處理
1.Linux Device Driver
2.HAL
3.external Libraies and Runtime
4.Framework & Applications
而Android要寫得好,從HAL就要開始用一些SW design pattern去開始實作
而且要瞭解每個一個應用程式的目的,來讓系統更順暢
: : 而且系統越來越複雜,中間這層已經不是寫firmware和driver的人可以
: : 處理的,對純軟來說非常有利,舉個實際的例子,今天要在Android上
: : 實現外接TV輸出,台灣的硬體廠RD大概只能在driver這層動動手腳,
: : 其他的部分多半無能為力,但是抓CyanogenMod的原始碼來看,中間要
: : 動到EGL, gralloc這些亂七八糟的東西,其實是非常複雜的一個問題,
: : 這個不是純軟來看多半直接放棄不改。
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 219.85.159.76
推 felixlin:佛心~ 09/25 22:35
推 wadd:清楚明暸 09/29 21:46