This is how ps(1) differentiates between displaying
processes that have a terminal and those that have not:
-a Display information about processes
for all users with controlling terminals.
-x Display information about processes
without controlling terminals.
Strangely, some processes appear in both listings:
$ ps -a | grep man
22867 p6 Ip 0:00.02 man ps
82326 p6 I+p 0:00.02 less -T /tmp/man.TkUznrbk0K /tmp/man.qGVXE5xsvJ
43736 p7 R+p/3 0:00.00 grep man
$ ps -x | grep man
22867 p6 Ip 0:00.02 man ps
82326 p6 I+p 0:00.02 less -T /tmp/man.TkUznrbk0K /tmp/man.qGVXE5xsvJ
50867 p7 R+p/2 0:00.05 grep man
Is this intended? Am I missing something obvious?
Or does the wording mean "users with controlling terminals"?
Jan