Scheduler side-channels in preemptive real-time systems: attack and defense techniques