ROS (Robot Operating System) 101 for Newcomers
The most widely used software framework in robotics, despite the name, isn't actually an operating system.
ROS is a widely used open-source middleware framework for robotics — not an operating system in the traditional sense, but a set of tools and conventions that run on top of one (typically Linux) to help different pieces of robot software communicate with each other.
The core idea
ROS organizes robot software into separate programs ('nodes') that communicate by publishing and subscribing to named data streams ('topics') — a camera driver node publishes image data, a perception node subscribes to it and publishes detected objects, a planner subscribes to that, and so on — letting complex systems be built from many smaller, independently developed and testable pieces.
ROS 1 vs. ROS 2
ROS 2 is a substantial rewrite that added real-time support, better security, and reliability suited to commercial products rather than just research labs, and has become the standard for new development, with the older ROS 1 largely in maintenance mode across the community.