Explain what a process is in the context of Linux. How does Linux differentiate between different types of processes such as parent, child, and zombie processes?
A process is an address space where one or more threads executing within that address space, and the required system resources for those threads. Each process has its unique PID and PPID, say there's a parent process which has a PID 1546 and it forks and creates a child process having PID 1547, its PPID would be shown as 1546, hence 1546 would be the parent of 1547. Zombie processes are shown in the process table with Z as their identifier .Zombie processes are terminated by the init process or systemd (PID 1).
In the context of Linux we can define a process as an address space with one or more threads executing within that address space and the required system resources for those threads.
we can use ps -ef command to see the processes where columns like PID for process ID , PPID is for parent process ID .
Zombie Processes can be seen with 'Z' value in STAT field while using command `ps -aux`.