Many modern computers have operating systems that permit several applications or programs to run at the same time. Each running program uses one or more so-called "processes", that's why this situation is generally known as multiprocessing. At times it can happen, that a process stops responding to user input; the user sees when the computer stops responding to inputs, or it becomes very slow. Different causes can cause this scenario: The most frequent are deadlock, race conditions or the system simply having too much to do. In many cases, the only solution is to terminate the processes, which cause so much load. Many GUI-based operating systems have programs that allow the user to tell the operating system to terminate a process. There may also be command-line programs that do this. When the operating system terminates a process, all unsaved data of the process will be lost.