The "Microcontrollers & FPGAs" sub on this forum has dozens of (us) people who can expand on this (consider moving the post)
But, you know Linux has watchdog as part of the kernel.
https://linux.die.net/man/8/watchdogApparently (because I've never used it) you can write a process to hit this watchdog otherwise the OS will do it for you.
So given you are on Linux I would approach it like this. Create a separate watchdog process, lets call it the Governor, that is responsible for resetting the watchdog and monitoring your other running processes.
How you monitor the other running processes from the Governor could be as simple as checking the last modified time on files that each of your processes are required to write to, or more complex with some sockets protocol to each process to ascertain their current health.
The Governor can then do other things aside from a hard system reset, for instance it could be more graceful and restart the dead service and perhaps reboot if that fails.
This keeps your watchdogging completely separate from your other applications.
What is the Wire OR? I think the Linux watchdog is run on a system timer like it would on any bear bones mcu application so should work the same, if you were worried about the OS locking up.
[Edit] what do you mean by "Two Non-OS processsors" are they running off the MCU/linux?