區域

藍牙

主要:jamuraa@google.com
次要:silberst@google.com

一組用於管理和透過藍牙通訊的 API。包括連線對等互連裝置、搜尋裝置、廣告本機裝置,以及透過藍牙設定檔通訊或互動。一般來說,連線後,藍牙功能會透過其他部分的 API 公開,而這個 API 只會公開連線、管理探索和配對,以及低功耗通訊協定的介面,這些通訊協定通常會因裝置而異。

特定藍牙設定檔通常也會提供 API,供系統服務用於狀態和控制。

範例:

元件架構

主要:cgonyeo@google.com
次要:quiche@google.com

一組 API,用於定義元件、與元件互動,以及與元件架構整合。這些是與元件架構互動的低階 API,在某些情況下,開發人員可能會直接使用這些 API,但也可能用於建構高階 API,例如工作階段架構。

範例:

開發人員

主要:wilkinsonclay@google.com
次要:chaselatta@google.com

開發人員工具介面,例如指令列工具評量表。影響主機環境中開發人員體驗的 API,例如偵錯或開發套件。

診斷

主要:crjohns@google.com

這組 API 用於發布及查詢系統元件的診斷資料。包括串流記錄、查看及發布檢查資料,以及觀察生命週期事件。

範例:

Driver SDK

主要:jocelyndang@google.com
次要:surajmalhotra@google.com

這組 API 用於透過驅動程式管理器工具與裝置互動。開發人員可能會使用這項功能,擷取裝置相關資訊或變更裝置目前狀態。

範例:

駕駛

主要:cja@google.com
次要:puneetha@google.com

一組 API,用於與各種驅動程式通訊,這些驅動程式會與硬體或其他驅動程式互動。如要存取 API,請使用 devfs 路徑 (例如 /dev/class/<protocol the device exposes>/<incremental number>) 開啟裝置。

驅動程式公開的大多數 API 都位於 fuchsia.hardware.* 命名空間中。

其他 API 則會根據驅動程式庫處理的對應區域 (例如藍牙、WLAN、圖形、HCI) 進行分配。雖然這些 API 不在 fuchsia.hardware.* 命名空間下,但可能會與硬體互動,或與硬體互動的其他驅動程式互動。

範例:

體驗

主要:chaselatta@google.com
次要:ianloic@google.com

用於打造使用者體驗的一組 API。包括一組 API,可促進多項產品通用的使用者互動。

範例:

FIDL

主要:ianloic@google.com
次要:hjfreyer@google.com

由於大多數 API 都是以 FIDL 表示,因此 FIDL 領域會跨領域,目標是支援所有其他領域,並運用其經驗,為 FIDL 語言和生態系統的未來方向提供資訊。

韌體

主要:dpursell@google.com

韌體啟動 Zircon 所需的一小組程式庫,例如 ZBI 映像檔處理、A/B/R 啟動中繼資料、驗證開機程序。基本上,這定義了開機載入器與 Zircon 通訊的合約。

由於韌體是在 Fuchsia 外部執行,因此通常不適用於 Fuchsia 終端開發人員,而是用於在新平台上啟動 Fuchsia。這些程式庫共同構成「韌體 SDK」,然後移植到特定平台的韌體程式碼集。

範例:

  • libabr:A/B/R 中繼資料處理。
  • libavb,驗證開機程序。
  • libzbi:ZBI 操控。

外部 ABI 相容性

主要:lindkvist@google.com
次要:qsr@google.com

這組 API 用於執行為其他作業系統編譯的程式,並與這些程式互動。

目前涵蓋 Starnix (Linux 二進位檔相容性) API。

範例:

圖形

主要:costan@google.com
次要:emircan@google.com

用於在系統上傳輸及組合圖片的一組 API。包括與圖形硬體通訊的介面,以及 Scenic 與系統其他部分之間的場景圖通訊 (不包括檢視等高階概念,請參閱「檢視系統」區域)。

範例:

身分識別

主要:

用於管理使用者帳戶、驗證和身分資訊的一組 API。

範例:

核心

主要:mcgrathr@google.com
次要:rashaeqbal@google.com

Fuchsia 核心,其 API 介面為:

  • 一組系統呼叫,以及與這些系統呼叫相關聯的一組類型和常數。這些 API 定義於 //zircon/vdso/ 和 //zircon/system/public/zircon/ 。
  • 與開機載入程式的介面,其中最重要的是 ZBI 。
  • BOOTFS 映像檔和其中二進位檔的 ABI。

媒體

主要:dalesat@google.com

一組用於擷取、處理及轉譯音訊和視訊串流的 API。媒體 API 也涵蓋音量控制和媒體工作階段管理等相關問題。

範例:

指標

主要:frousseau@google.com

這組 API 可讓用戶端記錄與指標相關聯的事件,或提交當機報告。這些事件和報表會在裝置外收集,之後可跨多部裝置進行分析。

