Many embedded systems have complex timing constraints and, at the same time, have flexibility requirements which prohibit offline planning of the entire system. To support a mixture of time-triggered and event-triggered tasks, some industrial systems deploy an RTOS with a table-driven dispatcher complemented with a preemptive scheduler to allocate the free time slots to event-driven tasks. Rather than allocating dedicated time-slots to time-triggered tasks, in this work we provide RTOS support to dynamically re-allocate time-slots of time triggered tasks within a pre-computed time range to maximize the available processing capacity for event-triggered tasks. Although the concept - called slotshifting - is not new, we are the first to extend a commercial RTOS with such support. In addition, we extend slot shifting with a run-time mechanism to reclaim resources of time-triggered tasks when their reserved capacities are unused. This mechanism eliminates over-provisioning of capacities to (event-triggered) tasks that have been converted to periodic tasks to resolve interdependencies during off-line synthesis, e.g. allowing for a resource-efficient implementation of a polling task. After implementing our unique RTOS extensions, we investigate the run-time overheads for the corresponding scheduling mechanisms. Measurements show that the increase in terms of absolute run-time overhead is minor compared to an off-the-shelf micro-kernel with a fixed-priority scheduler