安卓設(shè)備基礎(chǔ)架構(gòu)

Android是由Android Inc開(kāi)發(fā)的基于Linux平臺(tái)的操作系統(tǒng) ,如圖為Android系統(tǒng)架構(gòu):


Linux 內(nèi)核

最底層由Linux內(nèi)核構(gòu)成轮纫,Android系統(tǒng)部分以結(jié)構(gòu)微調(diào)后的Linux 2.6內(nèi)核版本為基礎(chǔ)趁仙,由相機(jī)洪添,聲卡,wifi雀费,鍵盤等多種驅(qū)動(dòng)程序構(gòu)成干奢,android的安全,內(nèi)存管理盏袄,進(jìn)程管理忿峻,網(wǎng)路協(xié)議棧,驅(qū)動(dòng)模型等主要系統(tǒng)服務(wù)都依賴于Linux辕羽,內(nèi)核會(huì)在硬件和軟件棧的剩余部分起到抽象作用逛尚。

庫(kù)

Linux內(nèi)核的上層是Android的本地庫(kù),由C刁愿、C++編寫黑低,它只是告知設(shè)備多種數(shù)據(jù)處理方式的命令集合。

應(yīng)用程序與框架

庫(kù)之上是應(yīng)用程序框架酌毡,包含資源分配、語(yǔ)音通話蕾管、管理智能手機(jī)基本功能的程序枷踏。

設(shè)備文件目錄結(jié)構(gòu)

文件目錄 說(shuō)明
/ 只有讀取權(quán)限的根(root)文件系統(tǒng)目錄。瀏覽啟動(dòng)相關(guān)設(shè)置文件掰曾,包含初始進(jìn)程信息
/system 只有Android系統(tǒng)讀取權(quán)限的主目錄旭蠕,包括具備HAL和框架的庫(kù)文件、守護(hù)進(jìn)程相關(guān)可執(zhí)行文件旷坦、字體掏熬、媒體、系統(tǒng)應(yīng)用程序
/data 有讀寫權(quán)限秒梅,該文件系統(tǒng)目錄包括可設(shè)置的用戶應(yīng)用程序及狀態(tài)信息
/cache 有讀寫權(quán)限旗芬,包括瀏覽器緩存和用戶臨時(shí)狀態(tài)信息
/system/應(yīng)用名.apk 保存系統(tǒng)應(yīng)用程序,優(yōu)化后的dex代碼保存到/system/app/應(yīng)用名.odex捆蜀,以安全模式啟動(dòng)時(shí)疮丛,運(yùn)行可操作的系統(tǒng)應(yīng)用
/data/app/應(yīng)用名.apk 保存已注冊(cè)的用戶應(yīng)用程序幔嫂,優(yōu)化后的dex代碼保存到/data/dalvik-cache/應(yīng)用名.odex
/data/app/<app-package-name>-1.apk 保存用戶下載的應(yīng)用程序
/mnt/secure/asec/<app-package-name>-1.asec 保存移動(dòng)到SD卡的應(yīng)用程序

這些目錄中,能獲取最多應(yīng)用程序信息的是/data/data/應(yīng)用名誊薄。雖然每個(gè)應(yīng)用程序都不同履恩,但是保存數(shù)據(jù)和設(shè)置文件比較多的應(yīng)用程序會(huì)有如下目錄結(jié)構(gòu)。診斷應(yīng)用程序漏洞和對(duì)移動(dòng)設(shè)備取證時(shí)呢蔫,需要仔細(xì)查看如下目錄切心,因?yàn)橛绊憫?yīng)用程序服務(wù)的重要信息全部保存于此。比如服務(wù)認(rèn)證秘鑰片吊、內(nèi)容數(shù)據(jù)绽昏、應(yīng)用程序設(shè)置文件等。

目錄 說(shuō)明
files 保存管理員內(nèi)部使用的文件(包括so文件定鸟,data文件而涉、ini文件等)
lib 保存應(yīng)用程序請(qǐng)求的庫(kù)文件(存在so文件)
databases 包含設(shè)置文件、內(nèi)容文件等的查詢 信息的 SQLite數(shù)據(jù)庫(kù)文件(存在db文件)
cache 有讀寫權(quán)限联予,包括瀏覽器緩存和用戶臨時(shí)狀態(tài)信息
shared_prefs 保存為XML文件啼县,是應(yīng)用程序共享的設(shè)置文件

其中shared_prefs目錄內(nèi)的preferences.xml文件包含應(yīng)用程序的設(shè)置文件,因?yàn)榘ㄉ?jí)沸久,版本信息等內(nèi)容季眷,所以惡意訪問(wèn)(或診斷漏洞時(shí)),此處會(huì)包含API密鑰的盜用卷胯,認(rèn)證密鑰值等信息子刮。
db文件在測(cè)試時(shí),我們一般查詢一下數(shù)據(jù)庫(kù)信息窑睁,也會(huì)修改一些數(shù)據(jù)庫(kù)信息挺峡,以修改價(jià)格或者繞過(guò)認(rèn)證。測(cè)試時(shí)不僅要測(cè)試移動(dòng)設(shè)備數(shù)據(jù)庫(kù)担钮,也要檢查瀏覽器橱赠,應(yīng)用程序數(shù)據(jù)庫(kù)。

Android重要組件

