({{, (RefLink[SystemProcesses, paclet:ref/SystemProcesses])[] 
gives a list of processes that you are running on your computer system.}, {, (RefLink[SystemProcesses, paclet:ref/SystemProcesses])[(RefLink[All, paclet:ref/All])]
gives a list of all processes that are running on your computer system.}, {, (RefLink[SystemProcesses, paclet:ref/SystemProcesses])[patt]
gives a list of all processes whose names match the string pattern patt.}, {, (RefLink[SystemProcesses, paclet:ref/SystemProcesses])[prop->val]
gives a list of all processes for which property prop has value val.}, {, (RefLink[SystemProcesses, paclet:ref/SystemProcesses])[{(Subscript[prop, 1])->(Subscript[val, 1]),…}]
gives a list of all processes for which property (Subscript[prop, i]) has value (Subscript[val, i]). }})

OpenersNotesSection(Spacer1)Details

(RefLink[SystemProcesses, paclet:ref/SystemProcesses]) returns a list of (RefLink[ProcessObject, paclet:ref/ProcessObject]) objects.

(RefLink[SystemProcesses, paclet:ref/SystemProcesses]) returns processes sorted by PID.

(RefLink[SystemProcesses, paclet:ref/SystemProcesses])[(RefLink[All, paclet:ref/All])] gives different processes on different computer systems:

In (RefLink[SystemProcesses, paclet:ref/SystemProcesses])[prop->val], properties that can be used include:

OpenersPrimaryExamplesSection(Spacer1)Examples  (6)

OpenersExampleSection0(Spacer1)Basic Examples  (1)

List processes for the current user:

RandomSample[SystemProcesses[],3]

List processes for any user:

RandomSample[SystemProcesses[All],3]

List any process with "Wolfram" in its path:

RandomSample[SystemProcesses["Wolfram"],3]

OpenersExampleSection1(Spacer1)Scope  (2)

Find processes that use more than 100 megabytes:

RandomSample[SystemProcesses["Memory"->x_/;x>Quantity[100,"MiB"]],3]

Find processes by searching for a keyword in the path:

RandomSample[SystemProcesses["Path"->"Wolfram"],3]

Search with multiple conditions:

RandomSample[SystemProcesses[{
"Program"->"Wolfram", 
"Memory"->x_/;x>Quantity[50,"MiB"]
}],3]

Get a process object:

process=First[SystemProcesses["Wolfram"]]

Return the memory used by the process:

process["Memory"]

OpenersExampleSection3(Spacer1)Applications  (1)

Many of the processes retrieved can be terminated using (RefLink[KillProcess, paclet:ref/KillProcess]):

KillProcess[First@SystemProcesses["notepad"]]

Make a histogram of the process thread count:

Histogram[#["Threads"]&/@SystemProcesses[]]

OpenersExampleSection4(Spacer1)Properties & Relations  (1)

Normally, system processes are returned for the current user:

SystemProcesses[]//Length

SystemProcesses["User"->$UserName]//Length

OpenersExampleSection5(Spacer1)Possible Issues  (1)

(RefLink[SystemProcesses, paclet:ref/SystemProcesses]) uses (RefLink[StringContainsQ, paclet:ref/StringContainsQ]) and string expressions to look for processes:

SystemProcesses[RegularExpression["notepad.*"]]

SystemProcesses["notepad"~~___]

The * wildcard will not work here:

SystemProcesses["notepad*"]

StringContainsQ["notepad.exe","notepad*"]

({{DocumentationFooterIconsRelatedFunction.png, ({{See Also}, {(RefLink[SystemProcessData, paclet:ref/SystemProcessData])  ▪  (RefLink[Processes, paclet:ref/Processes])  ▪  (RefLink[ProcessObject, paclet:ref/ProcessObject])  ▪  (RefLink[StartProcess, paclet:ref/StartProcess])  ▪  (RefLink[KillProcess, paclet:ref/KillProcess])  ▪  (RefLink[$ProcessID, paclet:ref/$ProcessID])  ▪  (RefLink[ProcessInformation, paclet:ref/ProcessInformation])}})}})

({{DocumentationFooterIconsRelatedGuide.png, ({{Related Guides}, {▪(RefLinkPlain[Direct Control of External Processes, paclet:guide/DirectControlOfExternalProcesses])}})}})