In computer science, deadlock refers to a specific condition when two or more processes are each waiting for each other to release a resource. It can also be that more than two processes are waiting for a number of resources. Deadlock is a common problem in multiprocessing where many processes share a specific type of mutually exclusive resource known as a "software lock" or "soft lock". Computers intended for the "time-sharing" or "real-time" markets often have a "hardware lock" (or "hard lock") which guarantees "exclusive access" to processes. This forces the prforcing serialized access. Deadlocks are particularly troubling because there is no "general" solution to avoid (soft) deadlocks.