完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>
標簽 > bootloader
在嵌入式操作系統(tǒng)中,BootLoader是在操作系統(tǒng)內(nèi)核運行之前運行。可以初始化硬件設(shè)備、建立內(nèi)存空間映射圖,從而將系統(tǒng)的軟硬件環(huán)境帶到一個合適狀態(tài),以便為最終調(diào)用操作系統(tǒng)內(nèi)核準備好正確的環(huán)境。
在嵌入式操作系統(tǒng)中,BootLoader是在操作系統(tǒng)內(nèi)核運行之前運行。可以初始化硬件設(shè)備、建立內(nèi)存空間映射圖,從而將系統(tǒng)的軟硬件環(huán)境帶到一個合適狀態(tài),以便為最終調(diào)用操作系統(tǒng)內(nèi)核準備好正確的環(huán)境。在嵌入式系統(tǒng)中,通常并沒有像BIOS那樣的固件程序(注,有的嵌入式CPU也會內(nèi)嵌一段短小的啟動程序),因此整個系統(tǒng)的加載啟動任務(wù)就完全由BootLoader來完成。在一個基于ARM7TDMI core的嵌入式系統(tǒng)中,系統(tǒng)在上電或復(fù)位時通常都從地址0x00000000處開始執(zhí)行,而在這個地址處安排的通常就是系統(tǒng)的BootLoader程序。
在嵌入式操作系統(tǒng)中,BootLoader是在操作系統(tǒng)內(nèi)核運行之前運行。可以初始化硬件設(shè)備、建立內(nèi)存空間映射圖,從而將系統(tǒng)的軟硬件環(huán)境帶到一個合適狀態(tài),以便為最終調(diào)用操作系統(tǒng)內(nèi)核準備好正確的環(huán)境。在嵌入式系統(tǒng)中,通常并沒有像BIOS那樣的固件程序(注,有的嵌入式CPU也會內(nèi)嵌一段短小的啟動程序),因此整個系統(tǒng)的加載啟動任務(wù)就完全由BootLoader來完成。在一個基于ARM7TDMI core的嵌入式系統(tǒng)中,系統(tǒng)在上電或復(fù)位時通常都從地址0x00000000處開始執(zhí)行,而在這個地址處安排的通常就是系統(tǒng)的BootLoader程序。
Bootloader是嵌入式系統(tǒng)在加電后執(zhí)行的第一段代碼,在它完成CPU和相關(guān)硬件的初始化之后,再將操作系統(tǒng)映像或固化的嵌入式應(yīng)用程序裝在到內(nèi)存中然后跳轉(zhuǎn)到操作系統(tǒng)所在的空間,啟動操作系統(tǒng)運行。
對于嵌入式系統(tǒng),Bootloader是基于特定硬件平臺來實現(xiàn)的。因此,幾乎不可能為所有的嵌入式系統(tǒng)建立一個通用的Bootloader,不同的處理器架構(gòu)都有不同的Bootloader。Bootloader不但依賴于CPU的體系結(jié)構(gòu),而且依賴于嵌入式系統(tǒng)板級設(shè)備的配置。對于2塊不同的嵌入式板而言,即使它們使用同一種處理器,要想讓運行在一塊板子上的Bootloader程序也能運行在另一塊板子上,一般也都需要修改Bootloader的源程序。
反過來,大部分Bootloader仍然具有很多共性,某些Bootloader也能夠支持多種體系結(jié)構(gòu)的嵌入式系統(tǒng)。例如,U-Boot就同時支持PowerPC、ARM、MIPS和X86等體系結(jié)構(gòu),支持的板子有上百種。通常,它們都能夠自動從存儲介質(zhì)上啟動,都能夠引導(dǎo)操作系統(tǒng)啟動,并且大部分都可以支持串口和以太網(wǎng)接口。
在專用的嵌入式板子運行GNU/Linux系統(tǒng)已經(jīng)變得越來越流行。一個嵌入式Linux系統(tǒng)從軟件的角度看通常可以分為四個層次:
1、 引導(dǎo)加載程序。包括固化在固件(firmware)中的boot代碼(可選),和BootLoader兩大部分。
2、Linux內(nèi)核。特定于嵌入式板子的定制內(nèi)核以及內(nèi)核的啟動參數(shù)。
3、 文件系統(tǒng)。包括根文件系統(tǒng)和建立于Flash內(nèi)存設(shè)備之上文件系統(tǒng)。通常用ramdisk來作為rootfs。
4、 用戶應(yīng)用程序。特定于用戶的應(yīng)用程序。有時在用戶應(yīng)用程序和內(nèi)核層之間可能還會包括一個嵌入式圖形用戶界面。常用的嵌入式GUI有:MicroWindows和MiniGUI等。
通常,BootLoader是嚴重地依賴于硬件而實現(xiàn)的,特別是在嵌入式世界。因此,在嵌入式世界里建立一個通用的BootLoader幾乎是不可能的。盡管如此,我們?nèi)匀豢梢詫ootloader歸納出一些通用的概念來,以指導(dǎo)用戶特定的BootLoader設(shè)計與實現(xiàn)。
操作模式
1.自啟動模式:在這種模式下,bootloader從目標機上的某個固態(tài)存儲設(shè)備上將操作系統(tǒng)加載到RAM中運行,整個過程并沒有用戶的介入。
2.交互模式:在這種模式下,目標機上的bootloader將通過串口或網(wǎng)絡(luò)等通行手段從開發(fā)主機(Host)上下載內(nèi)核映像等到RAM中。可以被bootloader寫到目標機上的固態(tài)存儲媒質(zhì)中,或者直接進入系統(tǒng)的引導(dǎo)。也可以通過串口接收用戶的命令。
在嵌入式操作系統(tǒng)中,BootLoader是在操作系統(tǒng)內(nèi)核運行之前運行。可以初始化硬件設(shè)備、建立內(nèi)存空間映射圖,從而將系統(tǒng)的軟硬件環(huán)境帶到一個合適狀態(tài),以...
2018-08-08 標簽:看門狗bootloader 4.1萬 0
樹莓派應(yīng)該算是一個微型臺式機,屬于一種硬件的范疇。它用的雖然是arm的CPU,不過支持通用的操作系統(tǒng),而不是嵌入式的操作系統(tǒng)。當然也可以安裝androi...
2018-10-30 標簽:嵌入式開發(fā)bootloader樹莓派 2.7萬 0
如何使用STM32通用Bootloader讓OTA更加Easy
為了解決廣大開發(fā)者在添加 OTA 功能時遇到的種種困難,RT-Thread 開發(fā)團隊為開發(fā)者提供了 STM32 系列的通用 Bootloader ,開發(fā)...
2019-03-30 標簽:物聯(lián)網(wǎng)STM32OTA 2.5萬 0
什么是Bootloader 淺談STM32中bootloader的內(nèi)存分配
1. 什么是Bootloader Bootloader是硬件啟動的引導(dǎo)程序,是運行操作系統(tǒng)的前提。在操作系統(tǒng)內(nèi)核或用戶應(yīng)用程序運行之前運行的一段小代碼。...
2021-02-15 標簽:cpu操作系統(tǒng)STM32 1.7萬 0
一文看懂汽車電子ECU bootloader開發(fā)(工作原理及開發(fā)要點)
隨著半導(dǎo)體技術(shù)的不斷進步(按照摩爾定律),MCU內(nèi)部集成的邏輯功能外設(shè)越來越多,存儲器也越來越大。消費者對于汽車節(jié)能(經(jīng)濟和法規(guī)對排放的要求)型、舒適性...
2018-04-23 標簽:汽車電子bootloader 1.5萬 0
MCU正常運行時總是從固定地方取指令,順序運行,程序更新時需要使用燒錄器等工具燒錄,于是有人將程序設(shè)計成,由一個程序跳轉(zhuǎn)到另一個程序,這個程序通常稱作B...
2022-04-20 標簽:ecubootloader汽車控制器 1.3萬 0
本文將為大家介紹ATMEL系列MCU在線升級bootloader固件源碼及操作過程,筆者在mage和xmage上都實現(xiàn)過,不過使用的RS485,所以固件...
2017-09-19 標簽:mcubootloader 1.2萬 0
如何在STM32F407單片機上使用通用的BootLoader經(jīng)驗分析
在使用RT-Thread RTOS的時候發(fā)現(xiàn)官方提出了一種通用的BootLoader方案,支持F1和F4系列的芯片,正好手頭有板子便試著用了下,順便給大...
2019-08-03 標簽:STM32RTOSBootLoader 1.1萬 0
對于系統(tǒng)啟動,bootloader的功能的簡單分析
mmu,硬件設(shè)備(似乎也有軟件實現(xiàn)?),實現(xiàn)虛擬地址到物理地址映射,cpu的指令都是在虛擬地址上執(zhí)行的(這么說似乎也不準確),或許該說是在沒有mmu的時...
2018-02-05 標簽:嵌入式系統(tǒng)bootloadermmu 1.1萬 0
詳解bootloader的執(zhí)行流程與ARM Linux啟動過程分析
RM Linux啟動過程分析是本文要介紹的內(nèi)容,嵌入式 Linux 的可移植性使得我們可以在各種電子產(chǎn)品上看到它的身影。對于不同體系結(jié)構(gòu)的處理器來說Li...
2017-12-21 標簽:armbootloaderlinum 1.1萬 0
華大HC32F460 Bootloader及應(yīng)用程序的實現(xiàn)立即下載
類別:單片機 2021-11-23 標簽:bootloader68HC08MCU
Bootloader是什么Bootloader的介紹和過程詳細解立即下載
類別:嵌入式開發(fā) 2018-12-11 標簽:接口源代碼Bootloader
Atmel Samc21單片機的BootLoader程序和資料合集免費下載立即下載
類別:單片機 2019-06-27 標簽:單片機AtmelBootLoader
Sitara AM335x Bootloader的流程分析詳細概述立即下載
類別:嵌入式開發(fā) 2018-04-23 標簽:BootloaderAM335xSitara
PIC18系列單片機中的BootLoader的原理方法及優(yōu)點資料說明立即下載
類別:嵌入式開發(fā) 2018-12-14 標簽:單片機PIC18BootLoader
自制ArduinoUno R3開發(fā)板,燒寫bootloader立即下載
類別:單片機 2021-11-16 標簽:單片機嵌入式bootloader
PIC24FJ32GA002單片機bootloader rs485通信移植立即下載
類別:單片機 2013-05-14 標簽:PIC單片機rs485bootloader
RT-FOTA基于RTT系統(tǒng)bootloader通用軟件立即下載
類別:電子資料 2022-04-15 標簽:RTTbootloaderFOTA
個人數(shù)字媒體中心PMP的Bootloader引導(dǎo)程序設(shè)計立即下載
類別:電子教材 2011-09-16 標簽:PMPBootloader數(shù)字媒體中心
基于STM32F407的STM32通用BootLoader使用經(jīng)驗立即下載
類別:單片機 2021-11-30 標簽:ChipON單片機bootloader
對于很多安卓手機用戶們來說,相信刷過機的用戶們一定對Bootloader模式不會陌生,Bootloader就相當于手機的bios,它在手機啟動的時候根據(jù)...
2017-11-10 標簽:bootloader 4.9萬 0
在嵌入式操作系統(tǒng)中,BootLoader是在操作系統(tǒng)內(nèi)核運行之前運行。可以初始化硬件設(shè)備、建立內(nèi)存空間映射圖,從而將系統(tǒng)的軟硬件環(huán)境帶到一個合適狀態(tài),以...
2017-11-15 標簽:解鎖bootloader 4.0萬 0
先將手機關(guān)機(注意需要首先在設(shè)置菜單中,關(guān)閉“快速啟動”功能,或者關(guān)機后拔下電池,超過2秒后再重新插入),然后同時按下音量下鍵以及開機鍵(平板請同時按下...
2017-11-10 標簽:bootloader 4.0萬 0
bootloader是什么意思_bootloader是什么程序
Bootloader是嵌入式系統(tǒng)在加電后執(zhí)行的第一段代碼,在它完成CPU和相關(guān)硬件的初始化之后,再將操作系統(tǒng)映像或固化的嵌入式應(yīng)用程序裝在到內(nèi)存中然后跳...
2017-11-10 標簽:bootloader 1.4萬 0
realme國內(nèi)機型開放BL解鎖,有風(fēng)險要謹慎
昨天晚間realme CMO徐起公布了一個讓發(fā)燒友激動的消息,那就是realme國內(nèi)機型全部開放BL解鎖。
2019-11-28 標簽:智能手機Bootloader 1.3萬 0
Bootloader中LCD硬件初始化和軟件驅(qū)動程序設(shè)計
Android系統(tǒng)在正常啟動中,刷屏功能一般在內(nèi)核中執(zhí)行,而Bootloader的任務(wù)應(yīng)該是執(zhí)行硬件初始化,并盡快跳轉(zhuǎn)到Linux內(nèi)核。在Bootloa...
2018-03-07 標簽:LCDBootloader 9054 0
如何將ArduinoBootLoader刻錄到AtMega328p芯片上
假設(shè)您已經(jīng)擁有一個Arduino Uno或類似產(chǎn)品,并且您對IDE熟悉并且上傳草圖。
2019-09-26 標簽:bootloaderArduinoAtmega328P 9053 0
BootLoader就是單片機啟動時候運行的一段小程序,這段程序負責(zé)單片機固件的更新,也就是單片機選擇性的自己給自己下程序。可以更新,也可以不更新,更新...
2017-11-10 標簽:bootloader 7863 0
怎樣使用USBasp和Arduino將Bootloader刻錄到ATmega8
將Atmega8開發(fā)板連接到Arduino
2019-12-11 標簽:ATmega8bootloaderArduino 5444 0
Bootloader應(yīng)該是每個成熟產(chǎn)品都必須具備的功能,有了它,我們不用擔(dān)心產(chǎn)品銷售出去后發(fā)現(xiàn)產(chǎn)品固件有問題而無法解決的問題,有了Bootloader功...
2017-11-10 標簽:stm32bootloader 5196 0
編輯推薦廠商產(chǎn)品技術(shù)軟件/工具OS/語言教程專題
電機控制 | DSP | 氮化鎵 | 功率放大器 | ChatGPT | 自動駕駛 | TI | 瑞薩電子 |
BLDC | PLC | 碳化硅 | 二極管 | OpenAI | 元宇宙 | 安森美 | ADI |
無刷電機 | FOC | IGBT | 逆變器 | 文心一言 | 5G | 英飛凌 | 羅姆 |
直流電機 | PID | MOSFET | 傳感器 | 人工智能 | 物聯(lián)網(wǎng) | NXP | 賽靈思 |
步進電機 | SPWM | 充電樁 | IPM | 機器視覺 | 無人機 | 三菱電機 | ST |
伺服電機 | SVPWM | 光伏發(fā)電 | UPS | AR | 智能電網(wǎng) | 國民技術(shù) | Microchip |
Arduino | BeagleBone | 樹莓派 | STM32 | MSP430 | EFM32 | ARM mbed | EDA |
示波器 | LPC | imx8 | PSoC | Altium Designer | Allegro | Mentor | Pads |
OrCAD | Cadence | AutoCAD | 華秋DFM | Keil | MATLAB | MPLAB | Quartus |
C++ | Java | Python | JavaScript | node.js | RISC-V | verilog | Tensorflow |
Android | iOS | linux | RTOS | FreeRTOS | LiteOS | RT-THread | uCOS |
DuerOS | Brillo | Windows11 | HarmonyOS |