A process is defined as an entity which represents the basic unit of work to be implemented in the system.
When a program is loaded into the memory and it becomes a process, it can be divided into four sections ─ stack, heap, text and data.
1] Start - This is the initial state when a process is first started/created.
2] Ready - The process is waiting to be assigned to a processor. Ready processes are waiting to have the processor allocated to them by the operating system so that they can run. Process may come into this state after Start state or while running it by but interrupted by the scheduler to assign CPU to some other process.
3] Running - Once the process has been assigned to a processor by the OS scheduler, the process state is set to running and the processor executes its instructions.
4] Waiting - Process moves into the waiting state if it needs to wait for a resource, such as waiting for user input, or waiting for a file to become available.
5] Terminated or Exit - Once the process finishes its execution, or it is terminated by the operating system, it is moved to the terminated state where it waits to be removed from main memory.