Components v1
This section contains documentation about components in the legacy component framework (components v1).
Components v2
This section contains documentation about components in the new component framework (components v2).
Components are the basic unit of executable software on Fuchsia.
Note: The component framework is under active development. This document only covers the new architecture (components v2) implemented by component_manager
. The old architecture (components v1) implemented by appmgr
is still in use but will be removed once the transition to the new architecture is complete.
Architectural concepts
Developing components
- Capabilities: Different types of capabilities and how to route them between components.
- Component manifests: How to define a component for the framework.
- ELF runner: How to launch a component from an ELF file. Typically useful for developing system components in C++, Rust, or Go.
Extending the component framework
- Runners: Instantiate components; add support for more runtimes.
- Resolvers: Find components from URLs; add support for methods of software packaging and distribution.
Debugging and troubleshooting
- Hub: A live view of the component topology at runtime.
- OpaqueTest: Hermetic testing framework.
Internals
Components (either version)
- [Component URLs][doc-component_urls] are URLs that identify components.