Written By: Ehsan Jahandarpour

A background process is a computer process that runs “behind the scenes” (i.e. in the background) and without user intervention. Typical tasks for these processes include logging, system monitoring, scheduling, and user notification. On a Windows system, this term may be used to either refer to a computer program that does not create a user interface, or a Windows service. The former are started just as any other program is started, e.g. via Start menu. Windows services, on the other hand, are started by Service Control Manager. In Windows Vista and later, they are run in a separate session. There is no limit on how much a system service or background process can use system resources. Indeed in Windows Server family of Microsoft operating systems, background processes are expected to be the principle consumers. On a Unix or Unix-like system, a background process or job can be further identified as one whose group ID differs from its terminal group ID. This type of process is unable to receive keyboard signals from and typically will not send output to its parent terminal. This more technical definition does not distinguish between whether or not the process can receive user intervention. Although background processes are typically used for purposes requiring few resources, any process can be run in the background, and even though the process is running in the background, where it can’t be seen, it behaves like any other process.