Login  |  繁體中文
感謝您對「自由軟體鑄造場」的支持與愛護,十多年來「自由軟體鑄造場」受中央研究院支持,並在資訊科學研究所以及資訊科技創新研究中心執行,現已完成階段性的任務。 本網站預計持續維運至 2021年底,網站內容基本上不會再更動。
也紀念我們永遠的朋友 李士傑先生(Shih-Chieh Ilya Li)。
News

U-Boot 創造者 Wolfgang Denk 談嵌入式 Linux 的偉大成就

Wolfgang Denk 身為 DENX 軟體工程經理,同時也是嵌入式裝置開放源碼通用開機載入程式 U-Boot 的創造者,他認為,過去幾年之中,嵌入式 Linux 至少可說在標準化上達成了兩項重要成就。首先,開發者因為 ARM 系統的出現所受到的衝擊並不大。Denk 表示,多虧了 Linux,低階的硬體細節經過妥善的抽象化,在應用軟體層上所使用的確切架構或 SoC 幾乎無關緊要。其次,開放源碼建構系統 Yocto 專案的迅速普及,可說是目前所見,嵌入式系統標準 Linux 散佈套件的最佳近似品。

在問答中,Denk 討論到 U-Boot 即將到來的釋出、U-Boot 的未來、嵌入式 Linux 與 Android 目前的狀態與未來、Yocto 專案在嵌入式開發標準化的角色,以及嵌入式開發者的最佳工具。

問:U-Boot v2013.04 是在兩個月前釋出的,你預計在 7 月有另一次釋出,這次有哪些新功能?

Wolfgang Denk:我樂見此專案以平穩可預測的方式向前邁進,去年秋季我因為個人因素辭去 U-Boot 管理者一職時,對此我並不抱有確定感,幸運的是 Tom Rini 同意接手,自此他做出相當優秀的成績。他和其他管理人,當然還有社群中的開發群眾,持續地推動著該專案。看到該專案成長到這個地步實在令人欣慰。

近來最有趣的功能是對加密簽章映像的支援改善,以及大幅縮短開機時間,同時維持完整 U-Boot 工具彈性的 Falcon 開機模式。

問:未來 U-Boot 有何重要的開發活動?

Wolfgang Denk:目前兩項處於初期原型階段的重要工作,包括針對組態設定改寫 Linux 核心的 Kconfig 方式,以及新設備驅動程式模式的開發。

問:嵌入式 Linux 目前狀態為何,特別是在 Android 與行動設備興起之後?

Wolfgang Denk:Linux 在多年以來,一直是所有類型應用軟體的首要作業系統,其中包括且特別是嵌入式應用軟體。然而最戲劇化的轉變並不在 Linux,而是在硬體上。考慮到近 2、3 年中從 Power 架構到 ARM 系統的劇烈轉變,在開發者與使用者身上並沒有造成多大不安與困惑,這一點實在是值得令人注意。多虧了 Linux,低階的硬體細節經過妥善的抽象化,在應用軟體層上所使用的確切架構或 SoC 幾乎無關緊要。

在要求安全性與可靠性的環境中,例如熱力與水力發電廠,我們看到 Linux 的使用逐漸增加。透過 Xenomai 即時延伸架構,Linux 同樣也運用在有著嚴苛即時需求的系統中,該架構允許模擬私有即時作業系統如 pSOS+ 或 VxWorks,讓現有程式碼得以重複運用。

由於我們專注於工業級嵌入式市場,在此 Android 尚無太多著力之處。當然我們支持它,也有若干客戶提出詢問,但至少目前為止 Android 在 DENX 業務中並沒有發揮什麼作用。嵌入式市場中多數客戶知道 Android 是個不錯的手機與平板作業系統和軟體堆疊,但是並不適合傳統嵌入式專案。

問:你對 Yocto 專案有何參與?

Wolfgang Denk:一直以來我們很期待像 Yocto 這樣的專案,一套社群推動的開放源碼專案,又有 Linux 基金會充分的承諾。我們樂於放棄發展自己的嵌入式散佈套件,轉而從頭開始基於 Yocto 之上進行相關工作。

問:Yocto 專案的未來走向為何?你認為它在嵌入式 Linux 開發的角色是什麼?

Wolfgang Denk:Yocto 可說是目前所見,嵌入式系統標準 Linux 散佈套件的最佳近似品。我們看到越來越多客戶、專案、廠商採用此一途徑,這是重要的成果。

問:Denx 嵌入式 Linux 開發套件 (Denx Embedded Linux Development Kit,ELDK) 對嵌入式開發者的優勢為何?

Wolfgang Denk:ELDK 的目標是作為 Yocto 的快速啓用套件。要在定制電路板上使用 Yocto,你必須建立自己的電路板組態,並建構工具鏈 (tool chain) 和目標套件。過程包括下載數 GB 的資料且需要可觀的 CPU 處理能力與儲存空間。簡單地說,在實際執行你的範例程式前,得花上很長時間。

ELDK 可以讓你下載並安裝預先編譯的二進位軟體,該軟體並不針對特定電路板,而可用於以所支持 CPU 架構為基礎的所有系統上。只要幾分鐘,就可以開始開發並測試你的程式,不需為了交叉工具鏈 (cross tool chain) 或目標程式庫與工具,歷經冗長的軟體建構過程。但 ELDK 也允許針對特定硬體進行客制化,客戶可以用它作為特定專案的軟體產品環境。

問:對嵌入式開發者來說,有哪些其他的必要工具?

Wolfgang Denk:首先是 git,沒有 git 的話,Linux、U-Boot 等專案無法以今日的效率來運作。Yocto 與底層的 bitbake 建構工具對於建構自有目標映像,或是自有專案或產品特定散佈套件,是不可或缺的。

Linux 核心提供許多少有人知的強大追蹤工具,這一點很可惜。最後,如果開發者確實了解並使用標準 Unix 工具,像是 bash、find、grep、sed,更不用提 awk、perl、python、gcc、gdb,許多工作將可因此妥善完成。


原文網址:

  1. U-Boot 創造者 Wolfgang Denk 談嵌入式 Linux 的偉大成就
    https://www.linux.com/news/featured-blogs/200-libby-clark/723487-qaa-u-boot-creator-wolfgang-denk-on-the-state-of-embedded-linux/



OSSF Newsletter : 第 222 期 Sphinx - 用 reStructuredText 寫網站與書

Category: FOSS Forum