板級支持包

板級支持包

板級支持包BSP)(Board Support Package)是介於主機板硬體和作業系統中驅動層程式之間的一層,一般認為它屬於作業系統一部分,主要是實現對作業系統的支持,為上層的驅動程式提供訪問硬體設備暫存器的函式包,使之能夠更好的運行於硬體主機板。在嵌入式系統軟體的組成中,就有BSP。BSP是相對於作業系統而言的,不同的作業系統對應於不同定義形式的BSP,例如VxWorks的BSP和Linux的BSP相對於某一CPU來說儘管實現的功能一樣,可是寫法和接口定義是完全不同的,所以寫BSP一定要按照該系統BSP的定義形式來寫(BSP的編程過程大多數是在某一個成型的BSP模板上進行修改)。這樣才能與上層OS保持正確的接口,良好的支持上層OS。

基本介紹

  • 中文名:板級支持包
  • 外文名:BSP
  • 定義:作業系統一部分
  • 作用:實現對作業系統的支持
簡介,歷史,示例,參見,

簡介

嵌入式系統中,板級支持包(英語:board support package,簡稱BSP)用作初始化與運行作業系統並用於評估板(Evaluation Board)的簡易代碼。它通常包含了以基礎支持代碼來載入作業系統的引導程式(英語:bootloader),以及主機板上所有設備的驅動程式
一些供應商還會提供一套根檔案系統、用於構建運行在該嵌入式系統上的程式的工具鏈(英語:toolchain,可以是架構支持包的一部分),以及(在運行過程中)配置設備的實用工具。

歷史

大約從1988年開始出現這個詞。這詞的來源最常被歸於風河公司(Wind River Systems) 給它的VxWorks嵌入式作業系統,不過現在已經廣泛的在業界使用。如QNX Software Systems也提供 BSPs。Microsoft也提供有Windows CE作業系統的 BSPs。
Windows CE 作業系統的 BSP 包含有:
  1. bootloader
  2. 驅動
  3. OEM Adaptation Layer(OAL)
  4. 配置檔案

示例

風河公司為 ARM Integrator 920T 開發板提供的 BSP 包含以下部分(還有其他部分未列出):
  1. 一個 config.h 檔案, 定義了一些常量例如 ROM_SIZE 和 RAM_HIGH_ADRS
  2. 一個 Makefile, 定義了二進制版本的 VxWorks ROM 映像,這個映像是用來提供給對快閃記憶體進行編程的
  3. 一個 bootrom 檔案, 定義了這個板相關的啟動參數等
  4. 一個 target.ref 檔案, 描述了板相關的信息,例如開關和跳線設定,中斷等
  5. 一個 VxWorks 映像
  6. C 代碼,包含有:
  7. flashMem.c -- 開發板的快閃記憶體的驅動
  8. pciIomapShow.c -- 將 PCI 匯流排映射成檔案
  9. primeCellSio.c -- TTY 驅動
  10. sysLib.c -- 開發板系統相關的例程
  11. romInit.s -- 開發板的 ROM 初始化模組,包含開發板從 ROM 運行程式的入口代碼

參見

相關詞條

熱門詞條

聯絡我們