management/scheduler: replace queue with transparent list + semaphore