1、什么是fastboot
“只有客戶發(fā)展了,才有我們的生存與發(fā)展!”這是創(chuàng)新互聯(lián)的服務(wù)宗旨!把網(wǎng)站當(dāng)作互聯(lián)網(wǎng)產(chǎn)品,產(chǎn)品思維更注重全局思維、需求分析和迭代思維,在網(wǎng)站建設(shè)中就是為了建設(shè)一個(gè)不僅審美在線,而且實(shí)用性極高的網(wǎng)站。創(chuàng)新互聯(lián)對(duì)網(wǎng)站設(shè)計(jì)制作、做網(wǎng)站、網(wǎng)站制作、網(wǎng)站開(kāi)發(fā)、網(wǎng)頁(yè)設(shè)計(jì)、網(wǎng)站優(yōu)化、網(wǎng)絡(luò)推廣、探索永無(wú)止境。(1)fastboot是android使用的一種刷機(jī)方法。
因?yàn)锳ndroid、的底層是Linux
(2)fastboot使用usb作為物理傳輸
(3)fastboot是uboot中的一個(gè)命令
在uboot下輸入fastboot命令,就可以讓uboot進(jìn)入fastboot模式,刷機(jī)就是在fastboot模式下進(jìn)行刷機(jī)。
(4)fastboot需要主機(jī)端的fastboot軟件相配合
(5)fastboot在開(kāi)發(fā)板和主機(jī)之間定義了一套協(xié)議
2、當(dāng)我們?cè)趗boot中輸入fastboot時(shí),有時(shí)會(huì)出現(xiàn)不正常的現(xiàn)象,我們?cè)趗boot下輸入 fdisk -c 0 ,完了之后再輸入fastboot就好使了。因?yàn)槲覀僑D/MMC設(shè)備第0扇區(qū)是空閑的,0扇區(qū)一般放的都是我們SD/MMC設(shè)備的分區(qū)信息的,所以這個(gè)扇區(qū)為空閑的,沒(méi)有用的話,fastboot命令執(zhí)行時(shí),就讀取不到這個(gè)設(shè)備的分區(qū)信息,所以我們?cè)趗boot下輸入fdisk -c 0就是給我們SD/MMC的0扇區(qū)中,弄上分區(qū)信息的。
這時(shí)就進(jìn)入了fastboot模式,這時(shí)的uboot就相當(dāng)于了一個(gè)USB設(shè)備,和我們主機(jī)進(jìn)行通信了,在主機(jī)中的fastboot軟件中,文件就可以download到開(kāi)發(fā)板中的inand或者其他。
3、uboot的fastboot命令將開(kāi)發(fā)板偽裝了一個(gè)usb從設(shè)備(主機(jī)的usb是主設(shè)備,從設(shè)備是被主設(shè)備識(shí)別的),開(kāi)發(fā)板本身不是usb設(shè)備,所以當(dāng)我們的開(kāi)發(fā)板直接通過(guò)usb線和主機(jī)的usb接口連接時(shí),主機(jī)是識(shí)別不到一個(gè)usb設(shè)備的。當(dāng)我們?cè)趗boot下輸入fastboot命令時(shí),主機(jī)就會(huì)識(shí)別到一個(gè)usb設(shè)備,并且我們沒(méi)有驅(qū)動(dòng)的話,還告訴我們裝驅(qū)動(dòng)。所以u(píng)boot的fastboot命令將開(kāi)發(fā)板偽裝成了一個(gè)usb從設(shè)備。所以主機(jī)中就會(huì)識(shí)別到一個(gè)android手機(jī)設(shè)備,因?yàn)楫?dāng)初谷歌在做android的時(shí)候發(fā)明的fastboot,所以當(dāng)時(shí)主要是用來(lái)做手機(jī)的,所以會(huì)把這個(gè)fastboot模式下的設(shè)備當(dāng)成一個(gè)手機(jī)設(shè)備
4、uboot中只要輸入fastboot命令,進(jìn)入到fastboot模式就可以了,認(rèn)為協(xié)議都是規(guī)定好的,我們只需要在主機(jī)端運(yùn)行fastboot這個(gè)軟件,完了就可以和我們的開(kāi)發(fā)板進(jìn)行通信了,主機(jī)可以通過(guò)fastboot命令與帶的參數(shù)和開(kāi)發(fā)板進(jìn)行通信。比如fastboot flash kernel xxxx 就是fastboot命令攜帶的一些參數(shù)和開(kāi)發(fā)板通過(guò)usb線的傳輸進(jìn)行通信了,會(huì)將這個(gè)xxxkernel燒錄到開(kāi)發(fā)板的SD/MMC設(shè)備上的kernel分區(qū)中。
5.我們學(xué)習(xí)fastboot的思路就是,
在主機(jī)端的fastboot軟件,我們是不去做什么分析的
我們?cè)陂_(kāi)發(fā)板段去分析fastboot,看uboot是如何通過(guò)fastboot命令進(jìn)入到fastboot模式下的,是如何響應(yīng)主機(jī)通過(guò)usb線發(fā)送過(guò)來(lái)的命令的。
6、uboot中的fastboot代碼分析
(1)因?yàn)閒astboot是uboot的一個(gè)命令,所以在uboot的源碼中找的時(shí)候,肯定是通過(guò)do_fastboot這函數(shù)去找。
(2)當(dāng)我們用fastboot命令燒錄鏡像等文件時(shí),有時(shí)會(huì)出現(xiàn)燒錄錯(cuò)誤,說(shuō)文件太大了,那是因?yàn)槲覀儚闹鳈C(jī)端通過(guò)usb線將要燒錄到開(kāi)發(fā)板中的鏡像文件,先放到開(kāi)發(fā)板的內(nèi)存中去緩沖,uboot在從這個(gè)內(nèi)存的緩沖區(qū)去將文件燒錄到SD/MMC設(shè)備中,在uboot的關(guān)于fastboot的操作中,會(huì)將給fastboot設(shè)置一個(gè)緩沖區(qū),因?yàn)橄蛑鴮?xiě)download操作,fastboot會(huì)用到內(nèi)存的,在配置頭文件中有一個(gè)fastboot_transbuff_size類似的宏 ,這個(gè)宏就是來(lái)配置fastboot緩沖區(qū)的大小的。如果要燒錄的鏡像傳輸?shù)竭@個(gè)內(nèi)存區(qū)域后,如果鏡像太大了,就會(huì)出現(xiàn)p_w_picpath太大了的問(wèn)題。所以要改動(dòng)的話,要解決這個(gè)問(wèn)題的話。就可以將這個(gè)fastboot的緩沖區(qū)的大小加大即可
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。
當(dāng)前文章:S5PV210-uboot-fastboot原理-創(chuàng)新互聯(lián)
本文地址:http://aaarwkj.com/article24/iepce.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供靜態(tài)網(wǎng)站、微信小程序、App設(shè)計(jì)、Google、全網(wǎng)營(yíng)銷(xiāo)推廣、移動(dòng)網(wǎng)站建設(shè)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容