藍牙
主要: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」,然後轉移至特定平台的韌體程式碼基底。
例如:
外部 ABI 相容性
主要:lindkvist@google.com
次要:qsr@google.com
這組 API 可用於執行及與其他作業系統編譯的程式互動。
目前涵蓋 Starnix (Linux 二進位檔相容性) API。
例如:- fuchsia.starnix.container 用於控制未修改 Linux 二進位檔的容器的通訊協定。
圖形
主要:costan@google.com
次要:emircan@google.com
用於在系統上傳輸及合成的圖片 API 組合。其中包含與圖形硬體通訊的介面,以及 Scenic 與其他系統之間的場景圖表通訊 (不包含較高層級的概念,例如檢視畫面,請參閱「View System」一節)。
例如:
HCI
主要:neelsa@google.com
次要:emircan@google.com
涵蓋輸入、無障礙和國際化。
這組 API 可連結人機互動 (HCI) 裝置,從驅動程式開始,經過篩選、語意理解、分組、路由,最後將這些輸入內容傳送至 View 系統。包括與觸控、滑鼠、鍵盤、文字編輯和無障礙架構相關的 API。
例如:- fuchsia.ui.input
- fuchsia.ui.pointer
- fuchsia.ui.input.accessibility
- fuchsia.accessibility.semantics
- fuchsia.accessibility.*
- fuchsia.input.*
身分識別
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 也涵蓋音量控制和媒體工作階段管理等相關問題。
例如:- fuchsia.camera
- fuchsia.media
- fuchsia.media.audio
- fuchsia.media.drm
- fuchsia.media.sessions2
- fuchsia.media.sounds
- fuchsia.mediacodec
指標
主要:frousseau@google.com
這組 API 可讓用戶端記錄與指標相關聯的事件。這些事件會在裝置外收集,日後可在多部裝置上進行分析。
例如:
網路堆疊
主要:brunodalbo@google.com
可在 Fuchsia 中啟用網路功能的 API 組合。包含驅動網路資料、控制和管理層面的 API,從與裝置驅動程式簽訂的合約,到輔助應用程式層級通訊協定服務。
例如:- fuchsia.hardware.network 與裝置驅動程式建立資料處理層合約。
- fuchsia.posix.socket POSIX Sockets API。
- fuchsia.net.interfaces 介面管理平面。
- fuchsia.net.name 應用程式層級名稱解析。
電源
主要: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 上服務探索、檔案系統存取權和能力共用的常用方式。
這些函式主要用於用戶端與檔案系統的互動,其中用戶端可以是系統中需要存取檔案系統中的檔案/目錄的任何元件/程序。
-
用於尋找區塊裝置、啟動檔案系統程序來服務這些區塊裝置,以及為這些檔案系統提供句柄給 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 系統之上。
例如:- fuchsia.ui.views
- fuchsia.ui.focus
- fuchsia.ui.app 特別是 ViewProvider
- fuchsia.ui.policy
- fuchsia.ui.annotation
- fuchsia.ui.gfx.Event 中的 View/scene 連線信號
虛擬化
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
沒有說明。