FAULT-TOLERANT REAL-TIME SCHEDULING FOR MULTIPROCESSOR SYSTEMS: Primary-Backup Approach for Precedence-Constrained Task Graphs