區域

藍牙

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

透過藍牙管理及通訊的 API 組合。這包括連線至對等裝置、搜尋裝置、宣傳本機裝置,以及透過藍牙設定檔進行通訊或互動。一般來說,連線後,藍牙功能會透過其他部分的 API 公開,而這個 API 只會公開連線、管理探索和配對的介面,以及通常為每部裝置自訂的低耗電量通訊協定。

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

例如:

元件架構

主要:geb@google.com
次要:dgilhooley@google.com

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

例如:

開發人員

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

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

診斷

主要:crjohns@google.com
次要:miguelfrde@google.com

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

例如:

驅動程式

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

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

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

其他 API 則會分散至驅動程式庫處理的對應領域 (例如 Bluetooth、WLAN、Graphics、HCI)。雖然這些 API 並未位於 fuchsia.hardware.* 命名空間,但可能會與硬體或其他與硬體互動的驅動程式互動。

例如:

Driver SDK

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

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

例如:

體驗

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

用於建立使用者體驗的 API 組合。其中包括一組 API,可協助處理多項產品中常見的使用者互動。

例如:

FIDL

主要:ianloic@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 與其他系統之間的場景圖表通訊 (不包含較高層級的概念,例如檢視畫面,請參閱「View System」一節)。

例如:

HCI

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

涵蓋輸入、無障礙和國際化。

這組 API 可連結人機互動 (HCI) 裝置,從驅動程式開始,經過篩選、語意理解、分組、路由,最後將這些輸入內容傳送至 View 系統。包括與觸控、滑鼠、鍵盤、文字編輯和無障礙架構相關的 API。

例如:

身分識別

Primary

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

例如:

核心

主要:cpu@google.com
次要:abarth@google.com

Fuchsia 核心,其 API 介面如下:

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

媒體

主要:dalesat@google.com
次要:ypomortsev@google.com

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

例如:

指標

主要:frousseau@google.com

這組 API 可讓用戶端記錄與指標相關聯的事件。這些事件會在裝置外收集,日後可在多部裝置上進行分析。

例如:

網路堆疊

主要:brunodalbo@google.com

可在 Fuchsia 中啟用網路功能的 API 組合。包含驅動網路資料、控制和管理層面的 API,從與裝置驅動程式簽訂的合約,到輔助應用程式層級通訊協定服務。

例如:

電源

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

這組 API 可用於集中式電源和熱管理,包括系統電源狀態控制、電源依附元件的管理,以及熱力節流。也包括電力供應方面的內容,例如電池管理。

自然會與其他 API 領域的電源/熱相關驅動程式和子系統專屬電源管理 API 重疊。重疊 API 的擁有權會延遲至其他可行的 API 領域,而 Power 領域則會以諮詢角色運作。

例如:

產品組裝

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

一組 API,可將來自各種來源的軟體整合至可刷新、可更新的產品映像檔。產品組合涉及以下事項:

  • 組合時間產品/平台介面,可讓產品擁有者指定如何為特定產品設定平台。
  • 此合約會說明如何將組合輸入構件指定給組合工具,而這些工具會為特定產品建構組合正確的構件組合。

安全性

Primary

用於直接與安全性功能 (例如加密金鑰管理) 或工具 (例如模糊測試工具) 互動的 API 集合。

例如:

工作階段

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

一組 API,可協調產品的使用者體驗。具體來說,API 包含與工作階段元件通訊的通訊協定。

工作階段 API 通常會使用平台其他部分定義的通訊協定和資料結構。舉例來說,GraphicalPresenter 不會定義自身的檢視類型。而是使用View 系統ViewRef 來識別元件檢視畫面。

例如:

軟體推送

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

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

儲存空間

主要:csuter@google.com

Storage 是下列 API 的組合:

  • fuchsia.io

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

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

  • fuchsia.fshost

    用於尋找區塊裝置、啟動檔案系統程序來服務這些區塊裝置,以及為這些檔案系統提供句柄給 Fuchsia 的其他部分。

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

    例如:

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

測試

主要:anmittal@google.com
次要:crjohns@google.com

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

例如:

工具鏈

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

沒有說明。

查看系統

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

需要推論及與視覺區域 (「檢視區域」) 及其生命週期互動的 API 集合。這些類型通常不會與特定圖形表示法綁定,但有些類型與圖形 API 有密切關聯。HCI API 是建構在 View 系統之上。

例如:

虛擬化

Primary

虛擬化是指以下組合:

  • 管理程序是由 Zircon 核心實作,可為虛擬機器提供執行環境。具體來說,它提供位址空間隔離、記憶體或 I/O 通訊埠位址存取的擷取,以及虛擬 CPU 的管理。
  • 虛擬機器管理員,會使用管理程序提供完整的虛擬機器,讓作業系統在其中執行。這包括硬體模擬,以及作業系統本身的載入和執行。它會在虛擬機器中執行的來賓作業系統,與主機作業系統中的服務 (例如儲存空間、網路和圖形) 之間建立橋樑。

網路

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

Web 包含用於處理標準網路通訊協定 (例如 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

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

沒有說明。