The integration of deadline and criticalness in hard real-time scheduling