Linux-based platforms and UAO are solving different problems.
The Linux-based automation platforms allow the User to do real-time control applications as well as run other applications using other programming languages like C++ or Python on the same computer platform. Although they are Linux-based, they remain proprietary because they implement proprietary techniques to guarantee real-time performance and determinism, namely real-time OS patches and standardized data layer access (including IO access) for all applications. So applications cannot be ported from one Linux platform to another one without significant rework and retest.
UAO provides a runtime execution engine for an event/data-based system environment (based on IEC 61499). The objective is to enable plug & produce applications that are independent of the hardware platform on which they execute. In other words, users can build applications using libraries of vendor-independent UAO software components, plugging them together using the event-data interface, and distributing the complete application to one or multiple Universal Automation controllers. The same application can be deployed to different platforms with no rework except for connecting the “logical” IO to the real physical IO of the new platform.
The two approaches are complimentary. UAO is available on several Linux-based platforms.