semaphores.c changes