Fixed Priority Scheduling Theory for Hard Real-Time Systems