(os): add semaphore demo.