The purpose of this document is to provide short definitions for a collection of
technical terms used in Fuchsia.

To add a glossary definition, see [Adding glossary entries](https://fuchsia.dev/docs/contribute/docs/glossary-entries).

## Terms

#### Glossary area

Build Component Framework Developer Devices Driver SDK Drivers FIDL General Languages and Libraries Software Assembly Storage System UI   

<button class="select-all">Select all</button> <button class="clear-all">Clear all</button>

*** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22ABI%22 "Edit the glossary")

  ### ABI

  The binary-level interface to the system.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#ABI-full)

  *** ** * ** ***

  The [Application Binary Interface](https://fuchsia.dev/docs/concepts/kernel/system)(ABI) for a system is the binary-level interface to the system. Typically you don't write software that uses the system ABI directly. Instead, you write software against the system API. When the software is compiled, the binary artifact created by the compiler interfaces with the system through the ABI. Changes to the system ABI may require you to recompile your source code to account for the changes in the ABI.

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22ABR%22 "Edit the glossary")

  ### ABR

  Fuchsia uses a bootloader with two partitions A and B, and a recovery slot.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#ABR-full)

  *** ** * ** ***

  <br />

  Fuchsia uses a bootloader with two partitions A and B, and a recovery slot. This logic is not required to boot Zircon or run a basic Fuchsia system, but it is required to take full advantage of Fuchsia's over-the-air (OTA) update features.

  The term slot is used to refer to a set of partitions that update together. If an update fails, the partitions fall back together. This works because there are two copies of each partition on disk. By convention, the slots used for normal updates are denoted A and B, and the corresponding partitions are labeled with a suffix of "_a" or "_b". The slot used for recovery is denoted R which is chosen when neither A nor B is bootable.

  <br />

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#ABR-also)

  #### Information related to ABR

  - [OTA](https://fuchsia.dev/docs/glossary#ota)

  #### Guides related to ABR

  - [OTA updates](https://fuchsia.dev/docs/concepts/packages/ota)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Action+key%22 "Edit the glossary")

  ### Action key

  Keys that have a distinct special action.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Action key-full)

  *** ** * ** ***

  Keys corresponding to specific actions, such as "display brightness increment", "display brightness decrement" etc, which are specifically named in the USB HID usage tables.

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22API+element%22 "Edit the glossary")

  ### API element

  An API element is an individual piece that makes up an API.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#API element-full)

  *** ** * ** ***

  An API element is an individual piece that makes up an API. Examples include types, members, and functions. For FIDL, elements include protocols, methods, tables, and members.

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Assembly+Config%22 "Edit the glossary")

  ### Assembly Config

  The JSON file a product owner writes to specify product-specific packages, components, drivers, and configuration, together with platform features and configuration.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Assembly Config-full)

  *** ** * ** ***

  <br />

  The JSON file that the product owner writes in order to specify (1) lists of product-specific packages, components, drivers, and configuration and (2) platform features and configuration. This is the configuration that encapsulates both a Product Config and a Platform Config.

  <br />

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Assembly Config-also)

  #### Information related to Assembly Config

  - [Product Owner](https://fuchsia.dev/docs/glossary#product-owner)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Assembly+Input+Bundle+(AIB)%22 "Edit the glossary")

  ### Assembly Input Bundle (AIB)

  A self-contained directory of artifacts, with a manifest at its root describing the contents, used internally by the Software Assembly tool.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Assembly Input Bundle (AIB)-full)

  *** ** * ** ***

  <br />

  An Assembly Input Bundle is a self-contained directory of artifacts with a manifest file in the root describing what is included. This bundle is used internally by the Software Assembly tool. Fuchsia is composed of many packages, components, drivers, and configuration data. These elements are grouped together inside Assembly Input Bundles (AIBs) for inclusion together into the assembled product. All AIBs other than the Legacy AIBs are "platform AIBs".

  <br />

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Assembly Input Bundle (AIB)-also)

  #### Information related to Assembly Input Bundle (AIB)

  - [Software Assembly](https://fuchsia.dev/docs/glossary#software-assembly)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Banjo%22 "Edit the glossary")

  ### Banjo

  Language for definition protocols that communicate between drivers.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Banjo-full)

  *** ** * ** ***

  Banjo is a language for defining protocols that are used to communicate between [drivers](https://fuchsia.dev/docs/glossary#driver). It is different from [FIDL](https://fuchsia.dev/docs/glossary#fidl) in that it specifies an ABI for drivers to use to call into each other, rather than an IPC protocol.

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Bind+language%22 "Edit the glossary")

  ### Bind language

  The language used to write [bind libraries](https://fuchsia.dev/docs/glossary#bind-library) and [bind rules](https://fuchsia.dev/docs/glossary#bind-rules) in a static file.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Bind language-also)

  #### Information related to Bind language

  - [Driver binding](https://fuchsia.dev/docs/glossary#driver-binding)

  #### Guides related to Bind language

  - [Driver binding](https://fuchsia.dev/docs/development/drivers/concepts/device_driver_model/driver-binding)
  - [Bind rules tutorial](https://fuchsia.dev/docs/development/drivers/tutorials/bind-rules-tutorial)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Bind+library%22 "Edit the glossary")

  ### Bind library

  A bind library is a mechanism used to define [node properties](https://fuchsia.dev/docs/glossary#node-properties). The node properties can be assigned to nodes by their [parent drivers](https://fuchsia.dev/docs/glossary#parent-driver) or used in the [bind rules](https://fuchsia.dev/docs/glossary#bind-rules). Bind libraries are defined through the [bind language](https://fuchsia.dev/docs/glossary#bind-language).

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Bind library-also)

  #### Information related to Bind library

  - [Driver binding](https://fuchsia.dev/docs/glossary#driver-binding)

  #### Guides related to Bind library

  - [Driver binding](https://fuchsia.dev/docs/development/drivers/concepts/device_driver_model/driver-binding)
  - [Bind rules tutorial](https://fuchsia.dev/docs/development/drivers/tutorials/bind-rules-tutorial)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Bind+rules%22 "Edit the glossary")

  ### Bind rules

  Bind rules are a defined set of conditions provided by a [driver](https://fuchsia.dev/docs/glossary#driver) that must be satisfied in order for the driver to [match](https://fuchsia.dev/docs/glossary#driver-matching) to a [node](https://fuchsia.dev/docs/glossary#node). The conditions are evaluated against [node properties](https://fuchsia.dev/docs/glossary#node-properties). Formerly known as a bind program.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Bind rules-also)

  #### Information related to Bind rules

  - [Driver binding](https://fuchsia.dev/docs/glossary#driver-binding)

  #### Guides related to Bind rules

  - [Driver binding](https://fuchsia.dev/docs/development/drivers/concepts/device_driver_model/driver-binding)
  - [Bind rules tutorial](https://fuchsia.dev/docs/development/drivers/tutorials/bind-rules-tutorial)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Board%22 "Edit the glossary")

  ### Board

  A board is a complete computer hardware platform with a CPU, memory, peripherals, and so on.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Board-full)

  *** ** * ** ***

  A board is a complete computer hardware platform with a CPU, memory, peripherals, and so on. It defines the architecture that the build produces for, and key features of the device upon which the build is intended to run. This configuration affects what [drivers](https://fuchsia.dev/docs/glossary#driver) are included, and may also influence device-specific kernel parameters.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Board-also)

  #### Information related to Board

  - [Board driver](https://fuchsia.dev/docs/glossary#board-driver)
  - [Boards](https://fuchsia.dev/docs/development/build/software_assembly/build_configuration#boards)
  - [RFC-0111: Initial Fuchsia hardware platform specifications](https://fuchsia.dev/docs/contribute/governance/rfcs/0111_fuchsia_hardware_specifications)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Board+driver%22 "Edit the glossary")

  ### Board driver

  A board driver is a specialized [driver](https://fuchsia.dev/docs/glossary#driver) that contains the platform-specific information needed by the [platform bus](https://fuchsia.dev/docs/glossary#platform-bus) and controls what other drivers will be loaded by the platform bus.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Board driver-full)

  *** ** * ** ***

  A board driver is a specialized [driver](https://fuchsia.dev/docs/glossary#driver) that contains the platform-specific information needed by the [platform bus](https://fuchsia.dev/docs/glossary#platform-bus) and controls what other drivers will be loaded by the platform bus. The board driver is the first driver loaded and parented by the platform bus.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Board driver-also)

  #### Information related to Board driver

  - [Board](https://fuchsia.dev/docs/glossary#board)
  - [//src/devices/board/drivers](https://fuchsia.googlesource.com/fuchsia/+/refs/heads/main/src/devices/board/drivers/)
  - [Platform Bus](https://fuchsia.dev/docs/development/drivers/concepts/device_driver_model/platform-bus)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22bootfs%22 "Edit the glossary")

  ### bootfs

  The boot filesystem that contains the files needed early in the boot process.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#bootfs-full)

  *** ** * ** ***

  The bootfs RAM disk contains the files needed early in the boot process when no other filesystems are available. It is part of the [zircon boot image](https://fuchsia.dev/docs/glossary#zircon-boot-image), and is decompressed and served by [bootsvc](https://fuchsia.dev/docs/glossary#bootsvc). After the early boot process is complete, the bootfs is mounted at \`/boot\`.

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22bootsvc%22 "Edit the glossary")

  ### bootsvc

  Provides a filesystem service for the bootfs and a loader service.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#bootsvc-full)

  *** ** * ** ***

  The second process started in Fuchsia. It provides a filesystem service for the [bootfs](https://fuchsia.dev/docs/glossary#bootfs) and a loader service that loads programs from the same bootfs. After starting these services, it loads the third program, which defaults to \`component_manager\`.

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Base+driver%22 "Edit the glossary")

  ### Base driver

  A [driver](https://fuchsia.dev/docs/glossary#driver) that is available in the Fuchsia image and not critical for bootstrapping the system. These drivers are loaded from the system's storage, so they need to be loaded after the [boot drivers](https://fuchsia.dev/docs/glossary#boot-driver) have enabled storage (for example, USB drivers, networking drivers).
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Base driver-full)

  *** ** * ** ***

  A [driver](https://fuchsia.dev/docs/glossary#driver) that is available in the Fuchsia image and not critical for bootstrapping the system. These drivers are loaded from the system's storage, so they need to be loaded after the [boot drivers](https://fuchsia.dev/docs/glossary#boot-driver) have enabled storage (for example, USB drivers, networking drivers). Base drivers reside in the [base packages](https://fuchsia.dev/docs/concepts/packages/package#base-packages).

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Boot+driver%22 "Edit the glossary")

  ### Boot driver

  A [driver](https://fuchsia.dev/docs/glossary#driver) that exists in the [Zircon Boot Image (ZBI)](https://fuchsia.dev/docs/glossary#zircon-boot-image) and is needed for bootstrapping the system (for example, storage drivers).
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Boot driver-full)

  *** ** * ** ***

  A [driver](https://fuchsia.dev/docs/glossary#driver) that exists in the [Zircon Boot Image (ZBI)](https://fuchsia.dev/docs/glossary#zircon-boot-image) and is needed for bootstrapping the system (for example, storage drivers). The [Zircon Boot Image (ZBI)](https://fuchsia.dev/docs/glossary#zircon-boot-image) has limited space for such [drivers](https://fuchsia.dev/docs/glossary#driver), a constraint that does not generally apply to [base drivers](https://fuchsia.dev/docs/glossary#base-driver).

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Bringup%22 "Edit the glossary")

  ### Bringup

  The process of getting Fuchsia to run on a new [board](https://fuchsia.dev/docs/glossary#board).
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Bringup-full)

  *** ** * ** ***

  Bringup is the catchall term for all of the engineering work related to getting Fuchsia to run on a new [board](https://fuchsia.dev/docs/glossary#board). The term "bringup" should not be used for situations where Fuchsia support for the board already exists. For example, flashing a Fuchsia image onto a VIM3 is not bringup. The original engineering work of implementing the drivers and so on so that Fuchsia can run on the VIM3 is bringup.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Bringup-also)

  #### Information related to Bringup

  - [Board](https://fuchsia.dev/docs/glossary#board)
  - [Bringup Product Definition](https://fuchsia.dev/docs/development/build/software_assembly/bringup)
  - [](https://fuchsia.dev/docs/development/boards/bringup)
  [](https://fuchsia.dev/docs/development/boards/bringup)
  - [](https://fuchsia.dev/docs/development/boards/bringup)["Board" definition](https://fuchsia.dev/docs/contribute/governance/rfcs/0111_fuchsia_hardware_specifications#document-definitions)
  - [Install Fuchsia on a Khadas VIM3 board](https://fuchsia.dev/docs/development/hardware/khadas-vim3)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Bus+driver%22 "Edit the glossary")

  ### Bus driver

  A [driver](https://fuchsia.dev/docs/glossary#driver) for a device that has multiple children.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Bus driver-full)

  *** ** * ** ***

  A [driver](https://fuchsia.dev/docs/glossary#driver) for a device that has multiple children. For example, hardware interfaces like PCI specify a topology in which a single controller is used to interface with multiple devices connected to it. In that situation, the driver for the controller would be a bus driver. A bus driver does not necessarily correspond to a physical bus.

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Cache+directory%22 "Edit the glossary")

  ### Cache directory

  A private directory, that may be cleared by the system at any time, within which a component instance may cache data local to the device.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Cache directory-full)

  *** ** * ** ***

  A private directory, that may be cleared by the system at any time, within which a component instance may cache data local to the device. Similar to a [data directory](https://fuchsia.dev/docs/glossary#data-directory), except that the contents of a cache directory may be cleared by the system at any time, such as when the device is under storage pressure. Canonically mapped to `/cache` in the component instance's [namespace](https://fuchsia.dev/docs/glossary#namespace).

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Cache directory-also)

  #### Information related to Cache directory

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Capability%22 "Edit the glossary")

  ### Capability

  A value that combines an object reference and a set of rights.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Capability-full)

  *** ** * ** ***

  A capability is a value that combines an object reference and a set of rights. When a program has a capability it is conferred the privilege to perform certain actions using that capability. A [handle](https://fuchsia.dev/docs/glossary#handle) is a common example for a capability.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Capability-also)

  #### Information related to Capability

  - [Capability routing](https://fuchsia.dev/docs/glossary#capability-routing)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Capability+routing%22 "Edit the glossary")

  ### Capability routing

  A way for one component instance to give capabilities to another component instance.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Capability routing-full)

  *** ** * ** ***

  A way for one [component instance](https://fuchsia.dev/docs/glossary#component-instance) to give [capabilities](https://fuchsia.dev/docs/glossary#capability) to another instance over the [component instance tree](https://fuchsia.dev/docs/glossary#component-instance-tree). [Component manifests](https://fuchsia.dev/docs/glossary#component-manifest) define how routing takes place, with syntax for [service capabilities](https://fuchsia.dev/docs/glossary#service-capability), [directory capabilities](https://fuchsia.dev/docs/glossary#directory-capability), and [storage capabilities](https://fuchsia.dev/docs/glossary#storage-capability).

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Capability routing-also)

  #### Information related to Capability routing

  - [Capability](https://fuchsia.dev/docs/glossary#capability)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Channel%22 "Edit the glossary")

  ### Channel

  An IPC primitive provided by Zircon.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Channel-full)

  *** ** * ** ***

  A channel is an IPC primitive provided by Zircon. It is a bidirectional, datagram-like transport that can transfer small messages including [handles](https://fuchsia.dev/docs/glossary#handle). [FIDL](https://fuchsia.dev/docs/glossary#fidl) protocols typically use channels as their underlying transport.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Channel-also)

  #### Information related to Channel

  - [Channel overview](https://fuchsia.dev/docs/reference/kernel_objects/channel)
  - [Update channel usage policy](https://fuchsia.dev/docs/contribute/governance/policy/update_channel_usage_policy)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Character+key%22 "Edit the glossary")

  ### Character key

  A key that sends characters to the computer.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Character key-full)

  *** ** * ** ***

  A key that sends characters to the computer. This definition does not specifically account for the effect of key composition and dead keys, which are present on certain keyboard layouts, but is operational enough for effective use.

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Child+component+instance%22 "Edit the glossary")

  ### Child component instance

  A child component instance is a component instance that is owned by another instance, the [parent](https://fuchsia.dev/docs/glossary#parent-component-instance).

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Child component instance-also)

  #### Information related to Child component instance

  - [Component](https://fuchsia.dev/docs/glossary#component)
  - [Components](https://fuchsia.dev/docs/concepts/components/v2/introduction)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Child+node%22 "Edit the glossary")

  ### Child node

  A [node](https://fuchsia.dev/docs/glossary#node) that receives [resources](https://fuchsia.dev/docs/glossary#resource) from [parent driver(s)](https://fuchsia.dev/docs/glossary#parent-driver).

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Child node-also)

  #### Information related to Child node

  - [Drivers and nodes](https://fuchsia.dev/docs/concepts/drivers/drivers_and_nodes)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22CIPD%22 "Edit the glossary")

  ### CIPD

  A cloud service for storing and distributing packages. Packages can be arbitrary collections of files, but most often contain prebuilt binaries.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#CIPD-full)

  *** ** * ** ***

  The Fuchsia project uses CIPD to download, publish, and distribute compiled software such as the Fuchsia SDK. [Jiri](https://fuchsia.dev/docs/glossary#jiri) has built-in support for versioning and downloading CIPD packages.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#CIPD-also)

  #### Information related to CIPD

  - [CIPD source code](https://chromium.googlesource.com/infra/luci/luci-go/+/refs/heads/main/cipd)
  - [CIPD web UI](https://chrome-infra-packages.appspot.com/)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22colocate%22 "Edit the glossary")

  ### colocate

  A [driver](https://fuchsia.dev/docs/glossary#driver) is colocated with another driver when they share the same [driver host](https://fuchsia.dev/docs/glossary#driver-host).

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#colocate-also)

  #### Information related to colocate

  - [Driver framework (DFv2)](https://fuchsia.dev/docs/concepts/drivers/driver_framework#driver_host)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Compat+driver%22 "Edit the glossary")

  ### Compat driver

  A Driver Framework v2 (DFv2) [driver](https://fuchsia.dev/docs/glossary#driver) that wraps a Driver Framework v1 (DFv1) driver so that the DFv1 driver can run in a DFv2 environment.

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Component%22 "Edit the glossary")

  ### Component

  Components are the common abstraction that defines how all software is described, sandboxed, and executed on a Fuchsia system.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Component-full)

  *** ** * ** ***

  Components are the common abstraction that defines how all software (regardless of source, programming language, or runtime) is described, sandboxed, and executed on a Fuchsia system. Components may specify a binary executable, and may be composed of multiple child components.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Component-also)

  #### Information related to Component

  - [Components](https://fuchsia.dev/docs/concepts/components/v2/introduction)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Component+collection%22 "Edit the glossary")

  ### Component collection

  A node in the component instance tree whose children are dynamically instantiated rather than statically defined in a component manifest.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Component collection-full)

  *** ** * ** ***

  A node in the [component instance tree](https://fuchsia.dev/docs/glossary#component-instance-tree) whose children are dynamically instantiated rather than statically defined in a [component manifest](https://fuchsia.dev/docs/glossary#component-manifest).

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Component collection-also)

  #### Information related to Component collection

  - [Components](https://fuchsia.dev/docs/concepts/components/v2/introduction)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Component+configuration%22 "Edit the glossary")

  ### Component configuration

  The process of tailoring a component instance to the context it's running in.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Component configuration-full)

  *** ** * ** ***

  The process of tailoring a component instance to the context it's running in. This includes defining and delivering the data that a component can use to understand and adapt to the context in which it was launched.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Component configuration-also)

  #### Information related to Component configuration

  - [Component Configuration](https://fuchsia.dev/docs/concepts/components/configuration)
  - [Configuration Mechanisms](https://fuchsia.dev/docs/development/components/configuration/mechanisms)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Component+configuration+data%22 "Edit the glossary")

  ### Component configuration data

  Data supplied to a component instance that it can use to understand and adapt to the context in which it was launched.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Component configuration data-full)

  *** ** * ** ***

  Data supplied to a component instance that it can use to understand and adapt to the context in which it was launched.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Component configuration data-also)

  #### Information related to Component configuration data

  - [Component Configuration](https://fuchsia.dev/docs/concepts/components/configuration)
  - [Configuration Mechanisms](https://fuchsia.dev/docs/development/components/configuration/mechanisms)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Component+declaration%22 "Edit the glossary")

  ### Component declaration

  A FIDL table that includes information about a component.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Component declaration-full)

  *** ** * ** ***

  A component declaration is a [fidl](https://fuchsia.dev/docs/glossary#fidl) table ([fuchsia.sys2.ComponentDecl](https://fuchsia.dev/sdk/fidl/fuchsia.component.decl/component.fidl)) that includes information about a [component](https://fuchsia.dev/docs/glossary#component)'s runtime configuration, [capabilities](https://fuchsia.dev/docs/glossary#capability) it [exposes](https://fuchsia.dev/docs/glossary#expose), [offers](https://fuchsia.dev/docs/glossary#offer), and [uses](https://fuchsia.dev/docs/glossary#use).

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Component declaration-also)

  #### Information related to Component declaration

  - [Components](https://fuchsia.dev/docs/concepts/components/v2/introduction)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Component+framework%22 "Edit the glossary")

  ### Component framework

  An application framework for declaring and managing [components](https://fuchsia.dev/docs/glossary#component), consisting of build tools, APIs, conventions, and system services.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Component framework-also)

  #### Information related to Component framework

  - [Components](https://fuchsia.dev/docs/concepts/components/v2/introduction)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Component+instance%22 "Edit the glossary")

  ### Component instance

  A specific runtime instantiation of a particular [component](https://fuchsia.dev/docs/glossary#component) at a specific location in the component instance tree at runtime.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Component instance-also)

  #### Information related to Component instance

  - [Components](https://fuchsia.dev/docs/concepts/components/v2/introduction)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Component+instance+tree%22 "Edit the glossary")

  ### Component instance tree

  A tree structure that represents the runtime state of parent-child relationships [component instances](https://fuchsia.dev/docs/glossary#component-instance).
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Component instance tree-full)

  *** ** * ** ***

  A tree structure that represents the runtime state of parent-child relationships between [component instances](https://fuchsia.dev/docs/glossary#component-instance). If instance A launches instance B then in the tree A will be the parent of B. The component instance tree is used to route capabilities such that parents can [offer](https://fuchsia.dev/docs/glossary#offer) capabilities to their children to [use](https://fuchsia.dev/docs/glossary#use), and children can [expose](https://fuchsia.dev/docs/glossary#expose) capabilities for their parents to expose to their parents or offer to other children.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Component instance tree-also)

  #### Information related to Component instance tree

  - [Components](https://fuchsia.dev/docs/concepts/components/v2/introduction)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Component+manager%22 "Edit the glossary")

  ### Component manager

  A system service that lets [component instances](https://fuchsia.dev/docs/glossary#component-instance) manage their children and [capability routing](https://fuchsia.dev/docs/glossary#capability-routing) between them, thus implementing the [component instancetree](https://fuchsia.dev/docs/glossary#component-instance-tree).
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Component manager-full)

  *** ** * ** ***

  A system service that lets [component instances](https://fuchsia.dev/docs/glossary#component-instance) manage their children and [capability routing](https://fuchsia.dev/docs/glossary#capability-routing) between them, thus implementing the [component instancetree](https://fuchsia.dev/docs/glossary#component-instance-tree). Component manager is the system service that implements the component runtime.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Component manager-also)

  #### Information related to Component manager

  - [Components](https://fuchsia.dev/docs/concepts/components/v2/introduction)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Component+manifest%22 "Edit the glossary")

  ### Component manifest

  A binary file ending in `.cm` that encodes a [component declaration](https://fuchsia.dev/docs/glossary#component-declaration), often distributed as part of a [package](https://fuchsia.dev/docs/glossary#package). The term is sometimes used interchangeably with [component manifest source](https://fuchsia.dev/docs/glossary#component-manifest-source).
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Component manifest-full)

  *** ** * ** ***

  A binary file ending in `.cm` that encodes a [component declaration](https://fuchsia.dev/docs/glossary#component-declaration), often distributed as part of a [package](https://fuchsia.dev/docs/glossary#package). The `cmc` tool generates a component manifest from a [component manifest source](https://fuchsia.dev/docs/glossary#component-manifest-source) file.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Component manifest-also)

  #### Information related to Component manifest

  - [Component manifests](https://fuchsia.dev/docs/concepts/components/v2/component_manifests)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Component+manifest+source%22 "Edit the glossary")

  ### Component manifest source

  A JSON5 file with a `.cml` extension that describes a component's declaration, and is compiled by \[cmc\] to produce a \[component manifest\].
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Component manifest source-full)

  *** ** * ** ***

  A JSON5 file with a `.cml` extension that describes a component's declaration, and is compiled by \[cmc\] to produce a \[component manifest\].

  The file contains information about a \[component\]'s executable and runtime configuration (if any), any child \[component\]s, as well as \[capability routing\] between itself, its parent, and its children.

  <br />

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Component manifest source-also)

  #### Information related to Component manifest source

  - [Component manifests](https://fuchsia.dev/docs/concepts/components/v2/component_manifests)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Component+manifest+facet%22 "Edit the glossary")

  ### Component manifest facet

  Additional component manifest metadata.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Component manifest facet-full)

  *** ** * ** ***

  Additional metadata that is carried in a [component manifest](https://fuchsia.dev/docs/glossary#component-manifest). This is an extension point to the [framework](https://fuchsia.dev/docs/glossary#component-framework).

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Component manifest facet-also)

  #### Information related to Component manifest facet

  - [Component manifests](https://fuchsia.dev/docs/concepts/components/v2/component_manifests)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Component+instance+identifier%22 "Edit the glossary")

  ### Component instance identifier

  A unique, stable identifer for a component instance.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Component instance identifier-full)

  *** ** * ** ***

  A unique, stable identifer for a component instance. The instance id is the canonical identifier for a component instance. The component runtime uses this to key a component's persistent resources, if it has any. While a component instance's moniker may change, its instance ID remains the same.

  Instance IDs are assigned to component instances using a [component ID index](https://fuchsia.dev/docs/development/components/component_id_index).

  <br />

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Component instance identifier-also)

  #### Information related to Component instance identifier

  - [Components](https://fuchsia.dev/docs/concepts/components/v2/introduction)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Component+topology%22 "Edit the glossary")

  ### Component topology

  Collective term for the component instance tree and the capability routes over that tree.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Component topology-full)

  *** ** * ** ***

  The component topology describes the set of relationships between component instances in a Fuchsia system. It consists of the parent-child relationships of the [component instance tree](https://fuchsia.dev/docs/glossary#component-instance-tree) as well as the [capability routes](https://fuchsia.dev/docs/glossary#capability-routing) over that tree.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Component topology-also)

  #### Information related to Component topology

  - [Components](https://fuchsia.dev/docs/concepts/components/v2/introduction)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Component+URL%22 "Edit the glossary")

  ### Component URL

  URL that identifies a component's declaration and package.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Component URL-full)

  *** ** * ** ***

  URL that identifies a component's declaration and package, most often used when instantiating a component. Example: `fuchsia-pkg://fuchsia.com/stash#meta/stash_secure.cm`.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Component URL-also)

  #### Information related to Component URL

  - [fuchsia-pkg URL](https://fuchsia.dev/docs/glossary#fuchsia-pkg-url)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Composite+driver%22 "Edit the glossary")

  ### Composite driver

  A [driver](https://fuchsia.dev/docs/glossary#driver) that only binds to a [composite node](https://fuchsia.dev/docs/glossary#composite-node). A driver can be defined as a composite via its [bind rules](https://fuchsia.dev/docs/glossary#bind-rules).

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Composite driver-also)

  #### Information related to Composite driver

  - [Driver and nodes](https://fuchsia.dev/docs/concepts/drivers/drivers_and_nodes)

  #### Guides related to Composite driver

  - [Driver binding](https://fuchsia.dev/docs/development/drivers/concepts/device_driver_model/driver-binding)
  - [Bind rules tutorial](https://fuchsia.dev/docs/development/drivers/tutorials/bind-rules-tutorial)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Composite+node%22 "Edit the glossary")

  ### Composite node

  A [node](https://fuchsia.dev/docs/glossary#node) with multiple parents. The [driver](https://fuchsia.dev/docs/glossary#driver) that is bound to the composite node can access the combined [resources](https://fuchsia.dev/docs/glossary#resource) provided by the [parent drivers](https://fuchsia.dev/docs/glossary#parent-driver). Formerly known as a composite device.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Composite node-also)

  #### Information related to Composite node

  - [Driver and nodes](https://fuchsia.dev/docs/concepts/drivers/drivers_and_nodes)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Composite+node+specification%22 "Edit the glossary")

  ### Composite node specification

  A composite node specification is a mechanism for creating a [composite node](https://fuchsia.dev/docs/glossary#composite-node). It describe the [nodes](https://fuchsia.dev/docs/glossary#node) that can parent the composite node and the [driver](https://fuchsia.dev/docs/glossary#node) that can bind to the composite node.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Composite node specification-also)

  #### Information related to Composite node specification

  - [Composite nodes](https://fuchsia.dev/docs/development/drivers/developer_guide/create-a-composite-node)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Configuration+Capability%22 "Edit the glossary")

  ### Configuration Capability

  A [capability](https://fuchsia.dev/docs/glossary#capability) that provides a data value that a component can use for configuration. A component [using](https://fuchsia.dev/docs/glossary#use) a configuration capability will be able to read the value in it's structured configuration.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Configuration Capability-also)

  #### Information related to Configuration Capability

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Concurrent+device+driver%22 "Edit the glossary")

  ### Concurrent device driver

  A [hardware driver](https://fuchsia.dev/docs/glossary#hardware-driver) that supports multiple concurrent operations.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Concurrent device driver-full)

  *** ** * ** ***

  A [hardware driver](https://fuchsia.dev/docs/glossary#hardware-driver) that supports multiple concurrent operations. This may be, for example, through a hardware command queue or multiple device channels. From the perspective of the [core driver](https://fuchsia.dev/docs/glossary#core-driver), the device has multiple pending operations, each of which completes or fails independently. If the driven device can internally parallelize an operation, but can only have one operation outstanding at a time, it may be better implemented with a [sequential device driver](https://fuchsia.dev/docs/glossary#sequential-device-driver).

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Content%22 "Edit the glossary")

  ### Content

  Graphical content containing a bitmap that is attached to a [Transform](https://fuchsia.dev/docs/glossary#transform) in [Flatland](https://fuchsia.dev/docs/glossary#flatland). [Image](https://fuchsia.dev/docs/glossary#image), [Viewport](https://fuchsia.dev/docs/glossary#viewport) and [FilledRect](https://fuchsia.dev/docs/glossary#filledrect) are types of Contents.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Content-full)

  *** ** * ** ***

  Graphical content containing a bitmap that is attached to a [Transform](https://fuchsia.dev/docs/glossary#transform) in [Flatland](https://fuchsia.dev/docs/glossary#flatland). [Image](https://fuchsia.dev/docs/glossary#image), [Viewport](https://fuchsia.dev/docs/glossary#viewport) and [FilledRect](https://fuchsia.dev/docs/glossary#filledrect) are types of Contents. Each [Transform](https://fuchsia.dev/docs/glossary#transform) can have, at most, one attached Content. A Content inherits all of the attributes from its attached [Transform](https://fuchsia.dev/docs/glossary#transform).

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Core+driver%22 "Edit the glossary")

  ### Core driver

  A [driver](https://fuchsia.dev/docs/glossary#driver) that implements the application-facing RPC interface for a class of drivers.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Core driver-full)

  *** ** * ** ***

  A [driver](https://fuchsia.dev/docs/glossary#driver) that implements the application-facing RPC interface for a class of drivers (e.g. block drivers, ethernet drivers). It is hardware-agnostic. It communicates with a [hardware driver](https://fuchsia.dev/docs/glossary#hardware-driver) through [banjo](https://fuchsia.dev/docs/glossary#banjo) to service its requests.

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Core-sdk+tarball%22 "Edit the glossary")

  ### Core-sdk tarball

  The artifact containing Fuchsia APIs, Fuchsia tools, binaries, and metadata. Used to access the Fuchsia tools, or the Fuchsia APIs.

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Data+directory%22 "Edit the glossary")

  ### Data directory

  A private directory within which a [component instance](https://fuchsia.dev/docs/glossary#component-instance) may store data local to the device.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Data directory-full)

  *** ** * ** ***

  A private directory within which a [component instance](https://fuchsia.dev/docs/glossary#component-instance) may store data local to the device, canonically mapped to `/data` in the component instance's [namespace](https://fuchsia.dev/docs/glossary#namespace).

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Device+pixel+ratio%22 "Edit the glossary")

  ### Device pixel ratio

  The ratio between the display's physical pixels and the display's device independent pixels.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Device pixel ratio-full)

  *** ** * ** ***

  The ratio between the display's physical pixels and the display's device independent pixels. Each [logical](https://fuchsia.dev/docs/glossary#logical-pixels) or device independent pixel is displayed on screen by one or more physical pixels, as determined by this scale.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Device pixel ratio-also)

  #### Information related to Device pixel ratio

  - [physical pixels](https://fuchsia.dev/docs/glossary#physical-pixels)
  - [logical pixels](https://fuchsia.dev/docs/glossary#logical-pixels)
  - [RFC-0174](https://fuchsia.dev/docs/contribute/governance/rfcs/0174_scale_in_flatland)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Dictionary%22 "Edit the glossary")

  ### Dictionary

  A capability that bundles multiple capabilities together.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Dictionary-full)

  *** ** * ** ***

  A capability that bundles multiple capabilities together. A dictionary is a key-value data collection, where the key is a [capability name string](https://fuchsia.dev/reference/cml#names) and the value is a capability. The value itself may be another dictionary, which can be used to achieve directory-like nesting.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Dictionary-also)

  #### Information related to Dictionary

  - [dictionary](https://fuchsia.dev/docs/concepts/components/v2/capabilities/dictionary)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Directory+capability%22 "Edit the glossary")

  ### Directory capability

  A [capability](https://fuchsia.dev/docs/glossary#capability) that permits access to a filesystem directory by adding it to the [namespace](https://fuchsia.dev/docs/glossary#namespace) of the [component instance](https://fuchsia.dev/docs/glossary#component-instance) that [uses](https://fuchsia.dev/docs/glossary#use) it.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Directory capability-full)

  *** ** * ** ***

  A [capability](https://fuchsia.dev/docs/glossary#capability) that permits access to a filesystem directory by adding it to the [namespace](https://fuchsia.dev/docs/glossary#namespace) of the [component instance](https://fuchsia.dev/docs/glossary#component-instance) that [uses](https://fuchsia.dev/docs/glossary#use) it. If multiple [component instances](https://fuchsia.dev/docs/glossary#component-instance) are offered the same directory capability then they will have access to the same underlying filesystem directory.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Directory capability-also)

  #### Information related to Directory capability

  - [Capability](https://fuchsia.dev/docs/glossary#capability)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Dispatcher%22 "Edit the glossary")

  ### Dispatcher

  A dispatcher is an interface for scheduling asynchronous operations.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Dispatcher-full)

  *** ** * ** ***

  A dispatcher, when assigned to a [driver](https://fuchsia.dev/docs/glossary#driver), coordinates and performs asynchronous operations for the driver. A dispatcher mainly handles two tasks: it schedules asynchronous work to run on threads in a [driver host](https://fuchsia.dev/docs/glossary#driver-host) and it actually runs the work on those threads on behalf of a driver.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Dispatcher-also)

  #### Information related to Dispatcher

  - [Synchronized dispatcher](https://fuchsia.dev/docs/glossary#synchronized-dispatcher)

  #### Guides related to Dispatcher

  - [Driver dispatcher and threads](https://fuchsia.dev/docs/concepts/drivers/driver-dispatcher-and-threads)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Domain+object%22 "Edit the glossary")

  ### Domain object

  The corresponding class or data type in a target language (such as C++) used to represent a FIDL type. A domain object usually models an entity in a problem domain space.

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Driver%22 "Edit the glossary")

  ### Driver

  A driver is a dynamic shared library that enables and controls one or more [nodes](https://fuchsia.dev/docs/glossary#node).
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Driver-full)

  *** ** * ** ***

  A driver is a dynamic shared library that enables and controls one or more [nodes](https://fuchsia.dev/docs/glossary#node). Drivers are loaded into [driver hosts](https://fuchsia.dev/docs/glossary#driver-host) by the [driver manager](https://fuchsia.dev/docs/glossary#driver-manager).

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Driver-also)

  #### Information related to Driver

  - [Fuchsia driver development](https://fuchsia.dev/docs/development/drivers/developer_guide/driver-development)
  - [Driver source code](https://fuchsia.googlesource.com/fuchsia/+/refs/heads/main/src/devices)
  - [Drivers and nodes](https://fuchsia.dev/docs/concepts/drivers/drivers_and_nodes)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Driver+binding%22 "Edit the glossary")

  ### Driver binding

  The process where a [driver](https://fuchsia.dev/docs/glossary#driver) is [matched](https://fuchsia.dev/docs/glossary#driver-matching) to a [node](https://fuchsia.dev/docs/glossary#node), started, and then handed the node's [resources](https://fuchsia.dev/docs/glossary#resource).
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Driver binding-full)

  *** ** * ** ***

  The process where a [driver](https://fuchsia.dev/docs/glossary#driver) is [matched](https://fuchsia.dev/docs/glossary#driver-matching) to a [node](https://fuchsia.dev/docs/glossary#node), started, and then handed the node's [resources](https://fuchsia.dev/docs/glossary#resource). A driver bound to a node can access the node's [resources](https://fuchsia.dev/docs/glossary#resource) and create [child nodes](https://fuchsia.dev/docs/glossary#child-node).

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Driver binding-also)

  #### Guides related to Driver binding

  - [Driver binding](https://fuchsia.dev/docs/development/drivers/concepts/device_driver_model/driver-binding)
  - [Bind rules tutorial](https://fuchsia.dev/docs/development/drivers/tutorials/bind-rules-tutorial)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Driver+host%22 "Edit the glossary")

  ### Driver host

  A process containing one or more device drivers.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Driver host-full)

  *** ** * ** ***

  A process containing one or more device drivers. They are created by the Driver Manager, as needed, to provide isolation between drivers for stability and security.

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Driver+index%22 "Edit the glossary")

  ### Driver index

  The driver index is a Fuchsia [component](https://fuchsia.dev/docs/glossary#component) that is responsible for keeping track of all available [drivers](https://fuchsia.dev/docs/glossary#driver).

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Driver+manager%22 "Edit the glossary")

  ### Driver manager

  The Driver Manager (formerly devmgr or devcoordinator) is responsible for enumerating, loading, and managing the life cycle of device drivers.

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Driver+matching%22 "Edit the glossary")

  ### Driver matching

  The process where the Driver Framework finds a [driver](https://fuchsia.dev/docs/glossary#driver) and assigns it to a [node](https://fuchsia.dev/docs/glossary#node). A driver that's assigned to the node is considered as a matched driver.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Driver matching-also)

  #### Guides related to Driver matching

  - [Driver binding](https://fuchsia.dev/docs/development/drivers/concepts/device_driver_model/driver-binding)
  - [Bind rules tutorial](https://fuchsia.dev/docs/development/drivers/tutorials/bind-rules-tutorial)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Driver+runtime%22 "Edit the glossary")

  ### Driver runtime

  The driver runtime is an in-process runtime modeled after the Zircon kernel that enables [colocated](https://fuchsia.dev/docs/glossary#colocate) drivers to communicate with each other locally. It is much more efficient than communicating using Zircon [channels](https://fuchsia.dev/docs/glossary#channel).
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Driver runtime-full)

  *** ** * ** ***

  The driver runtime is an in-process runtime modeled after the Zircon kernel that enables [colocated](https://fuchsia.dev/docs/glossary#colocate) drivers to communicate with each other locally. It is much more efficient than communicating using Zircon [channels](https://fuchsia.dev/docs/glossary#channel). It also provides a set of primitives mirroring Zircon kernel objects and a threading model for [drivers](https://fuchsia.dev/docs/glossary#driver) which allows for the sharing of Zircon threads.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Driver runtime-also)

  #### Information related to Driver runtime

  - [Driver runtime](https://fuchsia.dev/docs/concepts/drivers/driver_framework#driver_runtime)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Driver+transport%22 "Edit the glossary")

  ### Driver transport

  The driver transport is a transport system in FIDL that's implemented on top of [channels.](https://fuchsia.dev/docs/glossary#driver-runtime)
  [*** ** * ** ***](https://fuchsia.dev/docs/glossary#driver-runtime)[Related links](https://fuchsia.dev/fuchsia-src/glossary#Driver transport-also)

  #### Information related to Driver transport

  - [Using new C++ bindings over the driver transport](https://fuchsia.dev/docs/development/languages/fidl/tutorials/cpp/topics/driver-transport)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Environment%22 "Edit the glossary")

  ### Environment

  A container for a set of components.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Environment-full)

  *** ** * ** ***

  A container for a set of components, which provides a way to manage their lifecycle and provision services for them. All components in an environment receive access to (a subset of) the environment's services.

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Ephemeral+driver%22 "Edit the glossary")

  ### Ephemeral driver

  A [driver](https://fuchsia.dev/docs/glossary#driver) that is not included in the [board](https://fuchsia.dev/docs/glossary#board) configuration. These drivers are loaded from the [universe package set\<\> at runtime.](https://fuchsia.dev/docs/concepts/packages/package#universe-packages)
  [*** ** * ** ***](https://fuchsia.dev/docs/concepts/packages/package#universe-packages)
[](https://fuchsia.dev/docs/concepts/packages/package#universe-packages)
- [](https://fuchsia.dev/docs/concepts/packages/package#universe-packages)[](https://fuchsia.dev/docs/concepts/packages/package#universe-packages)[](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Escher%22 "Edit the glossary")

  ### Escher

  Graphics library for compositing user interface content.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Escher-full)

  *** ** * ** ***

  Graphics library for compositing user interface content. Its design is inspired by modern real-time and physically based rendering techniques though Fuchsia anticipates most of the content it renders to have non-realistic or stylized qualities suitable for user interfaces.

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Experimental-sdk+tarball%22 "Edit the glossary")

  ### Experimental-sdk tarball

  The artifact containing experimental Fuchsia APIs.

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22expose%22 "Edit the glossary")

  ### expose

  A keyword for a component instance to indicate that it is making a capability available to its parent to route.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#expose-full)

  *** ** * ** ***

  A [component instance](https://fuchsia.dev/docs/glossary#component-instance) may use the `expose` [manifest](https://fuchsia.dev/docs/glossary#component-manifest) keyword to indicate that it is making a capability available to its parent to route. Parents may [offer](https://fuchsia.dev/docs/glossary#offer) a capability exposed by any of their children to their other children or to their parent, but they cannot [use](https://fuchsia.dev/docs/glossary#use) it themselves in order to avoid dependency cycles.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#expose-also)

  #### Information related to expose

  - [Capability](https://fuchsia.dev/docs/glossary#capability)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Exposed+directory%22 "Edit the glossary")

  ### Exposed directory

  A file system directory that contains the set of [exposed](https://fuchsia.dev/docs/glossary#expose) capabilities for a [component](https://fuchsia.dev/docs/glossary#component).
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Exposed directory-full)

  *** ** * ** ***

  A file system directory provided by [component manager](https://fuchsia.dev/docs/glossary#component-manager) that contains the set of capabilities [exposed](https://fuchsia.dev/docs/glossary#expose) by a [component](https://fuchsia.dev/docs/glossary#component) to its parent.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Exposed directory-also)

  #### Information related to Exposed directory

  - [Capability](https://fuchsia.dev/docs/glossary#capability)
  - [Outgoing directory](https://fuchsia.dev/docs/glossary#outgoing-directory)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22FAR%22 "Edit the glossary")

  ### FAR

  The Fuchsia Archive Format is a container for files to be used by Zircon and Fuchsia.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#FAR-also)

  #### Information related to FAR

  - [Fuchsia archive format (FAR)](https://fuchsia.dev/docs/development/source_code/archive_format)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22FBL%22 "Edit the glossary")

  ### FBL

  FBL is the Fuchsia Base Library, which is shared between kernel and userspace.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#FBL-also)

  #### Information related to FBL

  - [C++ in Zircon](https://fuchsia.dev/docs/development/languages/c-cpp/cxx)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22FDF%22 "Edit the glossary")

  ### FDF

  The Fuchsia driver framework is the documentation, APIs, and ABIs necessary to build Zircon device drivers.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#FDF-full)

  *** ** * ** ***

  The Fuchsia driver framework is the documentation, APIs, and ABIs necessary to build Zircon device drivers. Device drivers are implemented as ELF shared libraries loaded by Zircon's driver manager.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#FDF-also)

  #### Information related to FDF

  - [Fuchsia driver framework](https://fuchsia.dev/docs/development/drivers/concepts/fdf)
  - [FDF includes](https://fuchsia.googlesource.com/fuchsia/+/refs/heads/main/src/lib/ddk/include/ddk/)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22fdio%22 "Edit the glossary")

  ### fdio

  The core Fuchsia method for talking about files and other I/O primitives are FIDL protocols over Zircon channels.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#fdio-full)

  *** ** * ** ***

  It provides the implementation of posix-style open(), close(), read(), write(), select(), poll(), etc, against the RemoteIO RPC protocol. These APIs are return- not-supported stubs in libc, and linking against libfdio overrides these stubs with functional implementations. Sometimes referred to as "POSIX Lite".

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#fdio-also)

  #### Information related to fdio

  - [fdio source code](https://cs.opensource.google/fuchsia/fuchsia/+/main:sdk/lib/fdio/)
  - [RFC-0082](https://fuchsia.dev/docs/contribute/governance/rfcs/0082_starnix)
  - [Life of an Open](https://fuchsia.dev/docs/concepts/filesystems/life_of_an_open)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22ffx%22 "Edit the glossary")

  ### ffx

  Fuchsia's primary tool for working with a Fuchsia system and Fuchsia tools. Example use cases include stream logs from a device and start an emulator.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#ffx-also)

  #### Information related to ffx

  - [ffx](https://fuchsia.dev/reference/tools/sdk/ffx)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22FHO%22 "Edit the glossary")

  ### FHO

  Fuchsia Host Objects is a set of APIs connecting \`ffx\` with subtools.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#FHO-full)

  *** ** * ** ***

  Fuchsia Host Objects is a set of APIs connecting \`ffx\` with subtools. It acts as a compatibility layer between the program and a device or virtual machine running Fuchsia, allowing the tool to ignore all the setup necessary to connect to the device, establish FIDL channels to services on the device, and log useful information about the interactions.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#FHO-also)

  #### Information related to FHO

  - [FHO](https://fuchsia.dev/docs/development/tools/ffx/architecture/fho)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22FilledRect%22 "Edit the glossary")

  ### FilledRect

  A solid color rectangle can be attached to a [Transform](https://fuchsia.dev/docs/glossary#transform) in [Flatland](https://fuchsia.dev/docs/glossary#flatland).
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#FilledRect-full)

  *** ** * ** ***

  A solid color rectangle can be attached to a [Transform](https://fuchsia.dev/docs/glossary#transform) in [Flatland](https://fuchsia.dev/docs/glossary#flatland). FilledRect is type of a [Content](https://fuchsia.dev/docs/glossary#content).

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22FIDL%22 "Edit the glossary")

  ### FIDL

  The Fuchsia Interface Definition Language (FIDL) is a language for defining protocols.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#FIDL-full)

  *** ** * ** ***

  The Fuchsia Interface Definition Language (FIDL) is a language for defining protocols that are typically used over [channels](https://fuchsia.dev/docs/glossary#channel). FIDL is programming language agnostic and has bindings for many popular languages, including C, C++, Dart, Go, and Rust. This approach lets system components written in a variety of languages interact seamlessly.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#FIDL-also)

  #### Guides related to FIDL

  - [FIDL](https://fuchsia.dev/docs/development/languages/fidl)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Flatland%22 "Edit the glossary")

  ### Flatland

  A [FIDL](https://fuchsia.dev/docs/glossary#fidl) protocol that allows sending 2D graphical content to [Scenic](https://fuchsia.dev/docs/glossary#scenic).
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Flatland-full)

  *** ** * ** ***

  The 2D composition API for Fuchsia graphics clients. Flatland clients can construct their scene graph and send to [Scenic](https://fuchsia.dev/docs/glossary#scenic) to compose into the shared scene graph that is submitted to the display.

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Fragment%22 "Edit the glossary")

  ### Fragment

  A fragment is a [node](https://fuchsia.dev/docs/glossary#node) that composes a Driver Framework v1 [composite node](https://fuchsia.dev/docs/glossary#composite-node). Each fragment binds to a fragment [driver](https://fuchsia.dev/docs/glossary#driver) which provides protocols and metadata to the composite node. Only used in Driver Framework v1.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Fragment-also)

  #### Information related to Fragment

  - [Composite nodes](https://fuchsia.dev/docs/development/drivers/developer_guide/create-a-composite-node)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22FTP%22 "Edit the glossary")

  ### FTP

  Deprecated, replaced by RFC. An FTP is the way developers can suggest changes to FIDL.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#FTP-full)

  *** ** * ** ***

  An FTP is the way developers can suggest changes to FIDL. After being written, an FTP goes through a formal review process where it is either accepted or rejected.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#FTP-also)

  #### Information related to FTP

  - [FIDL](https://fuchsia.dev/docs/glossary#fidl)
  - [Deprecated FTP process](https://fuchsia.dev/docs/contribute/governance/deprecated-ftp-process)

  #### Guides related to FTP

  - [Creating an RFC](https://fuchsia.dev/docs/contribute/governance/rfcs/create_rfc)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Fuchsia+API+surface%22 "Edit the glossary")

  ### Fuchsia API surface

  The Fuchsia API Surface is the combination of the [Fuchsia system interface](https://fuchsia.dev/docs/glossary#fuchsia-system-interface) and the client libraries included in the [Fuchsia IDK](https://fuchsia.dev/docs/glossary#fuchsia-idk).

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22FEMU%22 "Edit the glossary")

  ### FEMU

  The Fuchsia emulator (FEMU) is the default emulator for Fuchsia.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#FEMU-full)

  *** ** * ** ***

  The Fuchsia emulator (FEMU) is the default emulator for Fuchsia. It allows you to test Fuchsia components and applications without needing a Fuchsia device. FEMU is based on the [Android Emulator (AEMU)](https://developer.android.com/studio/run/emulator), which is a fork of [QEMU](https://www.qemu.org/).

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#FEMU-also)

  #### Information related to FEMU

  - [Fuchsia emulator (FEMU)](https://fuchsia.dev/docs/development/build/emulator)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22fuchsia-pkg+URL%22 "Edit the glossary")

  ### fuchsia-pkg URL

  A scheme that refers to a repository, a package, or a package resource.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#fuchsia-pkg URL-full)

  *** ** * ** ***

  A scheme that refers to a repository, a package, or a package resource. The syntax is `fuchsia-pkg://[/][#]`\]\`. For example, for the component `test_manager.cm` published under the package `test_manager`'s `meta` directory, from the `fuchsia.com` repository, its URL is `fuchsia-pkg://fuchsia.com/test_manager#meta/test_manager.cm`.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#fuchsia-pkg URL-also)

  #### Information related to fuchsia-pkg URL

  - [Fuchsia package URLs](https://fuchsia.dev/docs/concepts/packages/package_url)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Fuchsia+extension+for+VS+Code%22 "Edit the glossary")

  ### Fuchsia extension for VS Code

  An extension for Visual Studio Code (VsCode) supporting common developer workflows for Fuchsia, like environment set up, editing, debugging, and testing.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Fuchsia extension for VS Code-also)

  #### Information related to Fuchsia extension for VS Code

  - [Installing the Fuchsia developer extension](https://fuchsia.dev/docs/reference/tools/editors/vscode/fuchsia-ext-install)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Fuchsia+IDK%22 "Edit the glossary")

  ### Fuchsia IDK

  The Fuchsia IDK contains a small set of libraries and tools required to start building and running programs that target Fuchsia. The contents of the IDK represent the most basic contract that the Fuchsia platform developers offer to prospective developers.

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Fuchsia+provided+developer+artifacts%22 "Edit the glossary")

  ### Fuchsia provided developer artifacts

  Set of deliverables from the Fuchsia Authors that make it easier to develop components against Fuchsia. Some artifacts include: Fuchsia SDK, Fuchsia tools, components, and editor extensions.

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Fuchsia+SDK%22 "Edit the glossary")

  ### Fuchsia SDK

  The Fuchsia SDK is the set of APIs, tools, build system integrations, and language integration artifacts produced by Fuchsia that enable the production of software and products for and with Fuchsia.

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Fuchsia+SDK+with+Bazel%22 "Edit the glossary")

  ### Fuchsia SDK with Bazel

  An integration of the Bazel build system with the Fuchsia SDK. Enables developers to compile, run, and test their software with Bazel. Supports C++ through a bundled Clang toolchain.

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Fuchsia+System+Interface%22 "Edit the glossary")

  ### Fuchsia System Interface

  The binary interface that the Fuchsia operating system presents to software it runs.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Fuchsia System Interface-full)

  *** ** * ** ***

  The binary interface that the Fuchsia operating system presents to software it runs. For example, the entry points into the vDSO as well as all the FIDL protocols are part of the Fuchsia System Interface.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Fuchsia System Interface-also)

  #### Information related to Fuchsia System Interface

  - [Fuchsia System Interface](https://fuchsia.dev/docs/concepts/kernel/system)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Fuchsia+tools%22 "Edit the glossary")

  ### Fuchsia tools

  Programs designed to help work with Fuchsia. For example, tools to compile FIDL IDL (interactive data language), or tools to get logs from a device.

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Fuchsia+Volume+Manager%22 "Edit the glossary")

  ### Fuchsia Volume Manager

  Fuchsia Volume Manager (FVM) is a partition manager providing dynamically allocated groups of blocks known as slices into a virtual block address space.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Fuchsia Volume Manager-full)

  *** ** * ** ***

  Fuchsia Volume Manager (FVM) is a partition manager providing dynamically allocated groups of blocks known as slices into a virtual block address space. The FVM partitions provide a block interface enabling filesystems to interact with it in a manner largely consistent with a regular block device.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Fuchsia Volume Manager-also)

  #### Information related to Fuchsia Volume Manager

  - [Filesystems](https://fuchsia.dev/docs/concepts/filesystems/filesystems#fvm)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Function+key%22 "Edit the glossary")

  ### Function key

  The common name for the keys F1, F2, F3, ...
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Function key-full)

  *** ** * ** ***

  The common name for the keys F1, F2, F3, ...

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22GN%22 "Edit the glossary")

  ### GN

  GN is a meta-build system that generates build files.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#GN-full)

  *** ** * ** ***

  GN is a meta-build system that generates build files so that Fuchsia can be built with [Ninja](https://fuchsia.dev/docs/glossary#ninja). GN is fast and comes with solid tools to manage and explore dependencies. GN files, named \`BUILD.gn\`, are located all over the repository.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#GN-also)

  #### Information related to GN

  - [Language and operation](https://gn.googlesource.com/gn/+/HEAD/docs/language.md)
  - [Reference](https://gn.googlesource.com/gn/+/HEAD/docs/reference.md)
  - [Fuchsia build overview](https://fuchsia.dev/docs/development/build/overview)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22GraphicalPresenter%22 "Edit the glossary")

  ### GraphicalPresenter

  A [FIDL](https://fuchsia.dev/docs/glossary#fidl) protocol that organizes and presents graphical views.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#GraphicalPresenter-full)

  *** ** * ** ***

  A [FIDL](https://fuchsia.dev/docs/glossary#fidl) protocol that organizes and presents graphical views. The presented views can be annotated with [element annotations](https://fuchsia.dev/reference/fidl/fuchsia.element#Annotation) to communicate presentation properties to the `GraphicalPresenter`. This protocol is used, for example, when a [window manager](https://fuchsia.dev/docs/glossary#window-manager) accompanying a [session component](https://fuchsia.dev/docs/glossary#session-component) written in Rust wants to delegate presentation logic to a child [component](https://fuchsia.dev/docs/glossary#component) written in Flutter, or when a window manager delegates the presentation of element views launched by the session component to a child component that implements `GraphicalPresenter`.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#GraphicalPresenter-also)

  #### Information related to GraphicalPresenter

  - [`fuchsia.element.GraphicalPresenter`](https://fuchsia.dev/reference/fidl/fuchsia.element#GraphicalPresenter)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Handle%22 "Edit the glossary")

  ### Handle

  A Handle is how a userspace process refers to a [kernel object](https://fuchsia.dev/docs/glossary#kernel-object).
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Handle-full)

  *** ** * ** ***

  A Handle is how a userspace process refers to a [kernel object](https://fuchsia.dev/docs/glossary#kernel-object). They can be passed to other processes over [channels](https://fuchsia.dev/docs/glossary#channel).

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Handle-also)

  #### Information related to Handle

  - [Zircon Handle](https://fuchsia.dev/docs/concepts/kernel/handles)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Hardware+driver%22 "Edit the glossary")

  ### Hardware driver

  A [driver](https://fuchsia.dev/docs/glossary#driver) that controls a device.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Hardware driver-full)

  *** ** * ** ***

  A [driver](https://fuchsia.dev/docs/glossary#driver) that controls a device. It receives requests from its [core driver](https://fuchsia.dev/docs/glossary#core-driver) and translates them into hardware-specific operations. Hardware drivers strive to be as thin as possible. They do not support RPC interfaces, ideally have no local worker threads (though that is not a strict requirement), and some will have interrupt handling threads. They may be further classified into [sequential device drivers](https://fuchsia.dev/docs/glossary#sequential-device-driver) and [concurrent device drivers](https://fuchsia.dev/docs/glossary#concurrent-device-driver).

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Image%22 "Edit the glossary")

  ### Image

  A bitmap containing pixels that can be attached to a [Transform](https://fuchsia.dev/docs/glossary#transform) in [Flatland](https://fuchsia.dev/docs/glossary#flatland).
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Image-full)

  *** ** * ** ***

  A bitmap containing pixels that can be attached to a [Transform](https://fuchsia.dev/docs/glossary#transform) in [Flatland](https://fuchsia.dev/docs/glossary#flatland). Image is type of a [Content](https://fuchsia.dev/docs/glossary#content).

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Images+Config%22 "Edit the glossary")

  ### Images Config

  This configuration file that tells the Software Assembly tooling which images to generate and how to generate them.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Images Config-full)

  *** ** * ** ***

  The Images Config is an internal contract between the two subsystems of Software Assembly -- Product Assembly and Image Assembly. The structure and contents of this file is subject to rapid iteration, as it is consumed only by the Software Assembly team.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Images Config-also)

  #### Guides related to Images Config

  - [Product and Image Assembly](https://cs.opensource.google/fuchsia/fuchsia/+/main:src/developer/ffx/plugins/assembly)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22In-tree%22 "Edit the glossary")

  ### In-tree

  Relating to or describing an action to be performed inside a Fuchsia checkout.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#In-tree-full)

  *** ** * ** ***

  For instance, checking out the Fuchsia source code is a prerequisite for performing any in-tree development. The \`fx build\` command is used to operate the in-tree build system.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#In-tree-also)

  #### Information related to In-tree

  #### Guides related to In-tree

  - [Get Fuchsia source code](https://fuchsia.dev/docs/get-started/get_fuchsia_source)
  - [Build Fuchsia](https://fuchsia.dev/docs/get-started/build_fuchsia)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Input+Method+Editor%22 "Edit the glossary")

  ### Input Method Editor

  Software for sophisticated text input.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Input Method Editor-full)

  *** ** * ** ***

  From [MSDN](https://docs.microsoft.com/en-us/windows/apps/design/input/input-method-editors): "A software component that enables a user to input text in a language that can not be represented easily on a standard keyboard."

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Input Method Editor-also)

  #### Information related to Input Method Editor

  - Input Method Editor API

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Input+Method+Editor+API%22 "Edit the glossary")

  ### Input Method Editor API

  API to implement IMEs
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Input Method Editor API-full)

  *** ** * ** ***

  A FIDL API offered by the keyboard subsystem for integrating with built-in or custom made input method editors.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Input Method Editor API-also)

  #### Information related to Input Method Editor API

  - Input Method Editor

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Input+Pipeline%22 "Edit the glossary")

  ### Input Pipeline

  Fuchsia system component for handling input-related events.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Input Pipeline-full)

  *** ** * ** ***

  A library and component for processing of input-related events on Fuchsia in a sequential manner. The input pipeline mediates between driver-level input and "UI Framework" facing services. One of the input pipeline's tasks is to apply a keymap by attaching a key meaning to a key event.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Input Pipeline-also)

  #### Information related to Input Pipeline

  - key event
  - key meaning
  - keymap
  - RFC-0096

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22InputDeviceBinding%22 "Edit the glossary")

  ### InputDeviceBinding

  A Rust trait in the input pipeline client library.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#InputDeviceBinding-full)

  *** ** * ** ***

  <br />

  Represents a connection to a physical input device (e.g. mouse, keyboard) in an input pipeline. An `InputDeviceBinding` does the following:
  - Connects to an [`InputReport`](https://fuchsia.dev/docs/glossary#inputreport) file located at `/dev/class/input-report/XXX`.
  - Generates [`InputEvent`](https://fuchsia.dev/docs/glossary#inputevent)'s from the `DeviceDescriptor` and incoming [`inputReport`](https://fuchsia.dev/docs/glossary#inputreport).

  The input pipeline creates and owns `InputDeviceBinding`\`s as new input peripherals are connected to a device.

  <br />

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#InputDeviceBinding-also)

  #### Information related to InputDeviceBinding

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22InputDeviceDescriptor%22 "Edit the glossary")

  ### InputDeviceDescriptor

  Describes the ranges of values a particular input device can generate.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#InputDeviceDescriptor-full)

  *** ** * ** ***

  A property of the Rust struct [`InputReport`](https://fuchsia.dev/docs/glossary#inputreport) of type `enum InputDeviceDescriptor` and a [FIDL](https://fuchsia.dev/docs/glossary#fidl) table. For example, a `InputDeviceDescriptor` contains the keys available on the keyboard, and a `InputDeviceDescriptor::Touch` contains the maximum number of touch contacts and the range of `x-` and `y-` values each contact can take on.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#InputDeviceDescriptor-also)

  #### Information related to InputDeviceDescriptor

  - [`enum InputDeviceDescriptor`](https://fuchsia.googlesource.com/fuchsia/+/refs/heads/main/src/ui/lib/input_pipeline/src/input_device.rs)
  - [`fuchsia.input.report.DeviceDescriptor`](https://fuchsia.dev/reference/fidl/fuchsia.input.report#DeviceDescriptor)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22InputDeviceEvent%22 "Edit the glossary")

  ### InputDeviceEvent

  Represents an input event from an input device.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#InputDeviceEvent-full)

  *** ** * ** ***

  A property of the Rust struct [`InputEvent`](https://fuchsia.dev/docs/glossary#inputevent). `InputDeviceEvent`\`s contain more context than the raw [`InputReport`\`s they are parsed from. For example, `InputDeviceEvent::Keyboard` contains all the pressed keys, as well as the key's phase (pressed, released, etc.).](https://fuchsia.dev/docs/glossary#inputreport)
  [](https://fuchsia.dev/docs/glossary#inputreport)[*** ** * ** ***](https://fuchsia.dev/docs/glossary#inputreport)[Related links](https://fuchsia.dev/fuchsia-src/glossary#InputDeviceEvent-also)

  #### Information related to InputDeviceEvent

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22InputEvent%22 "Edit the glossary")

  ### InputEvent

  An event from an input device containing context (a `InputDeviceDescriptor` and state (e.g. phase and location of a button press). The input pipeline generates `InputEvent`\`s from hardware signals.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#InputEvent-full)

  *** ** * ** ***

  A Rust struct in the [input pipeline client library](https://fuchsia.dev/docs/glossary#input-pipeline).

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#InputEvent-also)

  #### Information related to InputEvent

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22InputHandler%22 "Edit the glossary")

  ### InputHandler

  <br />

  Represents a client of [`InputEvent`](https://fuchsia.dev/docs/glossary#inputevent) in an input pipeline. When an [`InputHandler`](https://fuchsia.dev/docs/glossary#inputhandler) receives an [`InputEvent`](https://fuchsia.dev/docs/glossary#inputevent), it does at least one of the following:

  <br />

  - Forwards the [`InputEvent`](https://fuchsia.dev/docs/glossary#inputevent) to the relevant client component.
  - Outputs a vector of [`InputEvent`](https://fuchsia.dev/docs/glossary#inputevent)'s for the next [`InputHandler`](https://fuchsia.dev/docs/glossary#inputhandler) to process.

  <br />

  [Full description](https://fuchsia.dev/fuchsia-src/glossary#InputHandler-full)

  *** ** * ** ***

  A Rust trait in the [input pipeline client library](https://fuchsia.dev/docs/glossary#input-pipeline).

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#InputHandler-also)

  #### Information related to InputHandler

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22InputReport%22 "Edit the glossary")

  ### InputReport

  A stateless representation of an event from a physical input device.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#InputReport-full)

  *** ** * ** ***

  A [FIDL](https://fuchsia.dev/docs/glossary#fidl) struct. Zircon generates `InputReport`\`s from HID Reports.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#InputReport-also)

  #### Information related to InputReport

  - [`fuchsia.ui.InputReport`](https://fuchsia.dev/reference/fidl/fuchsia.ui.input#InputReport)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Jiri%22 "Edit the glossary")

  ### Jiri

  Jiri is a tool for multi-repo development.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Jiri-full)

  *** ** * ** ***

  It is used to checkout the Fuchsia codebase. It supports various subcommands, which makes it easy for developers to manage their local checkouts.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Jiri-also)

  #### Information related to Jiri

  - [`jiri` reference](https://fuchsia.googlesource.com/jiri/+/HEAD/README.md)
  - [`jiri` subcommands](https://fuchsia.googlesource.com/jiri/+/HEAD/README.md#main-commands-are)
  - [`jiri` behaviour](https://fuchsia.googlesource.com/jiri/+/HEAD/behaviour.md)
  - [`jiri` tips and tricks](https://fuchsia.googlesource.com/jiri/+/HEAD/behaviour.md)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Job%22 "Edit the glossary")

  ### Job

  A [kernel object](https://fuchsia.dev/docs/glossary#kernel-object) that groups a set of related [processes](https://fuchsia.dev/docs/glossary#process), their child processes, and their jobs (if any).
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Job-full)

  *** ** * ** ***

  Every process in the system belongs to a job and all jobs form a single rooted tree.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Job-also)

  #### Information related to Job

  - [Job](https://fuchsia.dev/docs/reference/kernel_objects/job)
  - [Jobs](https://fuchsia.dev/docs/concepts/process/jobs)
  - [Root job](https://fuchsia.dev/docs/glossary#root-job)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Kernel+object%22 "Edit the glossary")

  ### Kernel object

  A kernel object is a kernel data structure that is used to regulate access to system resources such as memory, I/O, processor time and access to other processes.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Kernel object-full)

  *** ** * ** ***

  Userspace can only reference kernel objects through [handles](https://fuchsia.dev/docs/glossary#handle).

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Kernel object-also)

  #### Information related to Kernel object

  - [Kernel objects](https://fuchsia.dev/docs/reference/kernel_objects/objects)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Key%22 "Edit the glossary")

  ### Key

  A switch that can be pressed or released.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Key-full)

  *** ** * ** ***

  A switch that can be pressed or released. Usually, [but not always](https://shop.daskeyboard.com/collections/all-mechanical-keyboards/products/das-keyboard-4-ultimate?variant=594321629), it has a keycap with one or more symbols written on it. It is traditionally a mechanical, or electromechanical device, but modern input modes have seen purely software key implementations, as a user-interface element coupled with a touch-screen, or a computer mouse for actuation. ISO/IEC 9995-1:2009 does not explicitly define the term key, but notes that a keyboard has keys that can be actuated. We will use the term physical key to emphasize a key on a physical keyboard where otherwise confusion would arise.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Key-also)

  #### Information related to Key

  - keyboard
  - keycap
  - physical key

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Key+actuation%22 "Edit the glossary")

  ### Key actuation

  Physical action to cause a key effect.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Key actuation-full)

  *** ** * ** ***

  Doing something to a key to cause a key effect. For example, pressing a key. Actuation is probably a better term to use in general, since while each press is an actuation, not every key actuation has to be a key press. Some keys may be actuated by a tap, or a throw switch, or a twist etc. It's OK to use "key press" when talking about pressable keys in the narrow sense - such as on a standard PC keyboard. Prefer "key actuation" in formal contexts, or where precision is important.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Key actuation-also)

  #### Information related to Key actuation

  - Physical key
  - Key effect

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Key+binding%22 "Edit the glossary")

  ### Key binding

  A key chord and its key effect, together.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Key binding-full)

  *** ** * ** ***

  A pair of a key chord and a key effect. For example pressing "Ctrl+O" causes the "Open File" dialog box to be shown.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Key binding-also)

  #### Information related to Key binding

  - Key actuation
  - Key chord
  - Key effect

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Key+event%22 "Edit the glossary")

  ### Key event

  A message that reports a state change for a key.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Key event-full)

  *** ** * ** ***

  A message reporting a state change associated with a single key. "Key 'A' has just been pressed" is a representation of a key event. On Fuchsia, a key event can only ever be delivered to a View that is in focus. This feature ensures that potentially sensitive keyboard input is always delivered only to the View that is permitted to receive it.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Key event-also)

  #### Information related to Key event

  - Keyboard
  - Physical key
  - View

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Key+chord%22 "Edit the glossary")

  ### Key chord

  One or more simultaneous key actuations.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Key chord-full)

  *** ** * ** ***

  One or more key actuations that happen at the same time. It may be impossible to actuate a specific key chord without actuating other key chords first. For example, on mechanical keyboards, "Ctrl+Alt+Del" can not be actuated until at least one of "Ctrl", or "Alt" or "Del" is actuated first, as it is physically impossible to press all the three keys at the same time. This is not a universal definition, so expect variations across time periods, operating systems, and schools of thought. For example, KDE uses the term "chord" to mean "key sequence". But this usage seems unusual and not intuitive, as it deviates from the use of "chord" in music, so we don't follow this precedent and recommend against following it.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Key chord-also)

  #### Information related to Key chord

  - Physical key

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Key+consumer%22 "Edit the glossary")

  ### Key consumer

  The final destination for the events generated by the keyboard subsystem.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Key consumer-full)

  *** ** * ** ***

  A client that is the final destination for the events generated by the keyboard subsystem. Prefer the term consumer to client, since the keyboard subsystem has multiple collaborators, each of which can be a client in the context of a particular 1:1 collaboration.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Key consumer-also)

  #### Information related to Key consumer

  - key event
  - keyboard subsystem

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Key+effect%22 "Edit the glossary")

  ### Key effect

  Effect that results when a key is actuated.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Key effect-full)

  *** ** * ** ***

  "Effect that results when a key is actuated, depending on the active level, and possibly by the concurrent operation of a qualifier key or keys." (ISO/IEC 9995-1:2009, section 4)
  Example: the letter "a" appearing on a screen is a key effect, caused by an actuation of the key with the keycap "a" on the keyboard.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Key effect-also)

  #### Information related to Key effect

  - key
  - keycap
  - keyboard

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Key+event+API%22 "Edit the glossary")

  ### Key event API

  An API that provides discrete key events.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Key event API-full)

  *** ** * ** ***

  E.g. fuchsia.ui.input3. API that gives access to discrete key events, possibly annotated with information about the currently applicable keyboard layout. At this stage, events corresponding to button presses have not yet been interpreted as language. May be used for limited use-cases such as controlling a game, but most clients should prefer the text edit API.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Key event API-also)

  #### Information related to Key event API

  - Text Edit API

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Key+meaning%22 "Edit the glossary")

  ### Key meaning

  An encoding corresponding to the meaning a key event has to the key consumer, with all layout and other mappings that apply.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Key meaning-full)

  *** ** * ** ***

  An encoding corresponding to the meaning a key event has to the key consumer, with all layout and other mappings that apply.

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Key+sequence%22 "Edit the glossary")

  ### Key sequence

  A sequence of key chords.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Key sequence-full)

  *** ** * ** ***

  A sequence of key chords. Example: in Emacs, pressing C-x followed by C-s saves the current buffer. Since a single key actuation is a key chord (see definition above), every sequence of single key presses such as "hello world" is also a key sequence.

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Keyboard%22 "Edit the glossary")

  ### Keyboard

  A means for input of information by a human being.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Keyboard-full)

  *** ** * ** ***

  An "\[...\] intermediate element between a user and an information processing system. The keyboard is specifically intended as a means for input of information by a human being." ([ISO/IEC 9995-1:2009](https://www.iso.org/obp/ui/#iso:std:iso-iec:9995:-1:ed-3:v1:en), section 5). This [link](https://en.wikipedia.org/wiki/Computer_keyboard) has some examples of computer keyboards.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Keyboard-also)

  #### Information related to Keyboard

  - physical keyboard
  - virtual keyboard

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Keyboard+subsystem%22 "Edit the glossary")

  ### Keyboard subsystem

  The set of Fuchsia system services that process keyboard and text related input.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Keyboard subsystem-full)

  *** ** * ** ***

  The set of Fuchsia system services that process keyboard and text related input.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Keyboard subsystem-also)

  #### Information related to Keyboard subsystem

  - Keyboard
  - key event

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Keyboard+map%22 "Edit the glossary")

  ### Keyboard map

  A map that transforms a sequence of physical keys into a key meaning.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Keyboard map-full)

  *** ** * ** ***

  A map that transforms a sequence of physical keys into a key meaning. Also known as keymap, or keyboard layout.

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Keyboard+shortcut%22 "Edit the glossary")

  ### Keyboard shortcut

  A special kind of key binding.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Keyboard shortcut-full)

  *** ** * ** ***

  A key chord that appears in some key binding. All keyboard shortcuts are chords, but only chords that have a key effect associated with them are shortcuts. On Fuchsia, a distinctive feature of shortcuts is that they can be routed to Views that are not in focus. This allows top-level Views such as the graphical shell, or Accessibility, to install system-wide shortcuts and intercept them instead of yielding them over to child views. Contrast to the behavior of key events, which are only ever delivered to focused views.

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Keycap+symbol%22 "Edit the glossary")

  ### Keycap symbol

  The symbol displayed on top of a key.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Keycap symbol-full)

  *** ** * ** ***

  The symbol that is displayed on a key of the physical keyboard, or on the UI item representing a virtual keyboard button that acts as a key. The user's expectation is that actuating a key with a specific symbol on the keycap would, by default, cause that symbol to be communicated to the computer.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Keycap symbol-also)

  #### Information related to Keycap symbol

  - Physical key
  - Keyboard
  - Key meaning

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22KOID%22 "Edit the glossary")

  ### KOID

  A Kernel Object Identifier.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#KOID-also)

  #### Information related to KOID

  - [Kernel object](https://fuchsia.dev/docs/glossary#kernel-object)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Legacy+Assembly+Input+Bundle%22 "Edit the glossary")

  ### Legacy Assembly Input Bundle

  The "Legacy AIB" is an AIB that includes both platform and product artifacts that are specified via the GN build arguments such as base_product_labels and bootfs_labels.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Legacy Assembly Input Bundle-full)

  *** ** * ** ***

  <br />

  The Legacy Assembly Input Bundle (LAIB) is an AIB that includes both platform and product artifacts that are specified via the GN build arguments such as base_product_labels and bootfs_labels. Eventually, all the contents of the Legacy AIB will be migrated to platform AIBs or the Assembly Config, and it will be deleted entirely. As of November 2022 (last time this definition was updated), Software Assembly is not feature-complete, and products have not been fully migrated over to using Software Assembly. Many of the current platform features and product code lack the support in Assembly to define them inside the Assembly Config, therefore we invented a temporary solution.

  <br />

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Legacy Assembly Input Bundle-also)

  #### Information related to Legacy Assembly Input Bundle

  - [Assembly Input Bundle (AIB)](https://fuchsia.dev/docs/glossary#assembly-input-bundle-aib)
  - [Assembly Config](https://fuchsia.dev/docs/glossary#assembly-config)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Logical+pixels%22 "Edit the glossary")

  ### Logical pixels

  [View](https://fuchsia.dev/docs/glossary#view)'s device independent pixels.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Logical pixels-full)

  *** ** * ** ***

  [View](https://fuchsia.dev/docs/glossary#view)'s device independent pixels. This affects the content layout. Each pixel is displayed on-screen by one or more physical pixels, as determined by [device pixel ratio](https://fuchsia.dev/docs/glossary#device-pixel-ratio).

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Logical pixels-also)

  #### Information related to Logical pixels

  - [device pixel ratio](https://fuchsia.dev/docs/glossary#device-pixel-ratio)
  - [logical pixels](https://fuchsia.dev/docs/glossary#logical-pixels)
  - [RFC-0174](https://fuchsia.dev/docs/contribute/governance/rfcs/0174_scale_in_flatland)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Lock+state%22 "Edit the glossary")

  ### Lock state

  Caps lock, num lock, fn lock, scroll lock
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Lock state-full)

  *** ** * ** ***

  A "state set by actuating a lock key, singly or in combination with a \[modifier\] key". (ISO/IEC 9995-1:2009, section 4.5) Example lock state keys on PC keyboards are: CapsLock, NumLock, FnLock, ScrollLock.

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22LK%22 "Edit the glossary")

  ### LK

  Little Kernel (LK) is the embedded kernel that formed the core of the Zircon Kernel.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#LK-full)

  *** ** * ** ***

  LK is more microcontroller-centric and lacks support for MMUs, userspace, system calls -- features that Zircon added.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#LK-also)

  #### Information related to LK

  - [LK on Github](https://github.com/littlekernel/lk)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Mnemonic%22 "Edit the glossary")

  ### Mnemonic

  Underlined character in a menu option.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Mnemonic-full)

  *** ** * ** ***

  The underlined character in a menu ([Wikipedia](https://en.wikipedia.org/wiki/Mnemonics_(keyboard))). For example, the "F" in "File" which is accessed by pressing "Alt+F". Mnemonics are localized. For example, the "File" menu in an English version of a program has "F" as the mnemonic, so "Alt+F" would be used to access. The Dutch version of the same program would have "Bestanden" as the title of that very same menu, so "Alt+B" would be used for access. Mnemonics differ from shortcuts: in an application an "Open" command could have "O" as mnemonic, but Ctrl+F12 as a shortcut.

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Modifier+key%22 "Edit the glossary")

  ### Modifier key

  A key that modifies the effect of other keys.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Modifier key-full)

  *** ** * ** ***

  A "key whose operation has no immediate effect, but which, for as long as it is actuated, modifies the effects of other keys. A modifier key can be, for example, \[...\] a control key." (ISO/IEC 9995-1:2009, section 4.17)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Moniker%22 "Edit the glossary")

  ### Moniker

  Identifies a specific component instance in the component tree using a topological path.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Moniker-full)

  *** ** * ** ***

  A component's moniker is defined as a path to the component instance in the [component instance tree](https://fuchsia.dev/docs/glossary#component-instance-tree).

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Moniker-also)

  #### Information related to Moniker

  - [Monikers](https://fuchsia.dev/docs/concepts/components/v2/identifiers#monikers)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Musl%22 "Edit the glossary")

  ### Musl

  Fuchsia's standard C library (libc) is based on Musl Libc.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Musl-also)

  #### Information related to Musl

  - [Source code](https://fuchsia.dev/zircon/third_party/ulib/musl)
  - [Musl homepage](https://www.musl-libc.org/)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Namespace%22 "Edit the glossary")

  ### Namespace

  A namespace is the composite hierarchy of files, directories, sockets, [services](https://fuchsia.dev/docs/glossary#service), and other named objects offered to [components](https://fuchsia.dev/docs/glossary#component) by their [environment](https://fuchsia.dev/docs/glossary#environment).

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Namespace-also)

  #### Information related to Namespace

  - [Fuchsia Namespaces](https://fuchsia.dev/docs/concepts/process/namespaces)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Netstack%22 "Edit the glossary")

  ### Netstack

  An implementation of TCP, UDP, IP, and related networking protocols for Fuchsia.

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Ninja%22 "Edit the glossary")

  ### Ninja

  The build system executing Fuchsia builds.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Ninja-full)

  *** ** * ** ***

  It is a small build system with a strong emphasis on speed. Unlike other systems, Ninja files are not supposed to be manually written but should be generated by other systems, such as [GN](https://fuchsia.dev/docs/glossary#gn) in Fuchsia.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Ninja-also)

  #### Information related to Ninja

  - [Ninja rules in GN](https://gn.googlesource.com/gn/+/HEAD/docs/reference.md#ninja_rules)
  - [Fuchsia build overview/a\>](https://fuchsia.dev/docs/development/build/overview)
  [](https://fuchsia.dev/docs/development/build/overview)

  [#### Guides related to Ninja](https://fuchsia.dev/docs/development/build/overview)[](https://fuchsia.dev/docs/development/build/overview)
  - [](https://fuchsia.dev/docs/development/build/overview)[Ninja manual](https://ninja-build.org/manual.html)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Node%22 "Edit the glossary")

  ### Node

  An entity in the Driver Framework that contains a set of [resources](https://fuchsia.dev/docs/glossary#resource) that a [driver](https://fuchsia.dev/docs/glossary#driver) can interact with and a set of properties. A node can be thought of as a hardware or virtual device, or a node can be a part of a hardware device.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Node-also)

  #### Information related to Node

  - [Drivers and nodes](https://fuchsia.dev/docs/concepts/drivers/drivers_and_nodes)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Node+properties%22 "Edit the glossary")

  ### Node properties

  Node properties are key-value pairs contained in [nodes](https://fuchsia.dev/docs/glossary#node). They are used by [bind rules](https://fuchsia.dev/docs/glossary#bind-rules) to evaluate whether a [driver](https://fuchsia.dev/docs/glossary#driver) is [matched](https://fuchsia.dev/docs/glossary#driver-matching) to the node.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Node properties-full)

  *** ** * ** ***

  Node properties are key-value pairs contained in [nodes](https://fuchsia.dev/docs/glossary#node). They are used by [bind rules](https://fuchsia.dev/docs/glossary#bind-rules) to evaluate whether a [driver](https://fuchsia.dev/docs/glossary#driver) is [matched](https://fuchsia.dev/docs/glossary#driver-matching) to the node.The keys can be of integer or string type. The values can be of integer, string, boolean, or enum type.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Node properties-also)

  #### Information related to Node properties

  - [Drivers and nodes](https://fuchsia.dev/docs/concepts/drivers/drivers_and_nodes)
  - [Driver binding](https://fuchsia.dev/docs/glossary#driver-binding)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Node+topology%22 "Edit the glossary")

  ### Node topology

  The node topology describes the parent-child relationships between [nodes](https://fuchsia.dev/docs/glossary#node) in a Fuchsia system. These nodes form a single node topology, expressed in a [directed acyclic graph](https://en.wikipedia.org/wiki/Directed_acyclic_graph).

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Node topology-also)

  #### Information related to Node topology

  - [Drivers and nodes](https://fuchsia.dev/docs/concepts/drivers/drivers_and_nodes)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22offer%22 "Edit the glossary")

  ### offer

  A keyword for a component instance to route a capability that was exposed to it.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#offer-full)

  *** ** * ** ***

  A [component instance](https://fuchsia.dev/docs/glossary#component-instance) may use the `offer` [manifest](https://fuchsia.dev/docs/glossary#component-manifest) keyword to route a capability that was [exposed](https://fuchsia.dev/docs/glossary#expose) to it to one of its children (other than the child that exposed it).

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#offer-also)

  #### Information related to offer

  - [Capability](https://fuchsia.dev/docs/glossary#capability)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Out-of-tree%22 "Edit the glossary")

  ### Out-of-tree

  Relating to or describing an action that can be done outside of a Fuchsia checkout.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Out-of-tree-full)

  *** ** * ** ***

  For instance, the IDK allows developing for Fuchsia outside the Fuchsia tree. The SDK tools are available as prebuilts so developers don't need to check out Fuchsia code and build the same tools from source code using Fuchsia's in-tree build system.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Out-of-tree-also)

  #### Information related to Out-of-tree

  #### Guides related to Out-of-tree

  - [Integrator Development Kit (IDK)](https://fuchsia.dev/docs/development/idk/README)
  - [SDK tools](https://fuchsia.dev/reference/tools/sdk)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Outgoing+directory%22 "Edit the glossary")

  ### Outgoing directory

  A file system directory where a [component](https://fuchsia.dev/docs/glossary#component) serves protocol [handles](https://fuchsia.dev/docs/glossary#handle) to capabilities it has [exposed](https://fuchsia.dev/docs/glossary#expose).
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Outgoing directory-full)

  *** ** * ** ***

  A file system directory where a [component](https://fuchsia.dev/docs/glossary#component) serves protocol [handles](https://fuchsia.dev/docs/glossary#handle) to capabilities it has [exposed](https://fuchsia.dev/docs/glossary#expose). Other components connect to these exposed capabilities using the handles in this directory.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Outgoing directory-also)

  #### Information related to Outgoing directory

  - [Capability](https://fuchsia.dev/docs/glossary#capability)
  - [Exposed directory](https://fuchsia.dev/docs/glossary#exposed-directory)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22OTA%22 "Edit the glossary")

  ### OTA

  Over-the-air update.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#OTA-full)

  *** ** * ** ***

  Over-the-air updates are changes made to device software (generally the full system, but possibly smaller modules as well) without re-initializing the device's disk via a pave or flash.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#OTA-also)

  #### Guides related to OTA

  - [System OTA documentation](https://fuchsia.dev/docs/concepts/packages/ota)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Package%22 "Edit the glossary")

  ### Package

  A unit of software distribution in Fuchsia.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Package-full)

  *** ** * ** ***

  A unit of software distribution in Fuchsia. It is a collection of files, such as manifests, metadata, zero or more executables (e.g. [components](https://fuchsia.dev/docs/glossary#component)), and assets. Individual Fuchsia packages can be identified using [fuchsia-pkg URL](https://fuchsia.dev/docs/glossary#fuchsia-pkg-url). Packages can contain other packages (known as [Subpackages](https://fuchsia.dev/docs/glossary#subpackage)).

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Package-also)

  #### Information related to Package

  - [Fuchsia packages](https://fuchsia.dev/docs/concepts/packages/package)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Package+URL+(Absolute)%22 "Edit the glossary")

  ### Package URL (Absolute)

  A fully-qualified package URL using the "fuchsia-pkg" scheme that identifies a complete location for a Fuchsia package.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Package URL (Absolute)-full)

  *** ** * ** ***

  Also known as the Fully-Qualified Package URL, a url with the "fuchsia-pkg" scheme `(fuchsia-pkg:///)` representing a fully qualified location for a fuchsia package. For example: `fuchsia-pkg://fuchsia.com/package_name`

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Package URL (Absolute)-also)

  #### Information related to Package URL (Absolute)

  - [fuchsia-pkg URL](https://fuchsia.dev/docs/glossary#fuchsia-pkg-url)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Package+URL+(Pinned+Absolute)%22 "Edit the glossary")

  ### Package URL (Pinned Absolute)

  An absolute package URL with a "hash" parameter that pins it to one specific version of the package.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Package URL (Pinned Absolute)-full)

  *** ** * ** ***

  A package URL with a URL parameter "hash" with value that is the merkle hash of the package's meta.far `(fuchsia-pkg:///?hash=)`. Pinning a package is the act of uniquely identifying a version of a package, through the hash URL parameter. For example: `fuchsia-pkg://fuchsia.com/package_name?hash=716178364a3a0fc8be2850f88a7414f95ed895489bc0f74bc2d60d78d3682c65`

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Package URL (Pinned Absolute)-also)

  #### Information related to Package URL (Pinned Absolute)

  - [fuchsia-pkg URL](https://fuchsia.dev/docs/glossary#fuchsia-pkg-url)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Parent+component+instance%22 "Edit the glossary")

  ### Parent component instance

  A parent component instance is a component instance that owns other instances called [child component instances](https://fuchsia.dev/docs/glossary#child-component-instance)

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Parent component instance-also)

  #### Information related to Parent component instance

  - [](https://fuchsia.dev/docs/glossary#component)
  [](https://fuchsia.dev/docs/glossary#component)
  - [](https://fuchsia.dev/docs/glossary#component)[Components](https://fuchsia.dev/docs/concepts/components/v2/introduction)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Parent+driver%22 "Edit the glossary")

  ### Parent driver

  A driver that provides [resources](https://fuchsia.dev/docs/glossary#resource) from its [node](https://fuchsia.dev/docs/glossary#node) to its [child nodes](https://fuchsia.dev/docs/glossary#child-node).

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Parent driver-also)

  #### Information related to Parent driver

  - [Drivers and nodes](https://fuchsia.dev/docs/concepts/drivers/drivers_and_nodes)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Paver%22 "Edit the glossary")

  ### Paver

  A tool in Zircon that installs partition images to internal storage of a device.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Paver-also)

  #### Guides related to Paver

  - [Guide for installing Fuchsia with paver](https://fuchsia.dev/docs/development/hardware/README)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Physical+keyboard%22 "Edit the glossary")

  ### Physical keyboard

  A physical device for text entry.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Physical keyboard-full)

  *** ** * ** ***

  A physical device for text entry, which relies on an arrangement of keys.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Physical keyboard-also)

  #### Information related to Physical keyboard

  - physical key
  - keycap
  - key effect

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Physical+keyboard+layout%22 "Edit the glossary")

  ### Physical keyboard layout

  A positioning of keycaps on a physical keyboard.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Physical keyboard layout-full)

  *** ** * ** ***

  A positioning of keycaps on a physical keyboard.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Physical keyboard layout-also)

  #### Information related to Physical keyboard layout

  - keycap
  - physical keyboard

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Physical+keycode%22 "Edit the glossary")

  ### Physical keycode

  The numeric code associated with a key, as assigned by Fuchsia.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Physical keycode-full)

  *** ** * ** ***

  The numeric code associated with a key, as assigned by the operating system. In Fuchsia, the physical key codes are unsigned 32-bit integers, derived from the USB HID usage tables. The USB HID usage page number is encoded in the upper 16 bits, and the usage ID within a page is encoded in the lower 16 bits. An encoding of a physical key code used in Fuchsia: see input.Key.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Physical keycode-also)

  #### Information related to Physical keycode

  - Physical key
  - Scan code

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Physical+pixels%22 "Edit the glossary")

  ### Physical pixels

  Display's physical pixel count.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Physical pixels-full)

  *** ** * ** ***

  Display's physical pixel count. i.e. if there are 4K and FHD variants of the same size display, 4K has 3840x2160 physical pixels and FHD has 1920x1080 physical pixels. However, they may have the same amount of [logical pixels](https://fuchsia.dev/docs/glossary#logical-pixels) so the layout of the content looks the same.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Physical pixels-also)

  #### Information related to Physical pixels

  - [device pixel ratio](https://fuchsia.dev/docs/glossary#device-pixel-ratio)
  - [logical pixels](https://fuchsia.dev/docs/glossary#logical-pixels)
  - [RFC-0174](https://fuchsia.dev/docs/contribute/governance/rfcs/0174_scale_in_flatland)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22PID%22 "Edit the glossary")

  ### PID

  A process KOID. A KOID that uniquely identifies a process object.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#PID-also)

  #### Information related to PID

  - [](https://fuchsia.dev/docs/glossary#koid)
  [](https://fuchsia.dev/docs/glossary#koid)

  [](https://fuchsia.dev/docs/glossary#koid)[*** ** * ** ***](https://fuchsia.dev/docs/glossary#koid)
[](https://fuchsia.dev/docs/glossary#koid)
- [](https://fuchsia.dev/docs/glossary#koid)[](https://fuchsia.dev/docs/glossary#koid)[](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Platform%22 "Edit the glossary")

  ### Platform

  The platform is the common foundation for products built using Fuchsia.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Platform-full)

  *** ** * ** ***

  Products built using Fuchsia share a common foundation, which is the underlying Fuchsia platform. The platform consists of (a) the core system, including the [Zircon](https://fuchsia.dev/docs/glossary#zircon) kernel, [component framework](https://fuchsia.dev/docs/glossary#component-framework), [driver framework](https://fuchsia.dev/docs/glossary#fdf), and software delivery subsystem, (b) services that let components share hardware resources, including the connectivity, graphics, media, and local storage subsystems, and (c) widely used components, including the web runtime, [POSIX compatibility layers](https://fuchsia.dev/docs/glossary#fdio), and diagnostics. Not every product uses every aspect of the platform. For example, products without displays do not use the graphics subsystem. The platform has a [versioned](https://fuchsia.dev/docs/contribute/governance/rfcs/0239_platform_versioning_in_practice), [stable binary interface](https://fuchsia.dev/docs/glossary#fuchsia-system-interface), which developers can target using the [Fuchsia SDK](https://fuchsia.dev/docs/glossary#fuchsia-sdk).

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Platform-also)

  #### Information related to Platform

  - [Product](https://fuchsia.dev/docs/glossary#product)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Platform+device%22 "Edit the glossary")

  ### Platform device

  A [node](https://fuchsia.dev/docs/glossary#node) added by the [board driver](https://fuchsia.dev/docs/glossary#board-driver) to the [platform bus](https://fuchsia.dev/docs/glossary#platform-bus).

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Platform device-also)

  #### Guides related to Platform device

  - [Platform Bus](https://fuchsia.dev/docs/development/drivers/concepts/device_driver_model/platform-bus)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Platform+bus%22 "Edit the glossary")

  ### Platform bus

  The first driver loaded in Fuchsia. The platform bus is the root driver and contains all the resources and privileges necessary to interact with hardware.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Platform bus-also)

  #### Guides related to Platform bus

  - [Platform Bus](https://fuchsia.dev/docs/development/drivers/concepts/device_driver_model/platform-bus)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Platform+source+tree%22 "Edit the glossary")

  ### Platform source tree

  The open source code hosted on [fuchsia.googlesource.com](http://fuchsia.googlesource.com/), which comprises the source code for Fuchsia.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Platform source tree-full)

  *** ** * ** ***

  A given Fuchsia system can include additional software from outside the platform source tree by adding the appropriate [Fuchsia package](https://fuchsia.dev/docs/glossary#package).

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Product%22 "Edit the glossary")

  ### Product

  A specification for an assembled system.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Product-full)

  *** ** * ** ***

  For instance, the Fuchsia platform defines products such as \`bringup\` and \`core\` in terms of build-time configuration values and a set of packages to assemble into a system image.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Product-also)

  #### Information related to Product

  - [Platform](https://fuchsia.dev/docs/glossary#platform)
  - [Package](https://fuchsia.dev/docs/glossary#package)
  - [Product owner](https://fuchsia.dev/docs/glossary#product-owner)

  #### Guides related to Product

  - [Bringup Product Definition](https://fuchsia.dev/docs/development/build/software_assembly/bringup)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Product+Bundle%22 "Edit the glossary")

  ### Product Bundle

  The set of artifacts representing a Fuchsia product which are needed to emulate, flash, boot, or update the product on a Fuchsia target.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Product Bundle-full)

  *** ** * ** ***

  A Product Bundle contains all the images required for an A/B/R Fuchsia target. Artifacts include, but are not limited to, the product image and packages associated with it.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Product Bundle-also)

  #### Information related to Product Bundle

  - [Product](https://fuchsia.dev/docs/glossary#product)
  - [Product Owner](https://fuchsia.dev/docs/glossary#product-owner)
  - [A/B/R](https://fuchsia.dev/docs/glossary#abr)

  #### Guides related to Product Bundle

  - [Product and Image Assembly](https://cs.opensource.google/fuchsia/fuchsia/+/main:src/developer/ffx/plugins/assembly/)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Product+Owner%22 "Edit the glossary")

  ### Product Owner

  Whoever defines a product, and is responsible for its provenance and releases.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Product Owner-also)

  #### Information related to Product Owner

  - [Package](https://fuchsia.dev/docs/glossary#product)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Process%22 "Edit the glossary")

  ### Process

  A [kernel object](https://fuchsia.dev/docs/glossary#kernel-object) that represents an instance of a program as a set of instructions that are executed by one or more [threads](https://fuchsia.dev/docs/glossary#thread) together with a collection of [capabilities](https://fuchsia.dev/docs/glossary#capability).
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Process-full)

  *** ** * ** ***

  Every process is contained in a [job](https://fuchsia.dev/docs/glossary#job).

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Process-also)

  #### Information related to Process

  - [Process overview](https://fuchsia.dev/docs/reference/kernel_objects/process)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Protocol%22 "Edit the glossary")

  ### Protocol

  In [FIDL](https://fuchsia.dev/docs/glossary#fidl), a protocol groups methods and events to describe how one process interacts with another.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Protocol-full)

  *** ** * ** ***

  In the component runtime, protocols are routed to and used by other components as [protocol capabilities](https://fuchsia.dev/docs/glossary#protocol-capability).

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Protocol-also)

  #### Information related to Protocol

  - [Protocol capability](https://fuchsia.dev/docs/glossary#protocol-capability)

  #### Guides related to Protocol

  - [FIDL protocols](https://fuchsia.dev/docs/concepts/fidl/overview)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Protocol+capability%22 "Edit the glossary")

  ### Protocol capability

  A [capability](https://fuchsia.dev/docs/glossary#capability) that permits communicating with a [protocol](https://fuchsia.dev/docs/glossary#protocol) over a [channel](https://fuchsia.dev/docs/glossary#channel) using a specified [FIDL](https://fuchsia.dev/docs/glossary#fidl) protocol.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Protocol capability-full)

  *** ** * ** ***

  The server end of the channel is held by the [component instance](https://fuchsia.dev/docs/glossary#component-instance) that provides the capability. The client end of the channel is given to the [component instance](https://fuchsia.dev/docs/glossary#component-instance) that [uses](https://fuchsia.dev/docs/glossary#use) the capability.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Protocol capability-also)

  #### Information related to Protocol capability

  - [Capability routing](https://fuchsia.dev/docs/glossary#capability-routing)

  #### Guides related to Protocol capability

  - [Protocol capabilities](https://fuchsia.dev/docs/concepts/components/v2/capabilities/protocol)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Realm%22 "Edit the glossary")

  ### Realm

  A subtree of component instances in the [component instance tree](https://fuchsia.dev/docs/glossary#component-instance-tree). Acts as a container for component instances and capabilities in the subtree.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Realm-also)

  #### Information related to Realm

  - [Realms](https://fuchsia.dev/docs/concepts/components/v2/realms)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Resource%22 "Edit the glossary")

  ### Resource

  Resources are contained in [nodes](https://fuchsia.dev/docs/glossary#node) and are used by [drivers](https://fuchsia.dev/docs/glossary#driver) for communication. There are multiple types of resources, including but not limited to: IPC, kernel, memory map, and I/O.

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Roller%22 "Edit the glossary")

  ### Roller

  A roller is an infrastructure job that watches for updates to a repository's pinned dependencies and automatically creates and submits a commit that updates the pinned version (a "roll") when it detects that a new version of a dependency is available.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Roller-full)

  *** ** * ** ***

  The Fuchsia project uses rollers to update pinned versions of repositories and [CIPD](https://chromium.googlesource.com/infra/luci/luci-go/+/HEAD/cipd/README.md) packages. Rollers can be configured to trigger automatically on new commits to a repository, run as a cron job that periodically polls for changes, or only be triggered manually.

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Root+job%22 "Edit the glossary")

  ### Root job

  The root of the job tree and the first job in the system.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Root job-full)

  *** ** * ** ***

  The root job is created by the kernel to allow \[userboot\](/docs/glossary#userboot) to begin execution.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Root job-also)

  #### Information related to Root job

  - [Job](https://fuchsia.dev/docs/glossary#job)
  - [Jobs](https://fuchsia.dev/docs/concepts/process/jobs)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Runner%22 "Edit the glossary")

  ### Runner

  A [component](https://fuchsia.dev/docs/glossary#component) that provides a runtime environment for other components, e.g. the ELF runner, the GTest runner.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Runner-full)

  *** ** * ** ***

  Every component needs a runner in order to launch. Components express their dependency on a runner in the component's [declaration](https://fuchsia.dev/docs/glossary#component-declaration). When the [component framework](https://fuchsia.dev/docs/glossary#component-framework) starts a component, it first determines the capabilities that the component should receive, then asks the component's runner to launch the component. The runner is responsible for creating any necessary processes, loading executable code, initializing language runtimes, handing control to the component's entry points, and terminating thecomponent when requested by the component framework.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Runner-also)

  #### Information related to Runner

  - [ELF runner](https://fuchsia.dev/docs/concepts/components/v2/elf_runner)
  - [Component runner](https://fuchsia.dev/docs/concepts/components/v2/capabilities/runner)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Scan+code%22 "Edit the glossary")

  ### Scan code

  A sequence of numeric values associated with a key.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Scan code-full)

  *** ** * ** ***

  A sequence of numeric values associated with a key, as assigned by the hardware controller of the physical keyboard.
  While standardized scan codes exist, keyboards are varied enough that operating systems usually have to map all scan code sequences into a single space of physical key codes.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Scan code-also)

  #### Information related to Scan code

  - key
  - physical keyboard

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Scenic%22 "Edit the glossary")

  ### Scenic

  Scenic is Fuchsia's system compositor, which composes graphical objects from multiple components into a shared scene graph.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Scenic-full)

  *** ** * ** ***

  Scenic includes views, input, compositor, and GPU services.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Scenic-also)

  #### Information related to Scenic

  - [Scenic concepts](https://fuchsia.dev/docs/concepts/ui/scenic)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22SDK+Atom%22 "Edit the glossary")

  ### SDK Atom

  A subset of files in the SDK.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#SDK Atom-full)

  *** ** * ** ***

  An \*SDK Atom\* is a collection of files that can be included in an SDK. Fuchsia represents SDK Atoms using the `sdk_atom` template in GN.

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Sequential+device+driver%22 "Edit the glossary")

  ### Sequential device driver

  A [hardware driver](https://fuchsia.dev/docs/glossary#hardware-driver) that will only service a single request at a time. The [core driver](https://fuchsia.dev/docs/glossary#core-driver) synchronizes and serializes all requests.

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Service%22 "Edit the glossary")

  ### Service

  In [FIDL](https://fuchsia.dev/docs/glossary#fidl), a service groups [protocols](https://fuchsia.dev/docs/glossary#protocol) to describe how one process interacts with another.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Service-full)

  *** ** * ** ***

  A service is used and routed to other components as a [service capability](https://fuchsia.dev/docs/glossary#service-capability).

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Service-also)

  #### Information related to Service

  - [Service capability](https://fuchsia.dev/docs/glossary#service-capability)

  #### Guides related to Service

  - [FIDL services](https://fuchsia.dev/docs/concepts/components/v2/capabilities/service)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Service+capability%22 "Edit the glossary")

  ### Service capability

  A [capability](https://fuchsia.dev/docs/glossary#capability) that permits communicating with a [service](https://fuchsia.dev/docs/glossary#service) over a [channel](https://fuchsia.dev/docs/glossary#channel) using a specified [FIDL](https://fuchsia.dev/docs/glossary#fidl) service.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Service capability-full)

  *** ** * ** ***

  The server end of the channel is held by the [component instance](https://fuchsia.dev/docs/glossary#component-instance) that provides the capability. The client end of the channel is given to the [component instance](https://fuchsia.dev/docs/glossary#component-instance) that [uses](https://fuchsia.dev/docs/glossary#use) the capability.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Service capability-also)

  #### Information related to Service capability

  - [Capability routing](https://fuchsia.dev/docs/glossary#capability-routing)

  #### Guides related to Service capability

  - [Service capabilities](https://fuchsia.dev/docs/concepts/components/v2/capabilities/service)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Session+component%22 "Edit the glossary")

  ### Session component

  A session component is a component that encapsulates a product's user experience and runs as a child of the platform \`session_manager\` component.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Session component-full)

  *** ** * ** ***

  A "session component" is a component. Each Fuchsia product encapsulates its user experience within a session component (and its descendent components). The term "user experience" is used broadly: it encompasses traditional graphical experiences with touch/mouse/keyboard interaction, as well as simpler experiences with a single RGB LED and several hardware buttons, or those with only network I/O.
  Simple products may specify a session component with no children, while complex products have many children of the session component, such as delegating graphical presentation responsibility to an accompanying [window manager](https://fuchsia.dev/docs/glossary#window-manager).

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Session component-also)

  #### Information related to Session component

  - [Component](https://fuchsia.dev/docs/glossary#component)

  #### Guides related to Session component

  - [Writing a "Hello World" session](https://fuchsia.dev/docs/development/sessions/writing-a-hello-world-session)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Session+launcher%22 "Edit the glossary")

  ### Session launcher

  A [FIDL](https://fuchsia.dev/docs/glossary#fidl) protocol, exposed by the [session manager](https://fuchsia.dev/docs/glossary#session-manager), used to start or restart [sessions](https://fuchsia.dev/docs/glossary#session-component).
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Session launcher-full)

  *** ** * ** ***

  It is available to developer tools such as `session_control` to control session components at runtime.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Session launcher-also)

  #### Information related to Session launcher

  - [`fuchsia.session.Launcher`](https://fuchsia.dev/reference/fidl/fuchsia.session#Launcher)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Session+manager%22 "Edit the glossary")

  ### Session manager

  The platform component that manages the lifecycle of the [session component](https://fuchsia.dev/docs/glossary#session-component).
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Session manager-full)

  *** ** * ** ***

  The session manager defines the set of system capabilities provided to sessions at runtime.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Session manager-also)

  #### Information related to Session manager

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Software+Assembly%22 "Edit the glossary")

  ### Software Assembly

  The process of gathering compiled artifacts, configuration metadata, and other information required to create a complete Product Bundle.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Software Assembly-full)

  *** ** * ** ***

  The Software Assembly process is carried out by an ffx plugin which gathers various targets declared in the Assembly Config, Legacy AIB, and Platform AIBs. The result of Software Assembly is a Product Bundle.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Software Assembly-also)

  #### Information related to Software Assembly

  - [Product Bundle](https://fuchsia.dev/docs/glossary#product-bundle)
  - [Assembly Config](https://fuchsia.dev/docs/glossary#assembly-config)
  - [Assembly Input Bundles (AIB)](https://fuchsia.dev/docs/glossary#assembly-input-bundle-aib)
  - [Legacy AIB](https://fuchsia.dev/docs/glossary#legacy-assembly-input-bundle)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Starnix%22 "Edit the glossary")

  ### Starnix

  A [runner](https://fuchsia.dev/docs/glossary#runner) that allows for running unmodified Linux binaries on Fuchsia.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Starnix-full)

  *** ** * ** ***

  A [runner](https://fuchsia.dev/docs/glossary#runner) that allows for running unmodified Linux binaries on Fuchsia.
  Linux binaries are not run inside a virtual machine. Instead, starnix creates a compatible runtime environment by implementing the Linux UAPI.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Starnix-also)

  #### Information related to Starnix

  - [starnix](https://fuchsia.dev/docs/concepts/components/v2/starnix)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Storage+capability%22 "Edit the glossary")

  ### Storage capability

  A storage capability is a [capability](https://fuchsia.dev/docs/glossary#capability) that allocates per-component isolated storage for a designated purpose within a filesystem directory.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Storage capability-full)

  *** ** * ** ***

  Multiple [component instances](https://fuchsia.dev/docs/glossary#component-instance) may be given the same storage capability, but underlying directories that are isolated from each other will be allocated for each individual use. This is different from [directory capabilities](https://fuchsia.dev/docs/glossary#directory-capability), where a specific filesystem directory is routed to a specific component instance.
  Isolation is achieved because Fuchsia does not support [dotdot](https://fuchsia.dev/docs/concepts/filesystems/dotdot).
  There are three types of storage capabilities:
  - **Data** : A directory is added to the [namespace](https://fuchsia.dev/docs/glossary#namespace) of the [component instance](https://fuchsia.dev/docs/glossary#component-instance) that [uses](https://fuchsia.dev/fuchsia-src/glossary#use) the capability. Acts as a [data directory](https://fuchsia.dev/docs/glossary#data-directory).
  - **Cache** : Same as data, but acts as a [cache directory](https://fuchsia.dev/docs/glossary#cache-directory).
  - **Meta** : A directory is allocated to be used by component manager, where it will store metadata to enable features like persistent [component collections](https://fuchsia.dev/docs/glossary#component-collection).

  <br />

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Storage capability-also)

  #### Information related to Storage capability

  - [Capability routing](https://fuchsia.dev/docs/glossary#capability-routing)
  - [Storage capabilities](https://fuchsia.dev/docs/concepts/components/v2/capabilities/storage)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Sub-realm%22 "Edit the glossary")

  ### Sub-realm

  A sub-realm is the [realm](https://fuchsia.dev/docs/glossary#realm) corresponding to a child component instance.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Sub-realm-also)

  #### Information related to Sub-realm

  - [Realms](https://fuchsia.dev/docs/concepts/components/v2/realms)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Subpackage%22 "Edit the glossary")

  ### Subpackage

  A Fuchsia package contained (by reference) in another package.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Subpackage-full)

  *** ** * ** ***

  A Fuchsia package can declare dependencies on one or more packages, by containment. The containing package is sometimes referred to as the superpackage and the contained packages are its subpackages. Subpackages are declared by reference, but the existence of the superpackage implies the existence of its subpackages, regardless of the medium (including a Fuchsia runtime, in a package repository, or in a package archive format, for example). Packages and Components can reference contained packages and subpackaged components, respectively, by relative subpackage URLs.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Subpackage-also)

  #### Information related to Subpackage

  - [Package](https://fuchsia.dev/docs/glossary#package)

  #### Guides related to Subpackage

  - [Fuchsia Subpackages](https://fuchsia.dev/docs/concepts/components/v2/subpackaging)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Subpackage+URL+(Relative)%22 "Edit the glossary")

  ### Subpackage URL (Relative)

  A partial Fuchsia Package URL, starting from the URI path.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Subpackage URL (Relative)-full)

  *** ** * ** ***

  A relative subpackage URL requires a "resolution context", which simply means a known starting package (or "superpackage"). The path (a single path segment with no slashes: \`/\`) refers to a subpackage, declared and named by its superpackage; for example: `my-package#meta/comp.cm`, representing a component within a subpackage, with the locally-scoped name "my-package".

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Subpackage URL (Relative)-also)

  #### Information related to Subpackage URL (Relative)

  - [Subpackage](https://fuchsia.dev/docs/glossary#subpackage)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Synchronized+dispatcher%22 "Edit the glossary")

  ### Synchronized dispatcher

  An async dispatcher where posted tasks are run in order, and each task will observe the side-effects from previous tasks.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Synchronized dispatcher-also)

  #### Information related to Synchronized dispatcher

  - [Thread safe asynchronous code](https://fuchsia.dev/docs/development/languages/c-cpp/thread-safe-async)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Text+Edit+API%22 "Edit the glossary")

  ### Text Edit API

  An API that allows editing a UI text field.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Text Edit API-full)

  *** ** * ** ***

  E.g. fuchsia.ui.text. This API allows the platform to access and edit the contents of a text field implemented by a UI Framework. This type of editing is a requirement for most text manipulation, in particular when the text is interpreted as human language rather than discrete button events. This API is required for accented characters (anything using a dead key) and most CJK languages.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Text Edit API-also)

  #### Information related to Text Edit API

  - Key Event API

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Thread%22 "Edit the glossary")

  ### Thread

  A [kernel object](https://fuchsia.dev/docs/glossary#kernel-object) that represents a time-shared CPU execution context. Each thread is contained in [process](https://fuchsia.dev/docs/glossary#process).

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Thread-also)

  #### Information related to Thread

  - [Thread overview](https://fuchsia.dev/docs/reference/kernel_objects/thread)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Transform%22 "Edit the glossary")

  ### Transform

  A hierarchical piece of a [Flatland](https://fuchsia.dev/docs/glossary#flatland) graph.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Transform-full)

  *** ** * ** ***

  A hierarchical piece of a [Flatland](https://fuchsia.dev/docs/glossary#flatland) graph. Transform is the fundamental object used to organize a [Flatland](https://fuchsia.dev/docs/glossary#flatland) graph. Transforms can have children Transforms and can attach a [Content](https://fuchsia.dev/docs/glossary#content).

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Toolchains%22 "Edit the glossary")

  ### Toolchains

  Tools used by developers to compile sources into binaries. Fuchsia supports Clang for C/C++.

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22TOT%22 "Edit the glossary")

  ### TOT

  Top-Of-Tree: The source tree (or build artifact thereof) based on the most recent commit to the main development branch of the source code.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#TOT-full)

  *** ** * ** ***

  Top-Of-Tree (or Tip-of-Tree, both are used interchangeably) refers to various artifacts, depending on context. The common denominator is that the artifact of interest is **not** relating to a stabilizing branch like releases/f18. Frequent examples:
  - A Fuchsia git checkout sync'ed to JIRI_HEAD.
  - The resulting artifacts from a build from a Fuchsia git checkout sync'ed to JIRI_HEAD.
  - The resulting artifacts from a component built from the development HEAD of a component, against an unspecified version of the Fuchsia SDK.

  <br />

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Universe+driver%22 "Edit the glossary")

  ### Universe driver

  An [ephemeral driver](https://fuchsia.dev/docs/glossary#ephemeral-driver) from a specific Fuchsia package set that is registered manually after the system's initial boot.

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22use%22 "Edit the glossary")

  ### use

  A keyword for a component instance to consume a capability that was offered to it.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#use-full)

  *** ** * ** ***

  A [component instance](https://fuchsia.dev/docs/glossary#component-instance) may use the `use` [manifest](https://fuchsia.dev/docs/glossary#component-manifest) keyword to consume a capability that was [offered](https://fuchsia.dev/docs/glossary#offer) to it by its parent.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#use-also)

  #### Information related to use

  - [Capability](https://fuchsia.dev/docs/glossary#capability)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22userboot%22 "Edit the glossary")

  ### userboot

  The first process started by the Zircon kernel.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#userboot-full)

  *** ** * ** ***

  It is loaded from the kernel image in the same way as the [vDSO](https://fuchsia.dev/docs/glossary#virtual-dynamic-shared-object), instead of being loaded from a filesystem. Its primary purpose is to load the second process, [bootsvc](https://fuchsia.dev/docs/glossary#bootsvc), from the [bootfs](https://fuchsia.dev/docs/glossary#bootfs).

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#userboot-also)

  #### Guides related to userboot

  - [Zircon kernel to userspace bootstrapping (userboot)](https://fuchsia.dev/docs/concepts/process/userboot)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22View%22 "Edit the glossary")

  ### View

  A region of the Scenic scene graph and the reference frame of a Scenic client.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#View-full)

  *** ** * ** ***

  The region a Scenic client can draw in, and the coordinate system input events are delivered in. `Views` can be referred to cross-process by their associated [ViewRef](https://fuchsia.dev/docs/glossary#viewref).

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#View-also)

  #### Information related to View

  - [View System](https://fuchsia.dev/docs/concepts/ui/scenic/views)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Viewport%22 "Edit the glossary")

  ### Viewport

  The parent endpoint of two connected [Flatland](https://fuchsia.dev/docs/glossary#flatland) instances.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Viewport-full)

  *** ** * ** ***

  The parent endpoint of two connected [Flatland](https://fuchsia.dev/docs/glossary#flatland) instances. [View](https://fuchsia.dev/docs/glossary#view) is the child endpoint. Viewport is type of a [Content](https://fuchsia.dev/docs/glossary#content).

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22ViewportCreationToken%22 "Edit the glossary")

  ### ViewportCreationToken

  Uniquely identifies the parent connection point of a connection between two [Flatland](https://fuchsia.dev/docs/glossary#flatland) instances.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#ViewportCreationToken-full)

  *** ** * ** ***

  Uniquely identifies the parent connection point of a connection between two [Flatland](https://fuchsia.dev/docs/glossary#flatland) instances. There is only one [ViewCreationToken](https://fuchsia.dev/docs/glossary#viewcreationtoken) associated with a ViewportCreationToken.

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22ViewController%22 "Edit the glossary")

  ### ViewController

  Represents a handle to a remote View that was launched by calling `PresentView()` on a [`GraphicalPresenter`](https://fuchsia.dev/docs/glossary#graphicalpresenter).
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#ViewController-full)

  *** ** * ** ***

  A [FIDL](https://fuchsia.dev/docs/glossary#fidl) protocol. With this handle, the caller (often, the session) can control the View's lifecycle. Closing the `ViewController` should close the presented view, and allow the system to reclaim its resources.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#ViewController-also)

  #### Information related to ViewController

  - [`fuchsia.element.ViewController`](https://fuchsia.dev/reference/fidl/fuchsia.element#ViewController)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22ViewCreationToken%22 "Edit the glossary")

  ### ViewCreationToken

  Uniquely identifies the child connection point of a connection between two [Flatland](https://fuchsia.dev/docs/glossary#flatland) instances.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#ViewCreationToken-full)

  *** ** * ** ***

  Uniquely identifies the child connection point of a connection between two [Flatland](https://fuchsia.dev/docs/glossary#flatland) instances. There is only one [ViewportCreationToken](https://fuchsia.dev/docs/glossary#viewportcreationtoken) associated with a ViewCreationToken.

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22ViewHolderToken%22 "Edit the glossary")

  ### ViewHolderToken

  Uniquely identifies an attachment point for a view in the global scene graph.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#ViewHolderToken-full)

  *** ** * ** ***

  A [FIDL](https://fuchsia.dev/docs/glossary#fidl) struct. Each `ViewHolderToken` has exactly one corresponding [ViewToken](https://fuchsia.dev/docs/glossary#viewtoken).

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#ViewHolderToken-also)

  #### Information related to ViewHolderToken

  - [`fuchsia.ui.views.ViewHolderToken`](https://fuchsia.dev/reference/fidl/fuchsia.ui.views#ViewHolderToken)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22ViewRef%22 "Edit the glossary")

  ### ViewRef

  A handle to a kernel object that identifies a unique [View](https://fuchsia.dev/docs/glossary#view) across the system.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#ViewRef-full)

  *** ** * ** ***

  A [FIDL](https://fuchsia.dev/docs/glossary#fidl) struct. Two `ViewRef`\`s to the same view have the same [KOID](https://fuchsia.dev/docs/glossary#koid). During cross-process communications Scenic clients are referred to by ViewRef. This is common for Input, Accessibility and Focus.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#ViewRef-also)

  #### Information related to ViewRef

  - [`fuchsia.ui.views.ViewRef`](https://fuchsia.dev/reference/fidl/fuchsia.ui.views#ViewRef)
  - [Scenic Views, view tree, and ViewRefs](https://fuchsia.dev/docs/development/graphics/scenic/concepts/view_ref)
  - [View focus](https://fuchsia.dev/docs/development/graphics/scenic/concepts/focus_chain)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22ViewSpec%22 "Edit the glossary")

  ### ViewSpec

  A description of a view to be presented by a [`GraphicalPresenter`](https://fuchsia.dev/docs/glossary#graphicalpresenter).
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#ViewSpec-full)

  *** ** * ** ***

  A [FIDL](https://fuchsia.dev/docs/glossary#fidl) table.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#ViewSpec-also)

  #### Information related to ViewSpec

  - [`fuchsia.element.ViewSpec`](https://fuchsia.dev/reference/fidl/fuchsia.element#ViewSpec)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22ViewToken%22 "Edit the glossary")

  ### ViewToken

  Uniquely identifies a View, which is the root point for a subgraph in the global scene graph.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#ViewToken-full)

  *** ** * ** ***

  A [FIDL](https://fuchsia.dev/docs/glossary#fidl) struct. Each `ViewToken` has exactly one corresponding [`ViewHolderToken`](https://fuchsia.dev/docs/glossary#viewholdertoken).

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#ViewToken-also)

  #### Information related to ViewToken

  - [`fuchsia.ui.views.ViewToken`](https://fuchsia.dev/reference/fidl/fuchsia.ui.views#ViewToken)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Virtual+dynamic+shared+object%22 "Edit the glossary")

  ### Virtual dynamic shared object

  The Virtual Dynamic Shared Object (vDSO) is a Virtual Shared Library.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Virtual dynamic shared object-full)

  *** ** * ** ***

  It is provided by the [Zircon](https://fuchsia.dev/docs/glossary#zircon) kernel and does not appear in the filesystem or a package. It provides the Zircon System Call API and ABI to userspace processes in the form of an ELF library that's always there. In the Fuchsia IDK and [Fuchsia driver framework](https://fuchsia.dev/docs/glossary#fdf) it exists as `libzircon.so` for the purpose of having something to pass to the linker representing the vDSO.

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Virtual+Keyboard%22 "Edit the glossary")

  ### Virtual Keyboard

  A keyboard represented with software.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Virtual Keyboard-full)

  *** ** * ** ***

  While traditionally a keyboard is a [mechanical](https://en.wikipedia.org/wiki/Typewriter) or [electromechanical](https://en.wikipedia.org/wiki/Computer_keyboard) device, modern keyboards can be visual elements on a screen, or can use voice dictation for example. Also called on-screen keyboard (OSK). \[[wikipedia](https://en.wikipedia.org/wiki/Computer_keyboard)\]

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Virtual Keyboard-also)

  #### Information related to Virtual Keyboard

  - keyboard
  - physical keyboard

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Virtual+Memory+Address+Range%22 "Edit the glossary")

  ### Virtual Memory Address Range

  A Virtual Memory Address Range (VMAR) is a Zircon [kernel object](https://fuchsia.dev/docs/glossary#kernel-object) that controls where and how [virtual memory objects](https://fuchsia.dev/docs/glossary#virtual-memory-object) may be mapped into the address space of a process.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Virtual Memory Address Range-also)

  #### Guides related to Virtual Memory Address Range

  - [VMAR overview](https://fuchsia.dev/docs/reference/kernel_objects/vm_address_region)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Virtual+Memory+Object%22 "Edit the glossary")

  ### Virtual Memory Object

  A Virtual Memory Object (VMO) is a Zircon [kernel object](https://fuchsia.dev/docs/glossary#kernel-object) that represents a collection of pages (or the potential for pages) that may be read, written, mapped into the address space of a process, or shared with another process by passing a [handle](https://fuchsia.dev/docs/glossary#handle) over a [channel](https://fuchsia.dev/docs/glossary#channel).

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Virtual Memory Object-also)

  #### Information related to Virtual Memory Object

  - [VMO overview](https://fuchsia.dev/docs/reference/kernel_objects/vm_object)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Window+Manager%22 "Edit the glossary")

  ### Window Manager

  A component (or multiple components) that controls the placement and appearance of windows supplied by applications.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Window Manager-full)

  *** ** * ** ***

  A component (or multiple components) that controls the placement and appearance of windows supplied by applications. On some systems, this system is also responsible for rendering UI (e.g. title bars). Because the Fuchsia platform may be used to implement a variety of products with very different graphical and input capabilities, the distribution of window manager responsibilities on Fuchsia may look very different than other operating systems where the platform is more closely tied to a single user experience. A window manager typically accompanies a [Session component](https://fuchsia.dev/docs/glossary#session-component) to present any graphical interfaces presented by elements launched as a part of the session. A window manager and a session together create a product experience.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Window Manager-also)

  #### Information related to Window Manager

  - [RFC-0189 - Window Management](https://fuchsia.dev/docs/contribute/governance/rfcs/0189_window_management)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Zircon%22 "Edit the glossary")

  ### Zircon

  Zircon is the [kernel](https://en.wikipedia.org/wiki/Kernel_(operating_system)) and lowest level userspace components (driver runtime environment, core drivers, libc, etc) at the core of Fuchsia.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Zircon-full)

  *** ** * ** ***

  In a traditional monolithic kernel, many of the userspace components of Zircon would be part of the kernel itself.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Zircon-also)

  #### Information related to Zircon

  - [Zircon documentation](https://cs.opensource.google/fuchsia/fuchsia/+/main:zircon/README.md)
  - [Zircon concepts](https://fuchsia.dev/docs/concepts/kernel/concepts)
  - [Source code](https://cs.opensource.google/fuchsia/fuchsia/+/main:zircon/)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Zircon+Boot+Image%22 "Edit the glossary")

  ### Zircon Boot Image

  A Zircon Boot Image (ZBI) contains everything needed during the boot process before any drivers are working.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Zircon Boot Image-full)

  *** ** * ** ***

  This includes the kernel image and a [RAM disk for the boot filesystem](https://fuchsia.dev/docs/glossary#bootfs).

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#Zircon Boot Image-also)

  #### Information related to Zircon Boot Image

  - [ZBI header file](https://fuchsia.googlesource.com/fuchsia/+/refs/heads/main/sdk/lib/zbi-format/include/lib/zbi-format/zbi.h)

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22Zedboot%22 "Edit the glossary")

  ### Zedboot

  A recovery image that is used to install and boot a full Fuchsia system.
  [Full description](https://fuchsia.dev/fuchsia-src/glossary#Zedboot-full)

  *** ** * ** ***

  Zedboot is actually an instance of the Zircon kernel with a minimal set of drivers and services running used to bootstrap a complete Fuchsia system on a target device. Upon startup, Zedboot listens on the network for instructions from a bootserver that may instruct Zedboot to [install](https://fuchsia.dev/docs/glossary#paver) a new OS. Upon completing the installation Zedboot will reboot into the newly installed system.

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22ZX%22 "Edit the glossary")

  ### ZX

  An abbreviation of Zircon used in Zircon C APIs and ABIs `zx_channel_create()`, `zx_handle_t`, `ZX_EVENT_SIGNALED`, etc) and libraries (libzx in particular).

  *** ** * ** ***

- [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/_glossary.yaml&searchAndJump=-+term:+%22ZXDB%22 "Edit the glossary")

  ### ZXDB

  The native low-level system debugger.

  *** ** * ** ***

  [Related links](https://fuchsia.dev/fuchsia-src/glossary#ZXDB-also)

  #### Guides related to ZXDB

  - [zxdb: The Fuchsia debugger](https://fuchsia.dev/docs/development/debugger/README)

  *** ** * ** ***

[](https://issues.fuchsia.dev/issues/new?component=1439230&template=1881640&description=Issue+on:+https://fuchsia.dev/docs/glossary/README.md "Report a bug or suggest improvements on this page") [](https://cs.opensource.google/fuchsia/fuchsia/+/main:docs/glossary/README.md "View the source code of this page") [](https://ci.android.com/edit?repo=fuchsia/fuchsia/main&file=docs/glossary/README.md&cloneRepo=fuchsia/fuchsia:refs/heads/main&fullPath=fuchsia/docs/glossary/README.md "Edit the source code of this page")