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

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

SMP是什么 啟動方式介紹

麥辣雞腿堡 ? 來源:TrustZone ? 作者:Hcoco ? 2023-12-05 15:23 ? 次閱讀

SMP是什么?

SMP 英文為Symmetric Multi-Processing ,是對稱多處理結構的簡稱,是指在一個計算機上匯集了一組處理器(多CPU),各CPU之間共享內存子系統以及總線結構,一個服務器系統可以同時運行多個處理器,并共享內存和其他的主機資源。

CMP 英文為Chip multiprocessors,指的是單芯片多處理器,也指多核心。其思想是將大規模并行處理器中的SMP集成到同一芯片內,各個處理器并行執行不同的進程。

(1)CPU數:獨立的中央處理單元,體現在主板上就是有多少個CPU槽位

(2)CPU核心數(CPU cores):在每一個CPU上,都可能有多核(core),每個核中都有獨立的ALU,FPU,Cache等組件,可以理解為CPU的物理核數。(我們常說4核8線程中的核),指物理上存在的物體。

(3)CPU線程數(processor邏輯核):一種邏輯上的概念,并非真實存在的物體,只是為了更好地描述CPU的運作能力。簡單地說,就是模擬出的CPU核心數。

不過在這里我們這里指的是多個單核CPU組合到一起,每個核都有自己的一套寄存器

一個系統存在多個CPU,成本會更高和管理也更困難。多核算是輕量級的SMP,物理上多核CPU還是封裝成一個CPU,但是在CPU內部具有多個CPU的核心部件,可以同時運行多個線程/進程。但是需要CPU核心之間要共享資源,比如緩存。對程序員來說,它們之間的區別很小,大多數情況可以不做區分。我們在嵌入式開發中,大部分都是用的多核CPU。

這里我們就把這個SMP啟動轉換成多核CPU啟動。

2、啟動方式

程序為何可以在多個cpu上并發執行:他們有各自獨立的一套寄存器,如:程序計數器pc,棧指針寄存器sp,通用寄存器等,可以獨自 取指、譯碼、執行,當然內存和外設資源是共享的,多核環境下當訪問臨界區 資源一般 自旋鎖來防止競態發生。

soc啟動的一般會從片內的rom, 也叫bootrom開始執行第一條指令,這個地址是系統默認的啟動地址,會在bootrom中由芯片廠家固化一段啟動代碼來加載啟動bootloader到片內的sram,啟動完成后的bootloader除了做一些硬件初始化之外做的最重要的事情是初始化ddr,因為sram的空間比較小所以需要初始化擁有大內存 ddr,最后會從網絡/usb下載 或從存儲設備分區上加載內核到ddr某個地址,為內核傳遞參數之后,然后bootloader就完成了它的使命,跳轉到內核,就進入了操作系統內核的世界。

bootloader將系統的控制權交給內核之后,他首先會進行處理器架構相關初始化部分,如設置異常向量表,初始化mmu(之后內核就從物理地址空間進入了虛擬地址空間的世界,一切是那么的虛無縹緲,又是那么的恰到好處)等等,然后會清bss段,設置sp之后跳轉到C語言部分進行更加復雜通用的初始化,其中會進行內存方面的初始化,調度器初始化,文件系統等內核基礎組件 初始化工作,隨后會進行關鍵的從處理器的引導過程,然后是各種實質性的設備驅動的初始化,最后 創建系統的第一個用戶進程init后進入用戶空間執行用戶進程宣誓內核初始化完成,可以進程正常的調度執行。

系統初始化階段大多數都是主處理器做初始化工作,所有不用考慮處理器并發情況,一旦從處理器被bingup起來,調度器和各自的運行隊列準備就緒,多個任務就會均衡到各個處理器,開始了并發的世界,一切是那么的神奇。

soc在啟動階段除了一些特殊情況外(如為了加快啟動速度,在bl2階段通過并行加載方式同時加載bl31、bl32和bl33鏡像),一般都沒有并行化需求。因此只需要一個cpu執行啟動流程即可,這個cpu被稱為primary cpu,而其它的cpu則統一被稱為secondary cpu。為了防止secondary cpu在啟動階段的執行,它們在啟動時必須要被設置為一個特定的狀態。(有時候為了增加啟動速度,必須對時間敏感的設備,就可能啟動的時候整個從核并行跑一些任務)

