1. A system comprising: a processor; one or more memory storage units; software code stored in the one or more memory storage units, where the software code is executable by the processor and comprises: a plurality of adaptive partitions each having a respective guaranteed processor time budget and one or more process threads; a plurality of process threads each having a priority and each belonging to any one of the plurality of adaptive partitions; and a process scheduler executable by the processor configured to: when the system is under a normal load, allocate the processor to a process thread, of the plurality of process threads, that is ready for execution and having the highest priority amongst process threads, of the plurality of process threads, that are ready for execution; and when the system is in overload, allocate the processor to a process thread, of the plurality of process threads, that is ready for execution, having the highest priority amongst process threads, of the plurality of process threads, that are ready for execution and for which the adaptive partition having the process thread has an available guaranteed processor time budget.