色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

一張圖秒懂嵌入式系統(tǒng)的啟動(dòng)流程

嵌入式開發(fā)愛好者 ? 來源:嵌入式開發(fā)愛好者 ? 2023-07-29 16:58 ? 次閱讀

一圖勝千言!看圖:

f65b2156-2d5f-11ee-815d-dac502259ad0.png

上圖是嵌入式系統(tǒng)啟動(dòng)流程圖,圖中紅色的數(shù)字圓點(diǎn)表示啟動(dòng)的先后順序。主要分為 4 個(gè)階段,分別是:第一階段 bootloader,第二階段uboot,第三階段內(nèi)核啟動(dòng),第四階段 app 啟動(dòng)。

第一:bootloader階段

主要完成第一階段系統(tǒng)的引導(dǎo)和初始化工作,包括序號(hào)1~3。

系統(tǒng)上電后,首先是cpu開始工作,此時(shí)引導(dǎo)程序(通常是匯編代碼)從ROM被加載到RAM 中,對(duì) cpu 的寄存器進(jìn)行初始化,啟動(dòng)核 0,如果是核1或者其他核則處于休眠狀態(tài),等待核 0 在內(nèi)核啟動(dòng)正常后通過中斷或者事件將其喚醒(圖中10的位置)。

接下來就是完成 flash 和 ddr 初始化,為后面從 flash 加載 bin 文件,在 DDR 中運(yùn)行程序提供基本環(huán)境,一般情況下都是從flash為0的位置,將flash中的bootloader 鏡像文件加載到 RAM 或 DDR 中,該引導(dǎo)程序最終將uboot從flash 復(fù)制到 DDR 中,然后交接給 uboot 進(jìn)行下一步處理。

第二:uboot 階段

首先對(duì) dram,flash,串口進(jìn)行檢查,保障 uboot 的運(yùn)行環(huán)境是 ok 的,同時(shí)為 linux分配內(nèi)存空間;接下來初始化網(wǎng)絡(luò)配置,包括mac地址的設(shè)置、通信端口的工作模式設(shè)置,可以讓用戶通過網(wǎng)絡(luò)加載程序;最后將linux從flash中復(fù)制到內(nèi)存中。

linux 鏡像文件中包含內(nèi)核、文件系統(tǒng)和設(shè)備管理樹 (FDT) 三個(gè)基本組件,uboot 會(huì)根據(jù)設(shè)備管理樹定義的信息進(jìn)行檢查,然后依次加載到內(nèi)存中 。包括序號(hào)4~5,這個(gè)階段最后將 linux 加載后,就可以交接給內(nèi)核進(jìn)行操作。

第三:內(nèi)核啟動(dòng)階段

主要負(fù)責(zé)創(chuàng)建進(jìn)程、綁定進(jìn)程、劃分內(nèi)存、喚醒核1、加載文件系統(tǒng)等基本工作,包括序號(hào)6~13。

首先,會(huì)生成一個(gè)初始進(jìn)程init0,后續(xù)創(chuàng)建的所有進(jìn)程都是從該進(jìn)程中產(chǎn)生,該進(jìn)程還負(fù)責(zé)對(duì)內(nèi)存和虛擬內(nèi)存進(jìn)行劃分。

然后 vfork 出一個(gè)主核進(jìn)程,綁定到核 0 上,接下來由 cpu 主核(核0)喚醒其他的核,從 init 進(jìn)程 vfork 出副核進(jìn)程,并將該進(jìn)程綁定到核1上。

最后是基于設(shè)備管理樹完成對(duì)系統(tǒng)中其他設(shè)備的初始化。

第四:app啟動(dòng)階段

這一階段主要對(duì)各類 app 應(yīng)用進(jìn)行初始化,如文中以通信設(shè)備為例,此處主要完成對(duì)轉(zhuǎn)發(fā)芯片的初始化,會(huì)涉及一些基礎(chǔ)轉(zhuǎn)發(fā)表項(xiàng)的初始配置,端口和各種通信總線的初始化。

