帳號代碼
- handle_close - 關閉帳號代碼。
- handle_close_many - 關閉多個帳號代碼。
- handle_duplicate - 複製帳號代碼。
- handle_replace - 更換帳號代碼。
物件
- object_get_child - 提供包含子項物件的核心物件,取得所提供核心物件 ID 所指定子項的控制代碼。
- object_get_info - 查詢物件相關資訊。
- object_get_property - 要求各種核心物件的各種屬性。
- object_set_profile:將排程設定檔套用至執行緒。
- object_set_property:設定各種核心物件的多種屬性。
- object_signal - 為物件發出信號。
- object_signal_peer - 指定物件的對等點。
- object_wait_async - 訂閱物件信號。
- object_wait_many - 等待多個物件的信號。
- object_wait_one - 等待物件的訊號。
執行緒
- thread_create - 建立執行緒。
- thread_exit - 終止目前執行中的執行緒。
- thread_legacy_yield - 將目前執行緒的 CPU 傳回排程器。
- thread_raise_exception - 引發使用者產生的例外狀況。
- thread_read_state - 讀取執行緒狀態的一個切面。
- thread_start:在執行緒上開始執行作業。
- thread_write_state - 編寫執行緒狀態的一個方面。
執行緒取樣
- sampler_attach:設定執行緒定期取樣並寫入其堆疊
- sampler_create - 建立取樣器工作階段,傳回 IOBuffer,其中含有為各個合作夥伴分配的緩衝區
- sampler_start:開始對提供的 IOBuffer 取樣。
- sampler_stop:停止將範例寫入提供的 IOBuffer。
IO 緩衝區
- iob_allocate_id - 從紀律的 IOBuffer 區域中分配 ID
- iob_create - 使用一組選項建立 IOBuffer。
處理程序
- process_create - 建立新程序。
- process_create_shared - 建立新程序,以便與其他程序共用部分位址空間。
- process_exit:結束目前執行中的程序。
- process_read_memory - 從指定程序的位址空間讀取。
- process_start:在程序上開始執行。
- process_write_memory - 寫入指定程序的位址空間。
工作機會
- job_create - 建立新工作。
- job_set_critical:將程序設為對工作至關重要。
- job_set_policy:設定工作安全性和資源政策。
工作 (執行緒、程序或工作)
- task_create_exception_channel - 為指定的工作、程序或執行緒建立例外狀況管道。
- task_kill - 終止提供的工作或程序。
- task_suspend - 暫停指定工作。目前只有執行緒或程序帳號可能遭到停權。
- task_suspend_token - 暫停指定工作。目前只有執行緒或程序帳號可能遭到停權。
設定檔
- profile_create - 建立排程器設定檔。
例外狀況
- exception_get_process:為例外狀況程序建立控制代碼。
- exception_get_thread:為例外狀況的執行緒建立控制代碼。
頻道
- channel_call - 傳送訊息給管道,等待對方回覆。
- channel_call_etc - 傳送訊息給管道,並等待回覆。
- channel_create - 建立管道。
- channel_read - 讀取管道的訊息。
- channel_read_etc - 讀取管道的訊息。
- channel_write - 撰寫頻道訊息,
- channel_write_etc - 撰寫訊息至管道。
通訊端
- socket_create - 建立通訊端。
- socket_read - 從通訊端讀取資料。
- socket_set_disposition - 設定寫入的配置。
- socket_write - 將資料寫入通訊端。
訊息串
- stream_create - 從 VMO 建立串流。
- stream_readv - 在目前的搜尋偏移值下讀取串流的資料。
- stream_readv_at - 從指定偏移處讀取串流的資料。
- stream_seek - 修改跳轉偏移。
- stream_writev - 根據目前的搜尋偏移,將資料寫入串流。
- stream_writev_at - 根據指定偏移值將資料寫入串流。
菲弗斯
- fifo_create - 建立 fifo。
- fifo_read - 讀取財務資料。
- fifo_write - 將資料寫入 Ffo。
事件和事件配對
- event_create:建立活動。
- eventpair_create:建立事件組合。
- system_get_event - 擷取系統事件的控制代碼。
連接埠
- port_cancel:取消物件的非同步通訊埠通知。
- port_cancel_key:取消與金鑰相符的所有非同步通訊埠通知。
- port_create - 建立 IO 通訊埠。
- port_queue - 將封包排入通訊埠佇列。
- port_wait - 等待封包送達通訊埠。
踢足球
- futex_get_owner - 擷取乳球目前擁有者 (如果有的話)。
- futex_requeue:喚醒一些等待稍後的執行緒,並將更多等候程式移到其他等待佇列。
- futex_requeue_single_owner:喚醒一個執行緒等待 futex 的執行緒,並將更多等候程式排入另一個 Futex 等候佇列。
- futex_wait - 等待一下。
- futex_wake - 喚醒一些等待後毛的執行緒,並將 Futex 的擁有權設定為空。
- futex_wake_handle_close_thread_exit:寫入 futex、Wake futex、關閉控點、結束。
- futex_wake_single_owner - 喚醒一個執行緒在等待 futex 上,並將 Futex 的擁有權設定為該執行緒。
虛擬記憶體物件 (VMO)
- vmo_create - 建立 VM 物件。
- vmo_create_child:
- vmo_create_contiguous -
- vmo_create_physical:
- vmo_get_size:
- vmo_get_stream_size:
- vmo_op_range -
- vmo_read - 從 VMO 讀取位元組。
- vmo_replace_as_executable -
- vmo_set_cache_policy:
- vmo_set_size:
- vmo_set_stream_size -
- vmo_transfer_data:
- vmo_write - 將位元組寫入 VMO。
虛擬記憶體位址地區 (VMAR)
- vmar_allocate - 分配新的子區域。
- vmar_destroy:刪除虛擬記憶體位址區域。
- vmar_map - 新增記憶體對應。
- vmar_map_iob - 對應 IOBuffer 連接的記憶體區域。這場通話有
- vmar_op_range:對對應至此 VMAR 的 VMO 執行作業。
- vmar_protect:設定虛擬記憶體頁面的保護。
- vmar_unmap - 取消對應虛擬記憶體頁面。
使用者空間呼叫器
- pager_create - 建立新的 Pager 物件。
- pager_create_vmo - 建立呼叫器擁有的 VMO。
- pager_detach_vmo - 將 VMO 從呼叫器卸離。
- pager_op_range - 對各種呼叫器擁有的 VMO 範圍執行特定作業。
- pager_query_dirty_ranges - 在分頁器擁有的 VMO 中查詢連續範圍的骯髒頁面。
- pager_query_vmo_stats -
- pager_supply_pages - 將頁面提供給呼叫器擁有的 VMO。
加密保護 RNG
- cprng_add_entropy - 為核心 CPRNG 新增熵。
- cprng_draw - 從核心的 CPRNG 繪製。
時間
- clock_create - 建立新的時鐘物件。
- clock_get_boot - 取得目前的啟動時間。
- clock_get_details - 擷取所有時鐘目前狀態的低階詳細資料。
- clock_get_monotonic - 取得目前的單調時間。
- clock_read - 執行時鐘的基本讀取。
- clock_update - 調整時鐘物件。
- deadline_after - 將相對於現在的時間轉換為絕對期限。
- nanosleep - 高解析度睡眠。
- ticks_get - 讀取自開機以來的高精度計時器滴答次數。
- ticks_get_boot - 讀取啟動後產生的高精度計時器點數量,包括
- ticks_per_second - 讀取一分鐘內的高精度計時器滴答數。
計時器
- timer_cancel - 取消計時器。
- timer_create - 建立計時器。
- timer_set - 啟動計時器。
訊息信號中斷 (MSI)
- msi_allocate - 分配訊息訊號中斷 (MSI)。
- msi_create - 根據訊息信號中斷 (MSI) 分配作業建立「中斷」物件。
管理程序訪客
- guest_create - 建立訪客。
- guest_set_trap - 在客體內設定陷阱。
虛擬 CPU
- vcpu_create - 建立 vCPU。
- vcpu_enter:輸入 vCPU,讓其繼續執行。
- vcpu_interrupt - 在 VCPU 上引發中斷。
- vcpu_kick - 啟動一個 vCPU,使其停止執行。
- vcpu_read_state - 讀取 vCPU 的狀態。
- vcpu_write_state - 寫入 VCPU 狀態。
全域系統資訊
- system_get_dcache_line_size - TODO(https://fxbug.dev/42108078)
- system_get_features:取得支援的硬體功能。
- system_get_num_cpus - 取得系統上的邏輯處理器數量。
- system_get_page_size - 取得系統的頁面大小。
- system_get_physmem - 取得系統上的實體記憶體。
- system_get_version_string - 取得系統的版本字串。
偵錯記錄
- debug_read - 讀取來自偵錯序列埠的訊息。
- debug_send_command - TODO(https://fxbug.dev/42108078)
- debug_write - 將訊息寫入偵錯序列埠。
- debuglog_create:建立允許存取核心偵錯記錄的物件。
- debuglog_read - 從核心偵錯記錄讀取單一記錄檔記錄。
- debuglog_write:將訊息寫入核心偵錯記錄。
多功能
- vmar_unmap_handle_close_thread_exit:取消對應記憶體、關閉控點、結束。
系統
- system_create_processor_power_level_transition_handler - 為核心提供可要求排程器的通訊埠控制代碼
- system_get_performance_info - 取得 CPU 效能參數。
- system_mexec:使用新的核心和開機映像檔,將系統軟重新啟動。
- system_mexec_payload_get:傳回包含啟動此系統所需的 ZBI 項目的 ZBI。
- system_powerctl - TODO(https://fxbug.dev/42108078)
- system_set_performance_info - 設定 CPU 效能參數。
- system_set_processor_power_level_domain:通知指定功率內處理器電源等級的核心
- system_suspend_enter -
DDK
- bti_create - 建立新的公車交易啟動工具。
- bti_pin - 固定網頁並授權裝置存取。
- bti_release_quarantine - 發布所有遭到隔離的 PMT。
- cache_flush - 清除 CPU 資料和/或指示快取。
- interrupt_ack - 確認中斷狀態,並重複啟動。
- interrupt_bind - 將中斷物件繫結至通訊埠。
- interrupt_create - 建立中斷物件。
- interrupt_destroy - 刪除中斷物件。
- interrupt_trigger - 觸發虛擬中斷物件。
- interrupt_wait - 等待中斷。
- iommu_create:在核心中建立新的 IOMMU 物件。
- pmt_unpin:取消固定網頁並撤銷裝置的存取權限。
- resource_create - 建立資源物件。
- smc_call - 從使用者空間發出安全監控呼叫 (SMC)。
顯示驅動程式
- framebuffer_get_info - TODO(https://fxbug.dev/42108078)
- framebuffer_set_range - TODO(https://fxbug.dev/42108078)
追蹤
- ktrace_control - TODO(https://fxbug.dev/42108078)
- ktrace_read - TODO(https://fxbug.dev/42108078)
- ktrace_write - TODO(https://fxbug.dev/42108078)
- mtrace_control - TODO(https://fxbug.dev/42108078)
嚴格篩選模式 (仍在開發中)
- restricted_bind_state:建立受限狀態 VMO 並繫結至目前的執行緒。
- restricted_enter - 進入嚴格篩選模式
- restricted_kick - 退出受限模式的執行緒。
- restricted_unbind_state - 將受限狀態 VMO 從目前執行緒解除繫結。
其他/處理中
- ioports_release - TODO(https://fxbug.dev/42108078)
- ioports_request - TODO(https://fxbug.dev/42108078)
- pc_firmware_tables - TODO(https://fxbug.dev/42108078)
- pci_add_subtract_io_range - 這個函式已過時,不應使用。
- pci_cfg_pio_rw - 此函式已過時,不應使用。
- pci_config_read - 此函式已過時,不應使用。
- pci_config_write - 此函式已過時,不應使用。
- pci_enable_bus_master - 此函式已淘汰,不應使用。
- pci_get_bar - 此函式已過時,不應使用。
- pci_get_nth_device - 此函式已過時,不應使用。
- pci_init - 此函式已過時,不應使用。
- pci_map_interrupt - 此函式已淘汰,因此不應使用。
- pci_query_irq_mode:這個函式已過時,不應使用。
- pci_reset_device - 此函式已過時,不應使用。
- pci_set_irq_mode:這個函式已過時,不應使用。