implement a FIFO scheduler