接下來會(huì)初始化中間件,中間件是作為應(yīng)用程序和操作系統(tǒng)之間的橋梁,向下屏蔽操作系統(tǒng)的差異,向上為應(yīng)用程序提供平臺(tái)化的技術(shù)支持;最后就是各種應(yīng)用程序的初始化了,包括各種特性的初始化,心跳信息,單板信息,版本信息等等。

日常工作中,最容易出問題的地方其實(shí)都是在 app 的啟動(dòng)階段,這部分才是最應(yīng)該做一個(gè)詳盡的圖出來,后續(xù)筆者有了具體的項(xiàng)目案例后將會(huì)補(bǔ)充該圖例。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 寄存器
    +關(guān)注

    關(guān)注

    31

    文章

    5357

    瀏覽量

    120685
  • 嵌入式系統(tǒng)
    +關(guān)注

    關(guān)注

    41

    文章

    3605

    瀏覽量

    129568
  • RAM
    RAM
    +關(guān)注

    關(guān)注

    8

    文章

    1369

    瀏覽量

    114778

原文標(biāo)題:一張圖秒懂嵌入式系統(tǒng)的啟動(dòng)流程

文章出處:【微信號(hào):嵌入式開發(fā)愛好者,微信公眾號(hào):嵌入式開發(fā)愛好者】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    請(qǐng)問怎樣去設(shè)計(jì)嵌入式系統(tǒng)啟動(dòng)程序?

    如何去編寫嵌入式系統(tǒng)啟動(dòng)程序?設(shè)計(jì)嵌入式系統(tǒng)啟動(dòng)程序的步驟流程有哪些?設(shè)計(jì)嵌入式
    發(fā)表于 04-25 09:18

    一張帶你看懂嵌入式系統(tǒng)

    嵌入式系統(tǒng)種應(yīng)用范圍非常廣泛的系統(tǒng)。可以說除了般用途的計(jì)算機(jī)外的所有計(jì)算機(jī)都屬于嵌入式
    發(fā)表于 05-12 08:30

    嵌入式系統(tǒng)框架的相關(guān)資料下載

    1.系統(tǒng)框架對(duì)于個(gè)嵌入式系統(tǒng),最重要的當(dāng)然是運(yùn)算以及存儲(chǔ)單元,基本的嵌入式
    發(fā)表于 10-27 06:51

    嵌入式系統(tǒng)的開發(fā)流程是怎樣的

    嵌入式系統(tǒng)開發(fā)流程嵌入式系統(tǒng)般開發(fā)可以參照下圖所示流程
    發(fā)表于 10-27 06:12

    嵌入式Linux的啟動(dòng)流程簡介

    目錄嵌入式 Linux 啟動(dòng)流程簡介啟動(dòng)流程Bootloader 簡介市面上可見的 bootloader入
    發(fā)表于 11-04 09:04

    詳細(xì)分析嵌入式Linux系統(tǒng)啟動(dòng)流程

    嵌入式Linux專題()中已經(jīng)對(duì)嵌入式Linux系統(tǒng)的架構(gòu)及啟動(dòng)流程有了初步的介紹,本文將詳
    發(fā)表于 11-05 09:25

    嵌入式系統(tǒng)與ARM啟動(dòng)流程簡述

    Date:2019-5-131、嵌入式系統(tǒng)概述2、ARM啟動(dòng)流程簡述2.1、Uboot執(zhí)行流程2.2、Kernel執(zhí)行
    發(fā)表于 12-14 06:04

    iny4412嵌入式Linux操作系統(tǒng)啟動(dòng)流程是怎樣的

    本次介紹下友善之臂tiny4412嵌入式Linux操作系統(tǒng)分析首先,可以從官方提供的用戶手冊(cè)中得到這樣一張,它簡單表達(dá)了裸機(jī)燒寫
    發(fā)表于 12-20 07:50

    嵌入式系統(tǒng)U盤實(shí)時(shí)啟動(dòng)技術(shù)

    本文給出了實(shí)現(xiàn)嵌入式實(shí)時(shí)系統(tǒng)優(yōu)盤啟動(dòng)嵌入式主機(jī)硬件結(jié)構(gòu)、軟件協(xié)議棧以及主要程序流程,探討了實(shí)現(xiàn)嵌入式
    發(fā)表于 07-20 15:09 ?1753次閱讀

    嵌入式Linux快速啟動(dòng)技術(shù)綜述全勝

    嵌入式Linux快速啟動(dòng)技術(shù)綜述_全勝
    發(fā)表于 03-14 08:00 ?1次下載

    嵌入式系統(tǒng)框架----硬件篇

    1.1 系統(tǒng)框架對(duì)于個(gè)嵌入式系統(tǒng),我們從常見的嵌入式ARM板進(jìn)行分析:(從淘寶上截取了
    發(fā)表于 10-20 11:51 ?3次下載
    <b class='flag-5'>嵌入式</b><b class='flag-5'>系統(tǒng)</b>框架----硬件篇

    嵌入式Linux專題()——嵌入式Linux系統(tǒng)構(gòu)成及啟動(dòng)流程

    本文簡單的介紹了什么是嵌入式系統(tǒng),以及嵌入式Linux的系統(tǒng)結(jié)構(gòu),并且簡單的介紹了Linux的啟動(dòng)流程
    發(fā)表于 11-02 12:36 ?15次下載
    <b class='flag-5'>嵌入式</b>Linux專題(<b class='flag-5'>一</b>)——<b class='flag-5'>嵌入式</b>Linux<b class='flag-5'>系統(tǒng)</b>構(gòu)成及<b class='flag-5'>啟動(dòng)</b><b class='flag-5'>流程</b>

    一張了解嵌入式系統(tǒng)啟動(dòng)流程

    如下圖所示是嵌入式系統(tǒng)啟動(dòng)流程圖,圖中紅色的數(shù)字圓點(diǎn)表示啟動(dòng)的先后順序。主要分為4個(gè)階段,分別是第階段 bootloader,第二階段ub
    發(fā)表于 03-07 09:44 ?894次閱讀

    看懂RISC-V星光板的啟動(dòng)流程

    繼《最全教程來啦!在RISC-V星光板上創(chuàng)建Debian系統(tǒng)鏡像》之后,這期來聊聊RISC-V星光板的啟動(dòng)流程。如何更直觀理解VisionFive的
    的頭像 發(fā)表于 04-22 13:43 ?2096次閱讀
    <b class='flag-5'>一</b><b class='flag-5'>圖</b>看懂RISC-V星光板的<b class='flag-5'>啟動(dòng)</b><b class='flag-5'>流程</b>

    嵌入式系統(tǒng)啟動(dòng)流程

    嵌入式系統(tǒng)啟動(dòng)流程個(gè)復(fù)雜但有序的過程,它涉及從系統(tǒng)上電到操作
    的頭像 發(fā)表于 10-05 17:44 ?427次閱讀
    主站蜘蛛池模板: 日韩欧美一区二区三区免费观看| 亚洲人成7777| 上课失禁丨vk| 一个人免费播放高清在线观看| 91香蕉福利一区二区三区| 高清国语自产拍免费| 精品国产在线亚洲欧美| 青青草伊人| 用快播看黄的网站| 成人性生交大片| 久久久久国产一级毛片高清片| 日本老人oldmantv乱| 天天躁日日躁狠狠躁午夜剧场| 黄色三级三级免费看| 国产精品久久免费视频| 国产精品18久久久久久欧美| 国产免费麻传媒精品国产AV| 钉钉女老师| 国产日韩精品一区二区三区在线| 国产精品免费久久久久影院| 国产精品永久在线| 国产精品夜夜春夜夜爽久久小| 国产精品无码AV天天爽色欲| 精品免费久久久久久成人影院| 久久91精品国产91| 欧美一区二区视频在线观看| 手机毛片在线| 亚洲伊人久久综合影院2021| 中文国产乱码在线人妻一区二区| 99热久久爱五月天婷婷| JEALOUSVUE成熟老师APP| 国产国拍亚洲精品av麻豆| 老师我好爽再深一点老师好涨| 睡觉被偷偷进入magnet| 99久久久无码国产精品免费人妻 | 国产剧情福利AV一区二区| 女教师二十三歳| 在线 日韩 欧美 国产 社区| 国产三级在线免费观看| 首页 国产 亚洲 中文字幕| GOGOGO高清在线播放免费|