A process has a self-contained execution environment that is shared among all its sub-threads
A process generally has a complete, private set of basic run-time resources allocated by the operating system, in particular, each process has:
- its own memory space (virtual memory). (for both code and data),
- device handles,
- and a process control block
More …. see Process - Resource
It has also environment variable.