當primary cpu完成操作系統初始化,調度系統開始工作后,就可以通過一定的機制啟動secondary cpu。顯然secondary cpu不再需要執行啟動流程代碼,而只需直接跳轉到內核中執行即可。

主流程啟動初始化一般來說都是主核在干的,當系統完成了初始化后就開始啟動從核。 這就像在啟動的大門,只有主核讓你過了,其他的先在門外等著。當cpu0啟動到kernel后,就會去門口,把它們的門禁卡給它們,卡上就寫的它們的目的地班級是哪里。如果沒有這個門禁卡的cpu,說明地址為0,就繼續在原地等著。

故其啟動的關鍵是如何將內核入口地址告知secondary cpu,以使其能跳轉到正確的執行位置。

aarch64架構實現了兩種不同的啟動方式,spin-table和psci。

其中spin-table方式非常簡單,但其只能被用于secondary cpu啟動,功能比較單一。

隨著aarch64架構電源管理需求的增加(如cpu熱插拔、cpu idle等),arm設計了一套標準的電源管理接口協議psci。該協議可以支持所有cpu相關的電源管理接口,而且由于電源相關操作是系統的關鍵功能,為了防止其被攻擊,該協議將底層相關的實現都放到了secure空間,從而可提高系統的安全性。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 處理器
    +關注

    關注

    68

    文章

    19349

    瀏覽量

    230283
  • cpu
    cpu
    +關注

    關注

    68

    文章

    10882

    瀏覽量

    212220
  • 多核
    +關注

    關注

    0

    文章

    43

    瀏覽量

    12368
  • SMP
    SMP
    +關注

    關注

    0

    文章

    75

    瀏覽量

    19691
