回覆列表
  • 1 # 使用者9874134305923

    1) 初始化 RAM因為 Linux 核心一般都會在 RAM 中執行,所以在呼叫 Linux 核心之前 Bootloader 必須設定和初始化 RAM,為呼叫 Linux核心做好準備。初始化 RAM 的任務包括設定 CPU 的控制暫存器引數,以便能正常使用 RAM 以及檢測RAM 大小等。

    2) 初始化串列埠埠在 Linux 的啟動過程中有著非常重要的作用,它是 Linux核心和使用者互動的方式之一。Linux 在啟動過程中可以將資訊透過串列埠輸出,這樣便可清楚的瞭解 Linux 的啟動過程。雖然它並不是 Bootloader 必須要完成的工作,但是透過串列埠輸出資訊是除錯 Bootloader 和Linux 核心的強有力的工具,所以一般的 Bootloader 都會在執行過程中初始化一個串列埠作為除錯埠。

    3) 檢測處理器型別Bootloader在呼叫 Linux核心前必須檢測系統的處理器型別,並將其儲存到某個常量中提供給 Linux 核心。Linux 核心在啟動過程中會根據該處理器型別呼叫相應的初始化程式。

    4) 設定 Linux啟動引數Bootloader在執行過程中必須設定和初始化 Linux 的核心啟動引數。

    5) 呼叫 Linux核心映像Bootloader完成的最後一項工作便是呼叫 Linux核心。如果 Linux 核心存放在 Flash 中,並且可直接在上面執行(這裡的 Flash 指 Nor Flash),那麼可直接跳轉到核心中去執行。但由於在 Flash 中執行程式碼會有種種限制,而且速度也遠不及 RAM 快,所以一般的嵌入式系統都是將 Linux核心複製到 RAM 中,然後跳轉到 RAM 中去執行。

  • 中秋節和大豐收的關聯?
  • 繁星;春水每一章內容概括?