Linux/Android系統知識啓動篇

我人生中第一部手機是高三時買的的Nokia 7160,楓葉外形,裝載Symbian系統。當時還是功能機的天下,其他同學若想用手機上網,必須先退出手機QQ才能打開瀏覽器。有位同學買的聯想功能機居然硬是沒有網頁瀏覽功能,買完直呼後悔。而使用我大諾記,QQ直接掛在後臺,多任務操作毫不費力,羨煞一幫朋友~

不久HTC出了Android機皇----翹下巴HTC G系列,可惜HTC公司起初並不重視大陸市場,只有個名不見經傳的多普達子公司,對於想體驗Android系統的大陸弄潮人來說,出路只有買水貨的HTC(不保修)或貴的要死的多普達兩條路可選,真替HTC公司的市場策略惋惜啊。由於這些原因,廣大大陸消費者的意識中壓根就沒有傳入Android系統這個概念,認爲市面上除了聲音巨大無比的鍵盤/觸屏兩用山寨機這類通用功能機外,就屬Nokia 的Symbian智能系統獨領風騷了(當時黑莓也沒傳入中國市場)。

或許真的是Nokia命太好,就這樣繼續在大陸市場如魚得水,開心的不要不要的~   直到蘋果的iPhone和三星的Android手機開始發力,廣大消費者纔開始意識到,咦!原來除了Nokia的塞班系統外,世界上居然還有如此好看又好用的Android系統和蘋果手機!!! HTC此時開始享受到福利,以前的機皇被陸續翻出,受惠於HTC是最早進入Android系統領域的手機公司之一,積累了巨大的技術優勢,憑藉這些優勢使之得以在這輪風口上很容易的佔領了市場

後來手機互聯網開始興起,智能手機成爲廣大廠商爭相掠奪的戰略要地,微軟開始發力,推出WindowsPhone系統;三星後來居上Android手機銷量漸漸超越HTC和Motorola,Google開始加力推廣Android系統,親兒子Nexus橫空出世,引領oem廠商儘快加入Android大軍;iPhone自家系統繼續玩兒生態,自己獨佔半邊天;黑莓開始進入大陸視野視野,靠獨特的全鍵盤和主打安全保密的核心賣點,成爲部分弄潮兒的新寵;反而唯獨諾基亞沉睡在自己的帝國美夢中,試圖繼續使用古老塞班系統抗衡世界的新潮流,直到逐漸顯現出力不從心之態,纔開始嘗試通過Meego和WindowPhone系統來做一次垂死掙扎,不過爲時已晚,帝國的頹勢已現,難以翻身了~

看如今智能手機領域的大格局已經逐漸明朗,Android/iPhone兩家獨大,各領風騷。雖有phone版的ubuntu系統和webos之類的一些系統陸續出現,不過市場格局已定,使用者寥寥無幾。我們接下來要學習的,就是二者之一的Android系統咯!


想必大家都知道,Android系統已經火了好幾年,Android App的開發市場也已較爲成熟,各種資源也已經遍地開花了。筆者的工作是bsp和project開發,所以接下的知識重點並不會是app的編寫,而將圍繞以下幾個筆者工作中時常涉及的主題逐項展開:

1:repo git相關基礎知識

2:linux入門(常用命令的使用和driver編寫)

3:qcom平臺開機流程解密

4:Android init相關的重要知識解密

5:權限相關知識

6:Android系統中重要的命令(am input等)

7:panel/touch/fingerprint等基礎component bring up教學

8:從input系統探祕Android框架

9:cpu體系結構入門(主要以x86位例)及系統調用(system call)的實現過程

10:開始debug系統問題(死鎖、watchdog bark、memory不穩)

11:開始我們的performance優化(跑分、suspend/resume速度、app launch速度)

12:memory優化(lowmemorykiller和內存泄漏優化)

13:開始解決Monkey 和CTS/GTS問題

14:逆向apk

15:開始使用gdb ramdump t32來解決我們的實際問題

16:文件系統和partition table探祕

17:解密工廠生產流程

18:彩蛋:細數開發工作中那些遇到的坑


綜合看來,整個tutorial涉及知識點較多,且其中很大一部分知識點需要一定的基礎知識支撐,所以將這些相互依賴的知識點攤開後,最終的章節應該會多出不少~

由於本人水平有限,部分知識點難免會有侷限性,望與大家共同學習探討。

            ·平時工作較爲繁忙,真心祝願這個龐大的工程最後能完工,爲大家少走彎路,爲自己不負韶華·



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章