README explain how sem.c works in more detail