A process is the first thread started (called the main thread). It's the only thread that is authorized to start a new threads.
A process is a unit of resources, while a thread is a unit of:
A process is also known as:
Creating or destroying a process is relatively expensive, as resources must be acquired or released.
Processes are often seen as synonymous with programs or applications. However, what the user sees as a single application may in fact be a set of cooperating processes (ie a system)
Process in a OS context
A process is an instance of a executable file created via a command.
Which processor are allowed to run the process ? See Hardware - NUMA node (Affinity)
Process time are CPU time
OS - strace (Interactions between processes and the Linux kernel)
To start and monitor an new process:
strace -f -e trace=network -s 10000 PROCESS ARGUMENTS
To monitor an existing process with a known PID:
strace -p $PID -f -e trace=network -s 10000
There is usually exactly one call stack associated with a running process (or thread)
The priority of a web server:
where:
Windows and wmic
wmic process where CommandLine like '%${project.artifactId}%' and not name='wmic.exe' delete
REM or
wmic PROCESS WHERE NAME="CALC.EXE" DELETE
A process may start zero or many threads.
Example: in Process Explorer