pipeio This tool can be used to beat on system or named pipes. See the help() function below for user information. sem01 Creates a semaphore and two processes. The processes each go through a loop where they semdown, delay for a random amount of time, and semup, so they will almost always be fighting for control of the semaphore. sem02 The application creates several threads using pthread_create(). One thread performs a semop() with the SEM_UNDO flag set. The change in sempaphore value performed by that semop should be "undone" only when the last pthread exits.