範例:

網路堆疊

主要:brunodalbo@google.com
次要:martinjeffrey@google.com

在 Fuchsia 中啟用網路的一組 API。涵蓋驅動網路資料、控制和管理層的 API,包括與裝置驅動程式的合約,以及輔助應用程式層級通訊協定服務。

範例:

電源

主要:mbrunson@google.com
次要:prashanthsw@google.com

這組 API 可集中管理電源和溫度,包括系統電源狀態控制、電源依附元件管理,以及溫度調節。此外,也包含電池管理等供電方面的功能。

自然會與其他 API 領域重疊,例如電源/熱能相關驅動程式和子系統專屬電源管理 API。重疊 API 的擁有權會盡可能交由其他 API 領域,而 Power 領域則扮演諮詢角色。

範例:

產品組裝

主要:aaronwood@google.com
次要:diserovich@google.com

一組 API,可將各種來源的軟體合併為可刷寫、可更新的產品映像檔。產品組裝涉及:

  • 組裝時產品/平台介面,可讓產品擁有者指定如何為特定產品設定平台。
  • 這份合約說明如何為組裝工具指定組裝輸入構件,以便為特定產品建構作業組裝正確的構件組合。

安全性

主要:

用於直接與安全防護功能 (例如加密編譯金鑰管理) 或工具 (例如模糊測試工具) 互動的一組 API。

範例:

軟體推送

主要:galbanum@google.com
次要:etryzelaar@google.com

軟體推送團隊負責管理 Fuchsia 裝置的軟體封裝和更新。

儲存空間

主要:csuter@google.com
次要:jfsulliv@google.com

儲存空間結合了下列 API:

  • fuchsia.io

    說明 Fuchsia 上服務探索、檔案系統存取和能力共用的常見方式。

    主要用於用戶端與檔案系統的互動,其中用戶端可以是系統中需要存取檔案系統中檔案/目錄的任何元件/程序。

  • fuchsia.fshost

    用於尋找區塊裝置、啟動檔案系統程序來為這些區塊裝置提供服務,以及為 Fuchsia 的其餘部分提供這些檔案系統的控制代碼。

  • 檔案系統專屬 API,用於檔案系統專屬作業。

    範例:

  • fuchsia.fs:負責提供檔案系統的管理功能。

測試

主要:crjohns@google.com

這組 API 負責執行、觀察及傳回在裝置上執行的測試結果。這些 API 會抽象化不同的測試架構和工具,提供 FIDL 介面,用於測試 Fuchsia 上的用途。

範例:

工具鏈

主要:mcgrathr@google.com
次要:phosek@google.com

沒有說明。

UI

主要:emircan@google.com
次要:carolineliu@google.com

一組 API,用於協調使用者與產品的互動,包括輸入 (例如人機互動 (HCI) 裝置驅動程式、語意理解等)、檢視系統 (例如視覺區域 (「檢視」) 及其生命週期)、應用程式模型和無障礙功能。

這個領域與其他使用者體驗相關的 API 領域 (例如圖形、媒體) 密切相關。如果兩者重疊,則由更具體的 API 區域擁有。

範例:

虛擬化

主要:

虛擬化結合了下列項目:

  • 管理程序由 Zircon 核心實作,可為虛擬機器提供執行環境。具體來說,它提供位址空間隔離、存取記憶體或 IO 連接埠位址的陷阱,以及虛擬 CPU 的管理。
  • 虛擬機器管理員:使用管理程序,為作業系統提供完整的虛擬機器,以便在其中執行。包括模擬硬體,以及載入和執行作業系統本身。這項服務可做為橋梁,連結虛擬機器中執行的訪客作業系統,以及主機作業系統中的服務,例如儲存空間、網路和圖形。

網頁

主要:wez@google.com
次要:ianloic@google.com

網頁包含用於處理標準網頁通訊協定 (例如 HTTP、HTTP2)、內容類型 (例如 HTML) 和應用程式執行階段技術 (例如 JavaScript、WebAssembly) 的 API。功能介面 (例如 fuchsia.web 、 fuchsia.net.http ) 通常會取代原本需要以程式庫形式,綁定至各個用戶端套件的功能。

範例:

  • fuchsia.net.http 支援與 HTTP 服務的基本互動 (例如 GET、PUT)。
  • fuchsia.url 定義網路標準網址類型和限制。
  • fuchsia.web

    可建立元件例項,用於託管使用標準網路技術 (HTML、JavaScript 等) 建立的內容。這些元件的使用方式與程序內網頁轉譯程式庫類似,但優點是與呼叫應用程式的隔離效果更強。

    Chromium 專案提供的實作項目會以預先建構套件的形式,包含在 Fuchsia 存放區中。

WLAN

主要:mnck@google.com
次要:silberst@google.com

沒有說明。