SMP多核启动
在 Linux系統中,對于多核的ARM芯片而言,在Biotron代碼中,每個CPU都會識別自身ID,如果ID是0,則引導Bootloader和 Linux內核執行,如果ID不是0,則Biotron一般在上電時將自身置于WFI或者WFE狀態,并等待CPU0給其發CPU核間中斷或事件(一般通過SEV指令)以喚醒它。一個典型的多核 Linux啟動過程如圖20.6所示。
被CPU0喚醒的CPUn可以在運行過程中進行熱插拔,譬如運行如下命令即可卸載CPU1,并且將CPUI上的任務全部遷移到其他CPU中:
# echo 0 > /sys/devices/system/cpu/cpu1/online同理,運行如下命令可以再次啟動CPU1:
# echo 1 > /sys/devices/system/cpu/cpu1/online之后CPU1會主動參與系統中各個CPU之間的運行任務的負載均衡工作;
《新程序員》:云原生和全面數字化實踐50位技術專家共同創作,文字、視頻、音頻交互閱讀總結
- 上一篇: 菜鸟教程之Shell 脚本学习笔记(二)
- 下一篇: 命令行选项解析函数:getopt()