ROS 2 (Rolling) as the workload reference
This page records the documentation and version policy for ROS 2 in the GoMyRobotOS project. It is the hub every other page links to for ROS 2 concepts.
The position
ROS 2 is the robotics middleware / workload environment of the flight stack. It is not the architectural center of GoMyRobotOS, not a runtime, and not part of what “the OS” defines.
ROS 2 Rolling
│
│ official robotics middleware / API model
▼
GoMyRobotRT
│
│ deterministic flight-runtime integration
▼
GoMyRobotOS
│
│ partition / execution-domain management
▼
Backend
│
├── Xen
├── XNG/XtratuM
└── future mechanisms
▼
Hardware
The boundary is:
ROS 2 defines the robotics software model; GoMyRobotRT makes that model usable in the deterministic flight runtime; GoMyRobotOS controls the execution environment in which the workload runs.
The reference: ROS 2 Rolling, exclusively
For all ROS 2 concepts and APIs, the authoritative external reference is the official Rolling documentation:
https://docs.ros.org/en/rolling/
This project documents terminology and API names consistent with Rolling -
including rcl, rclcpp, rclpy, executors, nodes, publishers,
subscriptions, services, actions, parameters, QoS, callback groups,
middleware / RMW, DDS, the ROS 2 graph, and lifecycle concepts.
Documentation from other ROS 2 distributions (Humble, Iron, Jazzy, Kilted, older releases) is not mixed in unless a historical comparison is explicitly required, and even then it is labeled as such.
What this documentation does not do
It does not reproduce large sections of the ROS 2 documentation.
It does not create a second ROS 2 conceptual model, and it never makes ROS 2 the definition of GoMyRobotOS.
It does not invent GoMyRobot-flavored replacements for standard concepts. The following fabricated terms are explicitly prohibited in this project and must never appear:
GoMyRobotNode GoMyRobotPublisher GoMyRobotExecutor
A GoMyRobot-specific abstraction may be introduced only when there is a real architectural reason (e.g., the partition contract, which has none of these names, it is about execution domains, not ROS 2 objects).
When GoMyRobotRT behavior differs from ROS 2
Any such difference must be documented as:
state the standard ROS 2 behavior (with the Rolling link),
state the GoMyRobotRT behavior separately,
identify whether the difference is implemented, experimental, or planned.
A GoMyRobotRT extension is never presented as an “official ROS 2 concept”, and ROS 2 terminology is never altered to make the GoMyRobot architecture look cleaner.
Linking rule
Use direct links to the official Rolling documentation wherever relevant - the preferred pattern is:
See the official ROS 2 Rolling documentation for the underlying ROS 2 concept.
Links to random tutorials, outdated distributions, unofficial mirrors, or third-party summaries are not used, unless a specific research reference requires one (and then labeled as such). The complete concept-by-concept status is in compatibility/ros2.