A process is a running program. It consists of a virtual memory address space, state (registers, stack, variables, etc.), program code, and other operating system resources.