組件 說(shuō)明
Activity 向用戶顯示的設(shè)備界面箫津,通過(guò)點(diǎn)擊菜單或按鈕等特定動(dòng)作轉(zhuǎn)換的畫面都可以成為Activity
服務(wù) 不顯示到屏幕狭姨,在后臺(tái)運(yùn)行,比如網(wǎng)絡(luò)傳輸苏遥,讀取文件等操作饼拍,Activity顯示畫面時(shí),服務(wù)通常一同運(yùn)行
內(nèi)容提供商 應(yīng)用程序共享的空間田炭,即使數(shù)據(jù)保存到文件系統(tǒng)或其他地方师抄,應(yīng)用程序也能通過(guò)內(nèi)容提供商訪問(wèn)數(shù)據(jù)
廣播接收器 實(shí)時(shí)查看系統(tǒng)狀態(tài)(電池狀態(tài),郵件提醒等)教硫,發(fā)生事件時(shí)相應(yīng)司澎,要利用設(shè)備中發(fā)生的Notification等向用戶發(fā)出警報(bào)

當(dāng)拿到apk文件后欺缘,我們要仔細(xì)查看AndroidMainfest.xml文件和classes.dex文件

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市挤安,隨后出現(xiàn)的幾起案子谚殊,更是在濱河造成了極大的恐慌,老刑警劉巖蛤铜,帶你破解...
    沈念sama閱讀 211,290評(píng)論 6 491
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件嫩絮,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡围肥,警方通過(guò)查閱死者的電腦和手機(jī)剿干,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,107評(píng)論 2 385
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)穆刻,“玉大人置尔,你說(shuō)我怎么就攤上這事∏馕埃” “怎么了榜轿?”我有些...
    開(kāi)封第一講書人閱讀 156,872評(píng)論 0 347
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)朵锣。 經(jīng)常有香客問(wèn)我谬盐,道長(zhǎng),這世上最難降的妖魔是什么诚些? 我笑而不...
    開(kāi)封第一講書人閱讀 56,415評(píng)論 1 283
  • 正文 為了忘掉前任飞傀,我火速辦了婚禮,結(jié)果婚禮上诬烹,老公的妹妹穿的比我還像新娘砸烦。我一直安慰自己,他們只是感情好绞吁,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,453評(píng)論 6 385
  • 文/花漫 我一把揭開(kāi)白布外冀。 她就那樣靜靜地躺著,像睡著了一般掀泳。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上西轩,一...
    開(kāi)封第一講書人閱讀 49,784評(píng)論 1 290
  • 那天员舵,我揣著相機(jī)與錄音,去河邊找鬼藕畔。 笑死马僻,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的注服。 我是一名探鬼主播韭邓,決...
    沈念sama閱讀 38,927評(píng)論 3 406
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼措近,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了女淑?” 一聲冷哼從身側(cè)響起瞭郑,我...
    開(kāi)封第一講書人閱讀 37,691評(píng)論 0 266
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎鸭你,沒(méi)想到半個(gè)月后屈张,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,137評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡袱巨,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,472評(píng)論 2 326
  • 正文 我和宋清朗相戀三年阁谆,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片愉老。...
    茶點(diǎn)故事閱讀 38,622評(píng)論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡场绿,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出嫉入,到底是詐尸還是另有隱情焰盗,我是刑警寧澤,帶...
    沈念sama閱讀 34,289評(píng)論 4 329
  • 正文 年R本政府宣布劝贸,位于F島的核電站姨谷,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏映九。R本人自食惡果不足惜梦湘,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,887評(píng)論 3 312
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望件甥。 院中可真熱鬧捌议,春花似錦、人聲如沸引有。這莊子的主人今日做“春日...
    開(kāi)封第一講書人閱讀 30,741評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)譬正。三九已至宫补,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間曾我,已是汗流浹背粉怕。 一陣腳步聲響...
    開(kāi)封第一講書人閱讀 31,977評(píng)論 1 265
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留抒巢,地道東北人贫贝。 一個(gè)月前我還...
    沈念sama閱讀 46,316評(píng)論 2 360
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親稚晚。 傳聞我的和親對(duì)象是個(gè)殘疾皇子崇堵,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,490評(píng)論 2 348

推薦閱讀更多精彩內(nèi)容

  • 關(guān)于Mongodb的全面總結(jié) MongoDB的內(nèi)部構(gòu)造《MongoDB The Definitive Guide》...
    中v中閱讀 31,905評(píng)論 2 89
  • feisky云計(jì)算、虛擬化與Linux技術(shù)筆記posts - 1014, comments - 298, trac...
    不排版閱讀 3,827評(píng)論 0 5
  • 一客燕、Python簡(jiǎn)介和環(huán)境搭建以及pip的安裝 4課時(shí)實(shí)驗(yàn)課主要內(nèi)容 【Python簡(jiǎn)介】: Python 是一個(gè)...
    _小老虎_閱讀 5,723評(píng)論 0 10
  • 姓名:吳兆陽(yáng) 學(xué)號(hào):14020199009 轉(zhuǎn)自韋東山 嵌牛導(dǎo)讀:對(duì)嵌入式初學(xué)者鸳劳,沒(méi)有足夠的視野選擇一個(gè)合適投入方...
    吳兆陽(yáng)閱讀 2,380評(píng)論 0 4
  • 1、Androiddvm的進(jìn)程和Linux的進(jìn)程, 應(yīng)用程序的進(jìn)程是否為同一個(gè)概念 DVM指dalivk的虛擬機(jī)幸逆。...
    ifeng_max閱讀 931評(píng)論 0 10