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

Android文件系統(tǒng)深入剖析

移動開發(fā) Android
Android文件系統(tǒng)具有什么樣的結(jié)構(gòu)?我們?nèi)绾尾拍軐⑦@一文件系統(tǒng)分離出來?又能以何種方式掛載文件系統(tǒng)呢?這些問題都會在文中找到具體的解決答案。

用過Linux的朋友可能對開源的系統(tǒng)有一個非常好的印象。那么在日益成熟的手機(jī)操作系統(tǒng)中,有沒有一款像Linux一樣的開源系統(tǒng)呢?谷歌公司就退出了一款基于Linux平臺的Android 操作系統(tǒng)來滿足人們的需求。在這里大家可以先來了解一下Android文件系統(tǒng)的相關(guān)內(nèi)容。

1、Android文件系統(tǒng)的結(jié)構(gòu)

Android源碼編譯后得到system.img,ramdisk.img,userdata.img映像文件。其中, ramdisk.img是emulator的文件系統(tǒng),system.img包括了主要的包、庫等文件,userdata.img包括了一些用戶數(shù)據(jù),emulator加載這3個映像文件后,會把 system和 userdata分別加載到 ramdisk文件系統(tǒng)中的system和 userdata目錄下。因此,我們可以把ramdisk.img里的所有文件復(fù)制出來,system.img和userdata.img分別解壓到 ramdisk文件系統(tǒng)中的system和 userdata目錄下。

2、分離Android文件系統(tǒng)出來

system.img,ramdisk.img,userdata.img映像文件是采用cpio打包、gzip壓縮的,可以通過file命令驗證:

  1. file ramdisk.img 

輸出:

  1. ramdisk.img: gzip compressed data, from Unix, 
    last modified: Wed Mar 18 17:16:10 2009 

Android源碼編譯后除了生成system.img,userdata.img之外還生成system和 userdata文件夾,因此不需要解壓它們。Android源碼編譯后還生成root文件夾,其實root下的文件與 ramdisk.img 里的文件是一樣的,不過這里還是介紹怎樣把 ramdisk.img解壓出來:

將ramdisk.img復(fù)制一份到任何其他目錄下,將其名稱改為ramdisk.img.gz,并使用命令

  1. gunzip ramdisk.img.gz 

然后新建一個文件夾,叫ramdisk吧,進(jìn)入,輸入命令

  1. cpio -i -F ../ramdisk.img 

這下,你就能看見并操作ramdisk里面的內(nèi)容了。#t#

然后把Android源碼編譯后生成的system和 userdata里的文件復(fù)制到 ramdisk/system和 ramdisk/userdata下。這樣就得到一個文件系統(tǒng)了。

3、使用網(wǎng)絡(luò)文件系統(tǒng)方式掛載Android文件系統(tǒng)

因此,我們需要建立/nfsroot目錄,再建立/nfsroot/Androidfs目錄,把剛才的Android文件系統(tǒng)改名為Androidfs,并鏈接到/nfsroot/Androidfs

4、Android文件系統(tǒng)內(nèi)核引導(dǎo)文件系統(tǒng)

Android內(nèi)核掛載/nfsroot/Androidfs之后,根據(jù)init.rc,init.goldfish.rc來初始化并裝載系統(tǒng)庫、程序等直到開機(jī)完成。init.rc腳本包括了文件系統(tǒng)初始化、裝載的許多過程。init.rc的工作主要是:

1)設(shè)置一些環(huán)境變量

2)創(chuàng)建system、sdcard、data、cache等目錄

3)把一些文件系統(tǒng)mount到一些目錄去,如,mount tmpfs tmpfs /sqlite_stmt_journals

4)設(shè)置一些文件的用戶群組、權(quán)限

5)設(shè)置一些線程參數(shù)

6)設(shè)置TCP緩存大小

責(zé)任編輯:曹凱 來源: CSDN
相關(guān)推薦

2011-08-01 16:42:24

ibmdwNFS文件系統(tǒng)

2021-05-31 07:50:59

Linux文件系統(tǒng)

2013-10-09 11:07:31

日志文件系統(tǒng)

2009-12-22 13:15:59

Linux ueven

2010-08-11 15:47:04

Google GFS文

2012-05-10 14:04:07

分布式文件系統(tǒng)架構(gòu)

2010-07-16 16:09:05

Perl文件

2010-06-07 14:02:13

Hadoop的分布式文

2010-03-02 13:27:17

LinuxXFS文件系

2009-09-28 14:54:33

Hibernate映射

2010-01-26 17:53:30

Android代碼結(jié)構(gòu)

2009-12-22 09:43:13

Linux文件系統(tǒng)組織

2020-07-22 14:53:06

Linux系統(tǒng)虛擬文件

2009-10-27 12:47:29

linux Ext3文

2018-09-12 15:48:35

ext4Linux文件系統(tǒng)

2010-01-26 15:08:11

Android根文件系

2011-01-13 14:10:30

Linux文件系統(tǒng)

2020-10-12 17:40:44

lsofLinux虛擬文件

2022-04-21 14:09:17

lsofLinux虛擬文件

2018-08-24 10:10:25

Linux文件系統(tǒng)技術(shù)
點贊
收藏

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