RTOS and OS working side by side in cooperative work
You probably don't need to run two different OSs.  You can usually lock the realtime processes to a specific core in the OS to keep things running smoothly while letting the scheduler and system processes do their thing on the other core.  I like to use RT-linux which is not hard realtime but on modern x86 and big ARM processors it is responsive enough to run timed loops with very little jitter and I have used it for some very high performance robots.  You will still need to setup a shared-memory interface between realtime and non-realtime processes with a some sort of arbitration scheme to keep them from stepping on eachother's toes.

I have used RTAI micro-kernel in the distant past but I think these are only really useful if you have a very resource limited processor (like sub 400 MHz).  I would think real hard about your latency requirements before looking into more exotic solutions and start with RT-linux