In operating systems such as Unix, a user process is created to execute application code, and a separate server process is created to connect to the Oracle instance via the SGA. In this configuration, which is used whenever the Multi-Threaded Server is not used, each user process also requires a corresponding server process, which is automatically created for each client requesting a connection. This is a common configuration, and is used even when the application (client) code and the Oracle server code are running on the same machine, where interprocess communication mechanisms (IPCs) are used.