lab1 non-practical definition semaphores