Since the user can start new processes, it's insufficient to monitor just the process we started ourselves. Instead, we get a list of processes running when we start up (to be able to exclude system processes) and terminate the session once no non-system processes are running.