Fuchsia components
A component is a program that runs on Fuchsia in its own sandbox.
Each component is a composable module that interacts with other components
through their capabilities. All software on Fuchsia is defined as a component
except for the kernel image, bootstrapping processes, and the Component Manager.
Fuchsia's component framework is responsible for running nearly all user space
software in the system. The Component Manager is a system process that coordinates
the execution and lifecycle of all component instances, maintains the component
topology, provides components with their capabilities, and keeps them isolated
from one another.
Components obtain privileges to access various parts of the wider system through
capabilities. Each component can declare new capabilities that they offer to the
system and capabilities provided by other components (or the framework) that
they require to function. Component Manager resolves and validates all capability
requests between components to ensure they match capabilities that the component
has been properly granted.
Prerequisites
What you'll learn
- Fuchsia component design principles
- Declaring components and capabilities
- Testing and debugging a component
What you'll need
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2024-06-03 UTC.
[{
"type": "thumb-down",
"id": "missingTheInformationINeed",
"label":"Missing the information I need"
},{
"type": "thumb-down",
"id": "tooComplicatedTooManySteps",
"label":"Too complicated / too many steps"
},{
"type": "thumb-down",
"id": "outOfDate",
"label":"Out of date"
},{
"type": "thumb-down",
"id": "samplesCodeIssue",
"label":"Samples / code issue"
},{
"type": "thumb-down",
"id": "otherDown",
"label":"Other"
}]
[{
"type": "thumb-up",
"id": "easyToUnderstand",
"label":"Easy to understand"
},{
"type": "thumb-up",
"id": "solvedMyProblem",
"label":"Solved my problem"
},{
"type": "thumb-up",
"id": "otherUp",
"label":"Other"
}]
{"lastModified": "Last updated 2024-06-03 UTC."}
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2024-06-03 UTC."],[],[]]