Automated Software Compiler Techniques to Provide Fault Tolerance for Real-Time Operating Systems