啊啊啊流水了啊操逼污污,与妇女日逼视频,亚洲国产日韩欧美一区二区,k8经典网在线观看电影

24小時聯(lián)系電話:18217114652、13661815404

中文

您當前的位置:
首頁>
電子資訊>
技術專題>
理論嵌入式Linux要求

技術專題

理論嵌入式Linux要求


理論嵌入式Linux要求

硬件

片上系統(tǒng)

片上系統(tǒng)(SoC)本質(zhì)上是一種采用單個平臺并將整個計算機系統(tǒng)集成到其上的集成電路。它將CPU的功能與執(zhí)行和執(zhí)行其功能所需的其他組件結(jié)合在一起。它負責使用其他硬件并運行您的軟件。SoC的主要優(yōu)點包括較低的延遲和節(jié)能功能。

它由各種構(gòu)建塊組成:

核心+緩存+ MMU  – SoC的核心是處理器,它將定義其功能。通常,SoC具有多個處理器內(nèi)核。對于真實處理器,例如ARM Cortex-A9。這是選擇SoC時要牢記的主要內(nèi)容??赡苡芍T如NEON之類的SIMD協(xié)處理器共同輔助。

內(nèi)部RAM  – IRAM由位于CPU旁邊的超高速SRAM組成。它的行為類似于CPU緩存,并且通常很小。在引導順序的第一階段中使用它。

外設 –它們可以是一個簡單的ADC,DSP或圖形處理單元,它通過一些總線連接到內(nèi)核。低功耗/實時協(xié)處理器可幫助主內(nèi)核執(zhí)行實時任務或處理低功耗狀態(tài)。此類IP內(nèi)核的示例是USBPCI-E,SGX等。

外部RAM

SoC在引導期間和引導之后使用RAM存儲臨時數(shù)據(jù)。它是嵌入式系統(tǒng)在常規(guī)操作期間使用的內(nèi)存。

非易失性記憶

在嵌入式系統(tǒng)或單板計算機中,它是SD卡。在其他情況下,它可以是NAND,NORSPI數(shù)據(jù)閃存。它是SoC讀取并存儲系統(tǒng)工作所需的所有軟件組件的數(shù)據(jù)源。

外圍設備

SoC必須具有用于標準通信協(xié)議(例如USB,以太網(wǎng)和HDMI)的外部接口。它還包括Wi-Fi和藍牙的無線技術協(xié)議。

軟件

首先,我們介紹了啟動鏈,它是SoC上電時發(fā)生的一系列操作。

引導ROM:這是存儲在ROM中的一段代碼,由引導核心在開機時執(zhí)行。該代碼包含有關SoC配置的說明,以使其能夠執(zhí)行應用程序。Boot ROM執(zhí)行的配置包括內(nèi)核寄存器和堆棧指針的初始化,高速緩存和行緩沖區(qū)的啟用,中斷服務程序的編程,時鐘配置。

Boot ROM還實現(xiàn)了啟動輔助模塊(BAM),可使用以太網(wǎng),SD / MMC,USB,CAN,UART等接口從外部存儲器下載應用程序映像。

第一階段自舉程序

在第一階段的引導程序中執(zhí)行以下操作

設置引導加載程序代碼使用的內(nèi)存段和堆棧

重置磁盤系統(tǒng)

顯示字符串正在加載操作系統(tǒng)…”

FAT目錄中找到第二階段引導加載程序

將第二階段引導加載程序映像以10000000的速度讀入內(nèi)存

將控制權轉(zhuǎn)移到第二階段的引導程序

它將Boot ROM復制到SoC的內(nèi)部RAM中。必須足夠小以適合通常小于100kB的內(nèi)存。它初始化外部RAMSoC的外部存儲器接口,以及其他可能感興趣的外設(例如,禁用看門狗定時器)。完成后,它將根據(jù)上下文執(zhí)行下一階段,可以稱為MLOSPL或其他。

第二階段自舉程序

這是主要的引導加載程序,可以比第一階段大10倍,它完成了相關外圍設備的初始化。

將引導扇區(qū)復制到本地內(nèi)存區(qū)域

FAT目錄中查找內(nèi)核映像

20000000讀取內(nèi)存中的內(nèi)核映像

重置磁盤系統(tǒng)

啟用A20

00000000處建立中斷描述符表

將全局描述符表設置為00000800

將描述符表加載到CPU

切換到保護模式

清除預取隊列

設置保護模式的內(nèi)存段和堆棧,以供內(nèi)核代碼使用

使用跳遠將控制權轉(zhuǎn)移到內(nèi)核代碼

Linux內(nèi)核

Linux內(nèi)核是Linux OS的主要組件,并且是硬件和進程之間的核心接口。它在硬件和流程之間進行通信,從而盡可能高效地管理資源。內(nèi)核執(zhí)行以下工作

內(nèi)存管理:跟蹤內(nèi)存,存儲多少內(nèi)存以及存儲在何處

流程管理:確定哪些流程可以使用處理器,何時使用以及持續(xù)多長時間

設備驅(qū)動程序:充當硬件和進程之間的解釋器

系統(tǒng)調(diào)用和安全性:接收來自流程的服務請求

為了將內(nèi)核置于上下文中,可以將它們解釋為具有3層的Linux機器:

硬件:物理機-系統(tǒng)的基礎,由內(nèi)存(RAM)和處理器(CPU)以及輸入/輸出(I / O)設備(例如存儲,網(wǎng)絡和圖形)組成。

Linux內(nèi)核:操作系統(tǒng)的核心。它是駐留在內(nèi)存中的軟件,可以告訴CPU該怎么做。

用戶進程:這些是內(nèi)核管理的正在運行的程序。用戶進程共同構(gòu)成了用戶空間。內(nèi)核允許進程和服務器相互通信。

Initrootfs  – init是要運行的第一個非內(nèi)核任務,并具有PID1。它將初始化使用系統(tǒng)所需的所有內(nèi)容。在生產(chǎn)嵌入式系統(tǒng)中,它也啟動了主要應用程序。在這樣的系統(tǒng)中,它可以是BusyBox或定制的應用程序。

請輸入搜索關鍵字

確定
吉安市| 莎车县| 清徐县| 菏泽市| 鲁山县| 富锦市| 哈巴河县| 昌吉市| 高青县| 平谷区| 越西县| 焉耆| 高平市| 黔江区| 平昌县| 凤庆县| 丰镇市| 新巴尔虎左旗| 洛宁县| 清镇市| 淮阳县| 广水市| 胶南市| 湄潭县| 闸北区| 阿拉善左旗| 南皮县| 城口县| 平陆县| 林芝县| 曲沃县| 邳州市| 隆安县| 宁城县| 克东县| 双柏县| 墨江| 双鸭山市| 武义县| 左权县| 南京市|