What is hard real-time, and why did Linux lack hard real-time support for so long?