A general purposed operating system is modified to support hard real-time
processing of hard real-time tasks. At least one processing unit in the
operating system is designated as a hard real-time processing unit to
process hard real-time tasks, and at least one processing unit in the
operating system is designated as a non-hard real-time processing unit to
process non-hard real-time tasks and designated non-deterministic
processing steps. Hard real-time tasks assigned to the non-hard real-time
processing unit may be transferred to the hard real-time processing unit,
and tasks assigned to the hard real-time processing unit that are about
to execute a non-deterministic processing step may be transferred to the
non-hard real-time processing unit.