麻豆黑色丝袜jk制服福利网站-麻豆精品传媒视频观看-麻豆精品传媒一二三区在线视频-麻豆精选传媒4区2021-在线视频99-在线视频a

千鋒教育-做有情懷、有良心、有品質(zhì)的職業(yè)教育機構(gòu)

手機站
千鋒教育

千鋒學(xué)習(xí)站 | 隨時隨地免費學(xué)

千鋒教育

掃一掃進入千鋒手機站

領(lǐng)取全套視頻
千鋒教育

關(guān)注千鋒學(xué)習(xí)站小程序
隨時隨地免費學(xué)習(xí)課程

當(dāng)前位置:首頁  >  技術(shù)干貨  > Android按下開機鍵到啟動發(fā)生什么?

Android按下開機鍵到啟動發(fā)生什么?

來源:千鋒教育
發(fā)布人:xqq
時間: 2023-10-11 17:10:22 1697015422

一、Android按下開機鍵到啟動發(fā)生什么

Android系統(tǒng)雖然也是基于linux系統(tǒng)的,但是由于Android屬于嵌入式設(shè)備,并沒有像pc那樣的BIOS程序。

取而代之的是Bootloader?——系統(tǒng)啟動加載器。它類似于BIOS,在系統(tǒng)加載前,用以初始化硬件設(shè)備,建立內(nèi)存空間的映像圖,為最終調(diào)用系統(tǒng)內(nèi)核準(zhǔn)備好環(huán)境。

在Android里沒有硬盤,而是ROM?,它類似于硬盤存放操作系統(tǒng),用戶程序等。ROM跟硬盤一樣也會劃分為不同的區(qū)域,用于放置不同的程序,在Android中主要劃分為一下幾個分區(qū):

/boot:存放引導(dǎo)程序,包括內(nèi)核和內(nèi)存操作程序/system:相當(dāng)于電腦c盤,存放Android系統(tǒng)及系統(tǒng)應(yīng)用/recovery:恢復(fù)分區(qū),可以進入該分區(qū)進行系統(tǒng)恢復(fù)/data:用戶數(shù)據(jù)區(qū),包含了用戶的數(shù)據(jù):聯(lián)系人、短信、設(shè)置、用戶安裝的程序/cache:安卓系統(tǒng)緩存區(qū),保存系統(tǒng)最常訪問的數(shù)據(jù)和應(yīng)用程序/misc:包含一些雜項內(nèi)容,如系統(tǒng)設(shè)置和系統(tǒng)功能啟用禁用設(shè)置/sdcard:用戶自己的存儲區(qū),可以存放照片,音樂,視頻等文件

那么Bootloader是如何被加載的呢?我們可以想到,應(yīng)該跟pc一樣,當(dāng)開機加電的時候,cpu會從cpu制造廠商預(yù)設(shè)的地址上取指令,這個地址是各廠商約定俗稱的,類似于上面80×86架構(gòu)里的0xFFFF0地址,因此Android手機會將固態(tài)存儲設(shè)備ROM預(yù)先映射到該地址上,當(dāng)開機加電的時候,cpu就會從該地址執(zhí)行/boot分區(qū)下的Bootloader程序,載入linux內(nèi)核到RAM中。

當(dāng)linux內(nèi)核啟動后會初始化各種軟硬件環(huán)境,加載驅(qū)動程序,掛載根文件系統(tǒng),并開始執(zhí)行根文件系統(tǒng)的init程序,init程序是Android啟動過程中最重要的核心程序。

init進程是Android系統(tǒng)中用戶進程的鼻祖進程。init進程會啟動各種系統(tǒng)本地服務(wù),如:Media Server、Service Manager、bootanim(開機動畫)等。init進程會在解析init.rc文件后fork出Zygote,而Zygote是所有Java進程的父進程,我們的App都是由Zygote fork出來的。
Zygote進程主要包含:

加載ZygoteInit類,注冊Zygote Socket服務(wù)端套接字;加載虛擬機;預(yù)加載Android核心類預(yù)加載系統(tǒng)資源

隨后Zygote進程會fork出System Server進程,System Server進程負(fù)責(zé)啟動和管理整個framework,包括Activity Manager,PowerManager等服務(wù)。

當(dāng)System Server將系統(tǒng)服務(wù)啟動就緒后,就會通知ActivityManager啟動為數(shù)不多的Android程序Home即我們看到的桌面程序。

至此,從Android手機開機到看到桌面程序所有過程分析完了。

延伸閱讀:

二、基于Linux的pc啟動過程

我們都知道,所有的程序軟件包括操作系統(tǒng)都是運行在內(nèi)存中的,然而我們的操作系統(tǒng)一般是存放在硬盤上的,當(dāng)我們按下開機鍵的時候,此時內(nèi)存中什么程序也沒有,因此需要借助某種方式,將操作系統(tǒng)加載到內(nèi)存中,而完成這項任務(wù)的就是?BIOS?。

裝過系統(tǒng)的人一定知道BIOS這個東西,那么它究竟是什么呢?

BIOS:Basic Input/Output System(基本輸入輸出系統(tǒng)),在IBM PC兼容系統(tǒng)上,是一種業(yè)界標(biāo)準(zhǔn)的固件接口(來自維基百科)。有點難以理解,其實BIOS是我們電腦啟動時加載的名列前茅個程序,這個程序不是由Java語言編寫也不是由C語言編寫,一般是匯編程序。