收藏 人收藏

    評論

    相關推薦

    【深圳SMP03,SMP03】

    `SMP03,30G信號源,二手SMP03 SMP03,30G信號源,二手SMP03型號:R & S SMP02,
    發表于 02-01 16:32

    SMP04|SMP22|信號源|SMP04 現金回收

    找不到聯系方式,請在瀏覽器上搜索一下,旺貿通儀器儀 SMP04 SMP22SMP0420G信號源,SMP04,SMP02 20G信號源,二手
    發表于 12-31 17:51

    RT-Thread SMP介紹與移植資料分享

    次級 CPU 自身硬件部分的初始化不能由 CPU0 完成,因為其自身硬件不能由其它 CPU 訪問。CPU0 啟動流程在 SMP 平臺上,啟動核心 CPU0 的啟動流程和單核 CPU 上
    發表于 04-27 14:38

    RT-Thread框架下的SMP支持

    ipi_isr_handler)調度與同步臨界區保護是需要特別注意的。對于 SMP 通過關中斷的方式并不能阻止多個 CPU 對共享資源的并發訪問,需要通過自旋鎖機制進行保護(在次級 CPU 啟動中就
    發表于 02-13 15:02

    SMP-04采樣保持四放大器和SMP-08 SMP-18采樣

    SMP-04采樣保持四放大器和SMP-08 SMP-18采樣保持八放大器的應用:
    發表于 06-03 14:54 ?34次下載
    <b class='flag-5'>SMP</b>-04采樣保持四放大器和<b class='flag-5'>SMP</b>-08 <b class='flag-5'>SMP</b>-18采樣

    SMP技術

    SMP技術 SMP英文全稱為Symmetrical Multi-Processing,意指“對稱多處理”技術,是指在一個計算機上匯集了一組處理器—即多CPU,各CPU之
    發表于 12-17 14:08 ?4578次閱讀

    啟動啟動方式

    啟動器是一種集軟啟動、軟停車、輕載節能和多功能保護于一體的電機控制裝備。實現在整個啟動過程中無沖擊而平滑的啟動電機,而且可根據電動機負載的特性來調節
    的頭像 發表于 09-19 17:04 ?2.3w次閱讀

    RT-Thread文檔_RT-Thread SMP 介紹與移植

    RT-Thread文檔_RT-Thread SMP 介紹與移植
    發表于 02-22 18:31 ?9次下載
    RT-Thread文檔_RT-Thread <b class='flag-5'>SMP</b> <b class='flag-5'>介紹</b>與移植

    表面貼裝封裝技術SMP介紹

    SMP是指采用表面貼裝技術 (Surface Mounted Technology, SMT) 將集成電路安裝到PCB 上。
    的頭像 發表于 03-06 14:41 ?7440次閱讀

    SMP是什么?多核芯片(SMP)的啟動方法

    SMP 英文為Symmetric Multi-Processing ,是對稱多處理結構的簡稱,是指在一個計算機上匯集了一組處理器(多CPU),各CPU之間共享內存子系統以及總線結構,一個服務器系統可以同時運行多個處理器,并共享內存和其他的主機資源。
    的頭像 發表于 07-26 09:26 ?1.9w次閱讀
    <b class='flag-5'>SMP</b>是什么?多核芯片(<b class='flag-5'>SMP</b>)的<b class='flag-5'>啟動</b>方法

    RT-Thread SMP啟動流程

    SMP(Symmetric Multi-processing) :對稱多處理,在一個計算機上匯集了一組處理器 (多 CPU), 各 CPU 之間共享內存子系統以及總線結構。
    的頭像 發表于 08-03 15:10 ?1191次閱讀
    RT-Thread <b class='flag-5'>SMP</b><b class='flag-5'>啟動</b>流程

    SMP多核啟動cpu操作函數

    其中spin-table啟動方式的回調如下: const struct cpu_operations smp_spin_table_ops = {.name= "spin-table
    的頭像 發表于 12-05 16:04 ?812次閱讀
    <b class='flag-5'>SMP</b>多核<b class='flag-5'>啟動</b>cpu操作函數

    介紹幾種常見的電機啟動方式

    電機控制的方法有很多種,包括直接啟動、軟啟動、變頻啟動、星-三角啟動等。不同的啟動方式適用于不同
    的頭像 發表于 12-11 14:42 ?2608次閱讀

    電機控制具體是指什么?有哪些啟動方式

    電機控制的方法有很多種,包括直接啟動、軟啟動、變頻啟動、星-三角啟動等。不同的啟動方式適用于不同
    的頭像 發表于 12-14 15:51 ?1146次閱讀

    單相電機的啟動方式是什么?如何啟動?

    單相電機是一種常見的電機類型,廣泛應用于家用電器、工業設備和各種小型機械中。由于其結構簡單、成本低廉、維護方便等特點,單相電機在許多領域得到了廣泛應用。然而,單相電機的啟動方式與三相電機有所不同
    的頭像 發表于 10-23 09:15 ?613次閱讀
    主站蜘蛛池模板: 神马老子影院午夜伦| 国产精品人妻无码久久久蜜桃| 牛牛自拍国产免费视频| 国产精品无码无卡毛片不卡视| 中文在线中文资源| 午夜片神马影院福利| 欧美一区二区三区免费播放| 饥渴的新婚女教师| 国产成人无码精品久久久按摩| 99国产在线视频有精品视频| 亚洲区偷拍自拍29P| 日韩欧美一区二区三区在线视频| 久久热免费观看视频| 国产老头与老太hd| 草神被爆漫画羞羞漫画| 总裁呻吟双腿大开男男H| 亚洲AV无码乱码国产精品品麻豆| 琪琪see色原网站在线观看| 久久精品中文騷妇女内射| 国产精品.XX视频.XXTV| YELLOW在线观看高清视频免费| 中文字幕a有搜索网站| 亚洲区 bt下载| 亚洲国产成人精品不卡青青草原| 色中色论坛网站| 人妖干美女| 强奸日本美女小游戏| 免费欧美大片| 久久国内精品| 精品国产乱码久久久久久软件| 国产视频成人| 国产精品无码AV天天爽人妻蜜桃| 成人永久免费视频网站在线观看| GOGOGO高清免费播放| 99re8久久热在线视频| 18av 在线| 国产爱豆果冻传媒在线观看视频 | 亚洲人成网站在线观看90影院| 欧美精品熟妇乱| 暖暖视频中国在线观看免费韩国| 美女白虎穴|