久久ER99热精品一区二区-久久精品99国产精品日本-久久精品免费一区二区三区-久久综合九色综合欧美狠狠

新聞中心

EEPW首頁 > 嵌入式系統 > 業界動態 > 從系統設計到源代碼:Tobias K?stner 談 Zephyr

從系統設計到源代碼:Tobias K?stner 談 Zephyr

作者: 時間:2025-10-30 來源: 收藏

在 11 月 5 日舉行的 Elektor 在線會議“ – 面向未來設備的開放式 RTOS”之前,我們采訪了演講者 Tobias K?stner,討論了功能架構在現代嵌入式項目中的重要性。咨詢公司 inovex 的解決方案架構師(醫療)物聯網解釋了  框架如何幫助開發人員將復雜的系統需求轉化為可維護且靈活的軟件結構。

Elektor:您將在會議上發表以下演講:“ in Practice: From Functional Design to Efficient Implementation”。為什么“Zephyr 中的功能架構”這個話題現在特別重要?

托比亞斯·凱斯特納:實際上,功能架構的主題始終是相關的。對我來說,它代表了從分析系統用例到我們需要在軟件設計中實現的相關系統功能的第一步。

正如我想在我的演講中展示的那樣,Zephyr 在這里提供了特別令人興奮的可能性,這使我更容易根據我的系統分析結果(即功能架構)得出一個干凈的軟件設計。

Elektor:對于剛開始使用 Zephyr 并希望實現功能架構的開發人員,您有什么建議?

托比亞斯·凱斯特納:Zephyr 是一個功能強大且非常全面的框架。掌握它提供的所有可能性需要時間和一定的毅力。但是,您將獲得當今市場上最好的嵌入式軟件設計技術框架。特別是對于軟件架構師來說,它為將他們的架構設計轉換為提供了全新的可能性。

功能架構起源于系統工程,是分析和描述復雜系統的公認方法。Zephyr 非常適合為此類復雜軟件。

Elektor:Zephyr 究竟如何幫助實現更快的反饋和更短的開發周期?

托比亞斯·凱斯特納:Zephyr 附帶了廣泛的現成服務,只需在您自己的應用程序中“啟用”即可。

我最喜歡的例子是 shell 和日志框架。作為一名開發人員,shell 尤其讓我有機會在早期階段嘗試初始部分功能,然后再將它們組合到更大的應用程序中。近年來生產了數百個驅動程序的驅動程序模型也有助于加快開發周期。幾乎沒有任何人在任何地方需要的東西需要再次實施。這節省了時間和精力。

Elektor:您指的是 KConfig 配置系統,它也用于 Linux 內核,以及用于對系統功能進行建模的硬件描述的分層數據結構 Devicetree。您能舉一個例子來說明這在實踐中是如何運作的嗎?

托比亞斯·凱斯特納:在實踐中,我廣泛使用 KConfig 來對我的固件項目進行建模。與 Zephyr 中已經存在的 KConfig 符號的集成是無縫的,并且由構建系統中的相同工具和流程步驟映射。例如,這允許我僅出于測試目的“打開”特定功能,因為并非所有組件都可以在我面前的原型硬件上使用?;蛘撸?,我可以使用 CONFIG_ACME_HEATER_TWOPOINT=y 或 CONFIG_ACME_HEATER_PID=y 輕松地在針對通用 API 的多個實現之間來回切換。

這些所謂的功能切換總是將所有代碼留在一個分支上,使集成變得更加容易,尤其是在較大的團隊中。

Elektor:您將討論仿真對開發和測試策略的重要性。您在這里推薦哪些工具或方法?

托比亞斯·凱斯特納:正如我剛才所描述的,KConfig 的靈活性也可用于實現“真實”實現或仿真。這可以針對每個子功能單獨和獨立地決定。

再加上 Zephyr 提供的對仿真器的出色支持,你就擁有了強大的測試驅動開發流程模型,我們在敏捷項目中非常重視這一點。

Elektor:在將架構映射到 Zephyr 組件時,您學到的最重要的是什么?

托比亞斯·凱斯特納:為了充分利用 Zephyr 為我作為開發人員或架構師提供的可能性的潛力,了解 KConfig、Devicetree 和基于 CMake 的構建系統這三個組件無疑是最重要的一課。正是這三種技術的相互作用產生了許多協同效應,使與 Zephyr 的合作變得獨一無二。這種努力的回報是可維護的架構,這些架構既穩定又靈活,并且可以以最少的努力適應不斷變化的系統需求,最重要的是,這是可預測的。



評論


相關推薦

技術專區

關閉