BIOS程序固化在主板上的一塊芯片上,是連接計算機硬件與操作系統(tǒng)的橋梁,它保存著計算機最重要的基本輸入輸出的程序、開機后自檢程序和系統(tǒng)自啟動程序。

那么問題來了,BIOS程序又是怎么啟動的?BIOS的啟動,是由硬件完成的,Intel 80×86系列的cpu的硬件都設(shè)計為加電(即開機瞬間)就進入16位實模式狀態(tài)運行,此時將cpu的硬件邏輯設(shè)計為強行將CS的值設(shè)置為0xFFFF,IP的值設(shè)置為0x0000,這樣CS:IP就指向了0xFFFF0這個位置,而這個位置就是BIOS程序的入口地址。

因此這是一個硬件廠商之間的約定,所有的BIOS程序入口地址均為0xFFFF0,這樣在開機的時候,就找到這個地址,如果該地址并沒有代碼段,那么計算機將會死機,如果這個地址處有代碼段,將會執(zhí)行這個代碼段,并由此執(zhí)行下去,即BIOS程序開始啟動。

聲明:本站稿件版權(quán)均屬千鋒教育所有,未經(jīng)許可不得擅自轉(zhuǎn)載。
10年以上業(yè)內(nèi)強師集結(jié),手把手帶你蛻變精英
請您保持通訊暢通,專屬學(xué)習(xí)老師24小時內(nèi)將與您1V1溝通
免費領(lǐng)取
今日已有369人領(lǐng)取成功
劉同學(xué) 138****2860 剛剛成功領(lǐng)取
王同學(xué) 131****2015 剛剛成功領(lǐng)取
張同學(xué) 133****4652 剛剛成功領(lǐng)取
李同學(xué) 135****8607 剛剛成功領(lǐng)取
楊同學(xué) 132****5667 剛剛成功領(lǐng)取
岳同學(xué) 134****6652 剛剛成功領(lǐng)取
梁同學(xué) 157****2950 剛剛成功領(lǐng)取
劉同學(xué) 189****1015 剛剛成功領(lǐng)取
張同學(xué) 155****4678 剛剛成功領(lǐng)取
鄒同學(xué) 139****2907 剛剛成功領(lǐng)取
董同學(xué) 138****2867 剛剛成功領(lǐng)取
周同學(xué) 136****3602 剛剛成功領(lǐng)取
相關(guān)推薦HOT
APP開發(fā)時經(jīng)常會陷入哪些誤區(qū)?

一、APP開發(fā)時經(jīng)常會陷入的誤區(qū)1、只關(guān)注價格便宜任何企業(yè)開發(fā)APP應(yīng)用,都想少花一分是一分,這本是人之常情,但有些企業(yè)在節(jié)省預(yù)算的時候,卻...詳情>>

2023-10-11 18:57:24
怎么制作okr?

一、確定主題和周期在制作OKR前,需要確定主題和周期。主題可以是年度目標(biāo)、季度目標(biāo)、月度目標(biāo)等,周期可以是一年、半年、三個月等。主題和周...詳情>>

2023-10-11 18:51:29
python中complex是什么意思?

一、python中complexpython中complex是復(fù)數(shù)。復(fù)數(shù)(Complex)是 Python 的內(nèi)置類型,直接書寫即可。換句話說,Python 語言本身就支持復(fù)數(shù),而不...詳情>>

2023-10-11 18:43:39
大數(shù)據(jù)平臺和云平臺的區(qū)別?

在當(dāng)今數(shù)據(jù)驅(qū)動的世界中,大數(shù)據(jù)平臺和云平臺發(fā)揮著至關(guān)重要的作用。它們都是現(xiàn)代企業(yè)中不可或缺的技術(shù)平臺,但各有其特點和功能。理解這兩者之...詳情>>

2023-10-11 18:27:08
有什么好的開源自動化測試框架可以推薦?

免費的開源框架和工具由于其開源特性,現(xiàn)在逐漸成為自動化測試的優(yōu)選解決方案。 區(qū)別在于,你是喜歡使用類庫編寫一個全新的自動化測試框架,或...詳情>>

2023-10-11 18:25:29
主站蜘蛛池模板: 国产99精品在线观看| 武侠古典一区二区三区中文| 非洲一区二区三区不卡| 亚洲国产欧美日韩精品一区二区三区| 男人j进女人j啪啪无遮挡动态| 嫩草影院在线免费观看| 男人把女人桶爽30分钟应用| 再深点灬舒服灬太大了网站| 欧美aa在线观看| 色丁香在线| 美女黄色录像| 老师你好电影高清完整版在线观看 | 4408私人影院| 边吃奶边摸下面| 国产色综合久久无码有码| 国产午夜精品一区二区三区| 小草视频免费观看| 正在播放pppd| 妞干网免费观看视频| 精彩视频一区二区三区| 久久亚洲免费视频| 91高端极品外围在线观看| 再去温泉吧| 老师好紧开裆蕾丝内裤小说| 操女人电影| 中文字幕在线视频在线看| 精品国产福利久久久| 国产乱视频| 女人张开腿让男人桶免费网站| 一本到在线观看视频| 小信的干洗店1~4| 免费一级黄色录像影片| 538在线精品| 五十路六十路绝顶交尾| 欧美性生活视频免费| 国产成人精品综合在线观看| 一级黄影| 日产亚洲一区二区三区| 四虎永久地址4hu2019| 亚洲大香人伊一本线| 国产一区风间由美在线观看|