Simplify and fix emulator cleanup process.

Relying on PID to cleanup running emulators didn't account for cases
where the PID could not be captured from stdout. This change includes:

* Cleaning up by process name.
* List processes before and after cleanup for debugging.
* Simplify the logic removing zombie process cleanup and replaced it
  with cleanup by name.

Change-Id: Iff914c41be21a5adae108d142bf187fe28bb1043
Reviewed-on: https://flutter-review.googlesource.com/c/recipes/+/55020
Reviewed-by: Ricardo Amador <ricardoamador@google.com>
Commit-Queue: Godofredo Contreras <godofredoc@google.com>
diff --git a/recipe_modules/android_virtual_device/api.py b/recipe_modules/android_virtual_device/api.py
index 3ebb33a..dbef891 100644
--- a/recipe_modules/android_virtual_device/api.py
+++ b/recipe_modules/android_virtual_device/api.py
@@ -17,7 +17,6 @@
 
   def __init__(self, *args, **kwargs):
     super(AndroidVirtualDeviceApi, self).__init__(*args, **kwargs)
-    self.emulator_pid = -1
     self.avd_root = None
     self.adb_path = None
     self._initialized = False
@@ -49,10 +48,10 @@
       # Show devices before anything to see if anything is left over from a
       # previous run.
       self.show_devices(env, env_prefixes, "before emulator install/start")
-      self.emulator_pid = self.start(env, env_prefixes, version)
+      self.start(env, env_prefixes, version)
       yield
     finally:
-      self.kill(self.emulator_pid)
+      self.kill()
       self.uninstall(env, env_prefixes, version=version)
       self.show_devices(env, env_prefixes, "after emulator uninstall")
 
@@ -124,7 +123,6 @@
       env_prefixes(dict):  Current environment prefixes variables.
       version(string): The android API version of the emulator as a string.
     """
-    self.emulator_pid = ''
     with self.m.step.nest('start avd'):
       with self.m.context(env=env, env_prefixes=env_prefixes,
                           cwd=self.avd_root), self.m.depot_tools.on_path():
@@ -146,7 +144,7 @@
           # In case of retries we need to kill the previous emulator to ensure a fresh
           # start.
           self.kill()
-          output = self.m.step(
+          self.m.step(
               'Start Android emulator (%s)' % version,
               [
                   'xvfb-run', 'vpython3', avd_script_path, 'start',
@@ -155,17 +153,11 @@
               ],
               stdout=self.m.raw_io.output_text(add_output_log=True),
               infra_step=True,
-          ).stdout
-
-          m = re.search(r'.*pid: (\d+)\)', output)
-          self.emulator_pid = m.group(1)
-          env['EMULATOR_PID'] = self.emulator_pid
+          )
           self._setup(env, env_prefixes)
 
         self.m.retry.wrap(_start, max_attempts=3)
 
-    return self.emulator_pid
-
   def _setup(self, env, env_prefixes):
     """Configures a running emulator and waits for it to reach the home screen.
 
@@ -230,38 +222,16 @@
             stdout=self.m.raw_io.output_text(add_output_log=True)
         )
 
-    env['EMULATOR_PID'] = self.emulator_pid
-    return self.emulator_pid
-
-  def kill(self, emulator_pid=None):
+  def kill(self):
     """Kills the emulator and cleans up any zombie QEMU processes.
-
-    Args:
-      emulator_pid(string): The PID of the emulator process.
     """
     assert self.m.platform.is_linux
     with self.m.step.nest('kill and cleanup avd'):
-      pid_to_kill = emulator_pid or self.emulator_pid
-      if not pid_to_kill:
-        # Noop if there is not emulator to kill.
-        return
+      self.m.step('List processes before cleaning up', ['ps', 'aux'])
       # Accepting any return code because when the emulator dies the pid is no longer
       # available causing an exception.
       self.m.step(
-          'Kill emulator cleanup', ['kill', '-9', pid_to_kill], ok_ret='any'
+          'Kill emulator cleanup', ['pkill', '-9', '-e', '-f', 'emulator'],
+          ok_ret='any'
       )
-
-      # Kill zombie processes left over by QEMU on the host.
-      step_result = self.m.step(
-          'list processes', ['ps', '-axww'],
-          stdout=self.m.raw_io.output_text(add_output_log=True),
-          stderr=self.m.raw_io.output_text(add_output_log=True)
-      )
-      zombieList = ['qemu-system']
-      killCommand = ['kill', '-9']
-      for line in step_result.stdout.splitlines():
-        # Check if current process has zombie process substring.
-        if any(zombie in line for zombie in zombieList):
-          killCommand.append(line.split(None, 1)[0])
-      if len(killCommand) > 2:
-        self.m.step('Kill zombie processes', killCommand, ok_ret='any')
+      self.m.step('List processes after cleaning up', ['ps', 'aux'])
diff --git a/recipe_modules/android_virtual_device/examples/emulator_start_retries.expected/setup_avd_fails.json b/recipe_modules/android_virtual_device/examples/emulator_start_retries.expected/setup_avd_fails.json
index dec624b..ce1b99e 100644
--- a/recipe_modules/android_virtual_device/examples/emulator_start_retries.expected/setup_avd_fails.json
+++ b/recipe_modules/android_virtual_device/examples/emulator_start_retries.expected/setup_avd_fails.json
@@ -180,6 +180,99 @@
   },
   {
     "cmd": [
+      "ps",
+      "aux"
+    ],
+    "cwd": "[CACHE]/avd",
+    "env": {
+      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
+      "AVD_CIPD_VERSION": "TESTVERSIONSTR",
+      "AVD_ROOT": "[CACHE]/avd",
+      "USE_EMULATOR": "true"
+    },
+    "env_prefixes": {
+      "PATH": [
+        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools"
+      ]
+    },
+    "env_suffixes": {
+      "DEPOT_TOOLS_UPDATE": [
+        "0"
+      ],
+      "PATH": [
+        "RECIPE_REPO[depot_tools]"
+      ]
+    },
+    "name": "start avd.kill and cleanup avd.List processes before cleaning up",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@2@@@"
+    ]
+  },
+  {
+    "cmd": [
+      "pkill",
+      "-9",
+      "-e",
+      "-f",
+      "emulator"
+    ],
+    "cwd": "[CACHE]/avd",
+    "env": {
+      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
+      "AVD_CIPD_VERSION": "TESTVERSIONSTR",
+      "AVD_ROOT": "[CACHE]/avd",
+      "USE_EMULATOR": "true"
+    },
+    "env_prefixes": {
+      "PATH": [
+        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools"
+      ]
+    },
+    "env_suffixes": {
+      "DEPOT_TOOLS_UPDATE": [
+        "0"
+      ],
+      "PATH": [
+        "RECIPE_REPO[depot_tools]"
+      ]
+    },
+    "name": "start avd.kill and cleanup avd.Kill emulator cleanup",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@2@@@"
+    ]
+  },
+  {
+    "cmd": [
+      "ps",
+      "aux"
+    ],
+    "cwd": "[CACHE]/avd",
+    "env": {
+      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
+      "AVD_CIPD_VERSION": "TESTVERSIONSTR",
+      "AVD_ROOT": "[CACHE]/avd",
+      "USE_EMULATOR": "true"
+    },
+    "env_prefixes": {
+      "PATH": [
+        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools"
+      ]
+    },
+    "env_suffixes": {
+      "DEPOT_TOOLS_UPDATE": [
+        "0"
+      ],
+      "PATH": [
+        "RECIPE_REPO[depot_tools]"
+      ]
+    },
+    "name": "start avd.kill and cleanup avd.List processes after cleaning up",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@2@@@"
+    ]
+  },
+  {
+    "cmd": [
       "xvfb-run",
       "vpython3",
       "[CACHE]/avd/src/tools/android/avd/avd.py",
@@ -239,7 +332,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "17687",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -272,7 +364,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "17687",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -305,9 +396,41 @@
   },
   {
     "cmd": [
-      "kill",
+      "ps",
+      "aux"
+    ],
+    "cwd": "[CACHE]/avd",
+    "env": {
+      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
+      "AVD_CIPD_VERSION": "TESTVERSIONSTR",
+      "AVD_ROOT": "[CACHE]/avd",
+      "USE_EMULATOR": "true"
+    },
+    "env_prefixes": {
+      "PATH": [
+        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools"
+      ]
+    },
+    "env_suffixes": {
+      "DEPOT_TOOLS_UPDATE": [
+        "0"
+      ],
+      "PATH": [
+        "RECIPE_REPO[depot_tools]"
+      ]
+    },
+    "name": "start avd.kill and cleanup avd (2).List processes before cleaning up",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@2@@@"
+    ]
+  },
+  {
+    "cmd": [
+      "pkill",
       "-9",
-      "17687"
+      "-e",
+      "-f",
+      "emulator"
     ],
     "cwd": "[CACHE]/avd",
     "env": {
@@ -337,7 +460,7 @@
   {
     "cmd": [
       "ps",
-      "-axww"
+      "aux"
     ],
     "cwd": "[CACHE]/avd",
     "env": {
@@ -359,10 +482,9 @@
         "RECIPE_REPO[depot_tools]"
       ]
     },
-    "name": "start avd.kill and cleanup avd (2).list processes",
+    "name": "start avd.kill and cleanup avd (2).List processes after cleaning up",
     "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@",
-      "@@@STEP_LOG_END@raw_io.output_text@@@"
+      "@@@STEP_NEST_LEVEL@2@@@"
     ]
   },
   {
@@ -426,7 +548,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "17687",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -459,7 +580,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "17687",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -492,9 +612,41 @@
   },
   {
     "cmd": [
-      "kill",
+      "ps",
+      "aux"
+    ],
+    "cwd": "[CACHE]/avd",
+    "env": {
+      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
+      "AVD_CIPD_VERSION": "TESTVERSIONSTR",
+      "AVD_ROOT": "[CACHE]/avd",
+      "USE_EMULATOR": "true"
+    },
+    "env_prefixes": {
+      "PATH": [
+        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools"
+      ]
+    },
+    "env_suffixes": {
+      "DEPOT_TOOLS_UPDATE": [
+        "0"
+      ],
+      "PATH": [
+        "RECIPE_REPO[depot_tools]"
+      ]
+    },
+    "name": "start avd.kill and cleanup avd (3).List processes before cleaning up",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@2@@@"
+    ]
+  },
+  {
+    "cmd": [
+      "pkill",
       "-9",
-      "17687"
+      "-e",
+      "-f",
+      "emulator"
     ],
     "cwd": "[CACHE]/avd",
     "env": {
@@ -524,7 +676,7 @@
   {
     "cmd": [
       "ps",
-      "-axww"
+      "aux"
     ],
     "cwd": "[CACHE]/avd",
     "env": {
@@ -546,10 +698,9 @@
         "RECIPE_REPO[depot_tools]"
       ]
     },
-    "name": "start avd.kill and cleanup avd (3).list processes",
+    "name": "start avd.kill and cleanup avd (3).List processes after cleaning up",
     "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@",
-      "@@@STEP_LOG_END@raw_io.output_text@@@"
+      "@@@STEP_NEST_LEVEL@2@@@"
     ]
   },
   {
@@ -613,7 +764,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "17687",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -646,7 +796,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "17687",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -676,9 +825,21 @@
   },
   {
     "cmd": [
-      "kill",
+      "ps",
+      "aux"
+    ],
+    "name": "kill and cleanup avd.List processes before cleaning up",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@1@@@"
+    ]
+  },
+  {
+    "cmd": [
+      "pkill",
       "-9",
-      "17687"
+      "-e",
+      "-f",
+      "emulator"
     ],
     "name": "kill and cleanup avd.Kill emulator cleanup",
     "~followup_annotations": [
@@ -688,12 +849,11 @@
   {
     "cmd": [
       "ps",
-      "-axww"
+      "aux"
     ],
-    "name": "kill and cleanup avd.list processes",
+    "name": "kill and cleanup avd.List processes after cleaning up",
     "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@",
-      "@@@STEP_LOG_END@raw_io.output_text@@@"
+      "@@@STEP_NEST_LEVEL@1@@@"
     ]
   },
   {
@@ -713,7 +873,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "17687",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -750,7 +909,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -776,7 +934,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "LOGS_FILE": "[CLEANUP]/tmp_tmp_2",
       "USE_EMULATOR": "true"
     },
@@ -808,7 +965,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "LOGS_FILE": "[CLEANUP]/tmp_tmp_2",
       "USE_EMULATOR": "true"
     },
diff --git a/recipe_modules/android_virtual_device/examples/emulator_start_retries.expected/setup_avd_pass_on_retry.json b/recipe_modules/android_virtual_device/examples/emulator_start_retries.expected/setup_avd_pass_on_retry.json
index 4bd471a..39b759f 100644
--- a/recipe_modules/android_virtual_device/examples/emulator_start_retries.expected/setup_avd_pass_on_retry.json
+++ b/recipe_modules/android_virtual_device/examples/emulator_start_retries.expected/setup_avd_pass_on_retry.json
@@ -180,6 +180,99 @@
   },
   {
     "cmd": [
+      "ps",
+      "aux"
+    ],
+    "cwd": "[CACHE]/avd",
+    "env": {
+      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
+      "AVD_CIPD_VERSION": "TESTVERSIONSTR",
+      "AVD_ROOT": "[CACHE]/avd",
+      "USE_EMULATOR": "true"
+    },
+    "env_prefixes": {
+      "PATH": [
+        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools"
+      ]
+    },
+    "env_suffixes": {
+      "DEPOT_TOOLS_UPDATE": [
+        "0"
+      ],
+      "PATH": [
+        "RECIPE_REPO[depot_tools]"
+      ]
+    },
+    "name": "start avd.kill and cleanup avd.List processes before cleaning up",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@2@@@"
+    ]
+  },
+  {
+    "cmd": [
+      "pkill",
+      "-9",
+      "-e",
+      "-f",
+      "emulator"
+    ],
+    "cwd": "[CACHE]/avd",
+    "env": {
+      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
+      "AVD_CIPD_VERSION": "TESTVERSIONSTR",
+      "AVD_ROOT": "[CACHE]/avd",
+      "USE_EMULATOR": "true"
+    },
+    "env_prefixes": {
+      "PATH": [
+        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools"
+      ]
+    },
+    "env_suffixes": {
+      "DEPOT_TOOLS_UPDATE": [
+        "0"
+      ],
+      "PATH": [
+        "RECIPE_REPO[depot_tools]"
+      ]
+    },
+    "name": "start avd.kill and cleanup avd.Kill emulator cleanup",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@2@@@"
+    ]
+  },
+  {
+    "cmd": [
+      "ps",
+      "aux"
+    ],
+    "cwd": "[CACHE]/avd",
+    "env": {
+      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
+      "AVD_CIPD_VERSION": "TESTVERSIONSTR",
+      "AVD_ROOT": "[CACHE]/avd",
+      "USE_EMULATOR": "true"
+    },
+    "env_prefixes": {
+      "PATH": [
+        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools"
+      ]
+    },
+    "env_suffixes": {
+      "DEPOT_TOOLS_UPDATE": [
+        "0"
+      ],
+      "PATH": [
+        "RECIPE_REPO[depot_tools]"
+      ]
+    },
+    "name": "start avd.kill and cleanup avd.List processes after cleaning up",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@2@@@"
+    ]
+  },
+  {
+    "cmd": [
       "xvfb-run",
       "vpython3",
       "[CACHE]/avd/src/tools/android/avd/avd.py",
@@ -239,7 +332,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "17687",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -272,7 +364,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "17687",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -305,9 +396,41 @@
   },
   {
     "cmd": [
-      "kill",
+      "ps",
+      "aux"
+    ],
+    "cwd": "[CACHE]/avd",
+    "env": {
+      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
+      "AVD_CIPD_VERSION": "TESTVERSIONSTR",
+      "AVD_ROOT": "[CACHE]/avd",
+      "USE_EMULATOR": "true"
+    },
+    "env_prefixes": {
+      "PATH": [
+        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools"
+      ]
+    },
+    "env_suffixes": {
+      "DEPOT_TOOLS_UPDATE": [
+        "0"
+      ],
+      "PATH": [
+        "RECIPE_REPO[depot_tools]"
+      ]
+    },
+    "name": "start avd.kill and cleanup avd (2).List processes before cleaning up",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@2@@@"
+    ]
+  },
+  {
+    "cmd": [
+      "pkill",
       "-9",
-      "17687"
+      "-e",
+      "-f",
+      "emulator"
     ],
     "cwd": "[CACHE]/avd",
     "env": {
@@ -337,7 +460,7 @@
   {
     "cmd": [
       "ps",
-      "-axww"
+      "aux"
     ],
     "cwd": "[CACHE]/avd",
     "env": {
@@ -359,10 +482,9 @@
         "RECIPE_REPO[depot_tools]"
       ]
     },
-    "name": "start avd.kill and cleanup avd (2).list processes",
+    "name": "start avd.kill and cleanup avd (2).List processes after cleaning up",
     "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@",
-      "@@@STEP_LOG_END@raw_io.output_text@@@"
+      "@@@STEP_NEST_LEVEL@2@@@"
     ]
   },
   {
@@ -425,7 +547,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "17687",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -458,7 +579,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "17687",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -494,9 +614,21 @@
   },
   {
     "cmd": [
-      "kill",
+      "ps",
+      "aux"
+    ],
+    "name": "kill and cleanup avd.List processes before cleaning up",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@1@@@"
+    ]
+  },
+  {
+    "cmd": [
+      "pkill",
       "-9",
-      "17687"
+      "-e",
+      "-f",
+      "emulator"
     ],
     "name": "kill and cleanup avd.Kill emulator cleanup",
     "~followup_annotations": [
@@ -506,12 +638,11 @@
   {
     "cmd": [
       "ps",
-      "-axww"
+      "aux"
     ],
-    "name": "kill and cleanup avd.list processes",
+    "name": "kill and cleanup avd.List processes after cleaning up",
     "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@",
-      "@@@STEP_LOG_END@raw_io.output_text@@@"
+      "@@@STEP_NEST_LEVEL@1@@@"
     ]
   },
   {
@@ -531,7 +662,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "17687",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -568,7 +698,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -594,7 +723,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "LOGS_FILE": "[CLEANUP]/tmp_tmp_2",
       "USE_EMULATOR": "true"
     },
@@ -626,7 +754,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "LOGS_FILE": "[CLEANUP]/tmp_tmp_2",
       "USE_EMULATOR": "true"
     },
diff --git a/recipe_modules/android_virtual_device/examples/full.expected/emulator started and stopped, processes killed.json b/recipe_modules/android_virtual_device/examples/full.expected/emulator started and stopped, processes killed.json
index c8c593e..99f7228 100644
--- a/recipe_modules/android_virtual_device/examples/full.expected/emulator started and stopped, processes killed.json
+++ b/recipe_modules/android_virtual_device/examples/full.expected/emulator started and stopped, processes killed.json
@@ -177,6 +177,99 @@
   },
   {
     "cmd": [
+      "ps",
+      "aux"
+    ],
+    "cwd": "[CACHE]/avd",
+    "env": {
+      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
+      "AVD_CIPD_VERSION": "TESTVERSIONSTR",
+      "AVD_ROOT": "[CACHE]/avd",
+      "USE_EMULATOR": "true"
+    },
+    "env_prefixes": {
+      "PATH": [
+        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools"
+      ]
+    },
+    "env_suffixes": {
+      "DEPOT_TOOLS_UPDATE": [
+        "0"
+      ],
+      "PATH": [
+        "RECIPE_REPO[depot_tools]"
+      ]
+    },
+    "name": "start avd.kill and cleanup avd.List processes before cleaning up",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@2@@@"
+    ]
+  },
+  {
+    "cmd": [
+      "pkill",
+      "-9",
+      "-e",
+      "-f",
+      "emulator"
+    ],
+    "cwd": "[CACHE]/avd",
+    "env": {
+      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
+      "AVD_CIPD_VERSION": "TESTVERSIONSTR",
+      "AVD_ROOT": "[CACHE]/avd",
+      "USE_EMULATOR": "true"
+    },
+    "env_prefixes": {
+      "PATH": [
+        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools"
+      ]
+    },
+    "env_suffixes": {
+      "DEPOT_TOOLS_UPDATE": [
+        "0"
+      ],
+      "PATH": [
+        "RECIPE_REPO[depot_tools]"
+      ]
+    },
+    "name": "start avd.kill and cleanup avd.Kill emulator cleanup",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@2@@@"
+    ]
+  },
+  {
+    "cmd": [
+      "ps",
+      "aux"
+    ],
+    "cwd": "[CACHE]/avd",
+    "env": {
+      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
+      "AVD_CIPD_VERSION": "TESTVERSIONSTR",
+      "AVD_ROOT": "[CACHE]/avd",
+      "USE_EMULATOR": "true"
+    },
+    "env_prefixes": {
+      "PATH": [
+        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools"
+      ]
+    },
+    "env_suffixes": {
+      "DEPOT_TOOLS_UPDATE": [
+        "0"
+      ],
+      "PATH": [
+        "RECIPE_REPO[depot_tools]"
+      ]
+    },
+    "name": "start avd.kill and cleanup avd.List processes after cleaning up",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@2@@@"
+    ]
+  },
+  {
+    "cmd": [
       "xvfb-run",
       "vpython3",
       "[CACHE]/avd/src/tools/android/avd/avd.py",
@@ -235,7 +328,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "17687",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -268,7 +360,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "17687",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -304,9 +395,21 @@
   },
   {
     "cmd": [
-      "kill",
+      "ps",
+      "aux"
+    ],
+    "name": "kill and cleanup avd.List processes before cleaning up",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@1@@@"
+    ]
+  },
+  {
+    "cmd": [
+      "pkill",
       "-9",
-      "17687"
+      "-e",
+      "-f",
+      "emulator"
     ],
     "name": "kill and cleanup avd.Kill emulator cleanup",
     "~followup_annotations": [
@@ -316,21 +419,9 @@
   {
     "cmd": [
       "ps",
-      "-axww"
+      "aux"
     ],
-    "name": "kill and cleanup avd.list processes",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@",
-      "@@@STEP_LOG_END@raw_io.output_text@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "kill",
-      "-9",
-      "12345"
-    ],
-    "name": "kill and cleanup avd.Kill zombie processes",
+    "name": "kill and cleanup avd.List processes after cleaning up",
     "~followup_annotations": [
       "@@@STEP_NEST_LEVEL@1@@@"
     ]
@@ -352,7 +443,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "17687",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -389,7 +479,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -415,7 +504,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "LOGS_FILE": "[CLEANUP]/tmp_tmp_2",
       "USE_EMULATOR": "true"
     },
@@ -447,7 +535,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "LOGS_FILE": "[CLEANUP]/tmp_tmp_2",
       "USE_EMULATOR": "true"
     },
@@ -478,7 +565,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -504,7 +590,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "LOGS_FILE": "[CLEANUP]/tmp_tmp_3",
       "USE_EMULATOR": "true"
     },
@@ -536,7 +621,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "LOGS_FILE": "[CLEANUP]/tmp_tmp_3",
       "USE_EMULATOR": "true"
     },
@@ -569,7 +653,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -600,6 +683,99 @@
   },
   {
     "cmd": [
+      "ps",
+      "aux"
+    ],
+    "cwd": "[CACHE]/avd",
+    "env": {
+      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
+      "AVD_CIPD_VERSION": "TESTVERSIONSTR",
+      "AVD_ROOT": "[CACHE]/avd",
+      "USE_EMULATOR": "true"
+    },
+    "env_prefixes": {
+      "PATH": [
+        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools"
+      ]
+    },
+    "env_suffixes": {
+      "DEPOT_TOOLS_UPDATE": [
+        "0"
+      ],
+      "PATH": [
+        "RECIPE_REPO[depot_tools]"
+      ]
+    },
+    "name": "start avd (2).kill and cleanup avd.List processes before cleaning up",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@2@@@"
+    ]
+  },
+  {
+    "cmd": [
+      "pkill",
+      "-9",
+      "-e",
+      "-f",
+      "emulator"
+    ],
+    "cwd": "[CACHE]/avd",
+    "env": {
+      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
+      "AVD_CIPD_VERSION": "TESTVERSIONSTR",
+      "AVD_ROOT": "[CACHE]/avd",
+      "USE_EMULATOR": "true"
+    },
+    "env_prefixes": {
+      "PATH": [
+        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools"
+      ]
+    },
+    "env_suffixes": {
+      "DEPOT_TOOLS_UPDATE": [
+        "0"
+      ],
+      "PATH": [
+        "RECIPE_REPO[depot_tools]"
+      ]
+    },
+    "name": "start avd (2).kill and cleanup avd.Kill emulator cleanup",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@2@@@"
+    ]
+  },
+  {
+    "cmd": [
+      "ps",
+      "aux"
+    ],
+    "cwd": "[CACHE]/avd",
+    "env": {
+      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
+      "AVD_CIPD_VERSION": "TESTVERSIONSTR",
+      "AVD_ROOT": "[CACHE]/avd",
+      "USE_EMULATOR": "true"
+    },
+    "env_prefixes": {
+      "PATH": [
+        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools"
+      ]
+    },
+    "env_suffixes": {
+      "DEPOT_TOOLS_UPDATE": [
+        "0"
+      ],
+      "PATH": [
+        "RECIPE_REPO[depot_tools]"
+      ]
+    },
+    "name": "start avd (2).kill and cleanup avd.List processes after cleaning up",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@2@@@"
+    ]
+  },
+  {
+    "cmd": [
       "xvfb-run",
       "vpython3",
       "[CACHE]/avd/src/tools/android/avd/avd.py",
@@ -617,7 +793,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -659,7 +834,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "17687",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -692,7 +866,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "17687",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -728,9 +901,21 @@
   },
   {
     "cmd": [
-      "kill",
+      "ps",
+      "aux"
+    ],
+    "name": "kill and cleanup avd (2).List processes before cleaning up",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@1@@@"
+    ]
+  },
+  {
+    "cmd": [
+      "pkill",
       "-9",
-      "17687"
+      "-e",
+      "-f",
+      "emulator"
     ],
     "name": "kill and cleanup avd (2).Kill emulator cleanup",
     "~followup_annotations": [
@@ -740,21 +925,9 @@
   {
     "cmd": [
       "ps",
-      "-axww"
+      "aux"
     ],
-    "name": "kill and cleanup avd (2).list processes",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@",
-      "@@@STEP_LOG_END@raw_io.output_text@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "kill",
-      "-9",
-      "12345"
-    ],
-    "name": "kill and cleanup avd (2).Kill zombie processes",
+    "name": "kill and cleanup avd (2).List processes after cleaning up",
     "~followup_annotations": [
       "@@@STEP_NEST_LEVEL@1@@@"
     ]
@@ -776,7 +949,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "17687",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -813,7 +985,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -839,7 +1010,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "LOGS_FILE": "[CLEANUP]/tmp_tmp_4",
       "USE_EMULATOR": "true"
     },
@@ -871,7 +1041,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "LOGS_FILE": "[CLEANUP]/tmp_tmp_4",
       "USE_EMULATOR": "true"
     },
diff --git a/recipe_modules/android_virtual_device/examples/full.expected/emulator started.json b/recipe_modules/android_virtual_device/examples/full.expected/emulator started.json
index 4d6b942..99f7228 100644
--- a/recipe_modules/android_virtual_device/examples/full.expected/emulator started.json
+++ b/recipe_modules/android_virtual_device/examples/full.expected/emulator started.json
@@ -177,6 +177,99 @@
   },
   {
     "cmd": [
+      "ps",
+      "aux"
+    ],
+    "cwd": "[CACHE]/avd",
+    "env": {
+      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
+      "AVD_CIPD_VERSION": "TESTVERSIONSTR",
+      "AVD_ROOT": "[CACHE]/avd",
+      "USE_EMULATOR": "true"
+    },
+    "env_prefixes": {
+      "PATH": [
+        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools"
+      ]
+    },
+    "env_suffixes": {
+      "DEPOT_TOOLS_UPDATE": [
+        "0"
+      ],
+      "PATH": [
+        "RECIPE_REPO[depot_tools]"
+      ]
+    },
+    "name": "start avd.kill and cleanup avd.List processes before cleaning up",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@2@@@"
+    ]
+  },
+  {
+    "cmd": [
+      "pkill",
+      "-9",
+      "-e",
+      "-f",
+      "emulator"
+    ],
+    "cwd": "[CACHE]/avd",
+    "env": {
+      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
+      "AVD_CIPD_VERSION": "TESTVERSIONSTR",
+      "AVD_ROOT": "[CACHE]/avd",
+      "USE_EMULATOR": "true"
+    },
+    "env_prefixes": {
+      "PATH": [
+        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools"
+      ]
+    },
+    "env_suffixes": {
+      "DEPOT_TOOLS_UPDATE": [
+        "0"
+      ],
+      "PATH": [
+        "RECIPE_REPO[depot_tools]"
+      ]
+    },
+    "name": "start avd.kill and cleanup avd.Kill emulator cleanup",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@2@@@"
+    ]
+  },
+  {
+    "cmd": [
+      "ps",
+      "aux"
+    ],
+    "cwd": "[CACHE]/avd",
+    "env": {
+      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
+      "AVD_CIPD_VERSION": "TESTVERSIONSTR",
+      "AVD_ROOT": "[CACHE]/avd",
+      "USE_EMULATOR": "true"
+    },
+    "env_prefixes": {
+      "PATH": [
+        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools"
+      ]
+    },
+    "env_suffixes": {
+      "DEPOT_TOOLS_UPDATE": [
+        "0"
+      ],
+      "PATH": [
+        "RECIPE_REPO[depot_tools]"
+      ]
+    },
+    "name": "start avd.kill and cleanup avd.List processes after cleaning up",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@2@@@"
+    ]
+  },
+  {
+    "cmd": [
       "xvfb-run",
       "vpython3",
       "[CACHE]/avd/src/tools/android/avd/avd.py",
@@ -235,7 +328,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "17687",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -268,7 +360,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "17687",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -304,9 +395,21 @@
   },
   {
     "cmd": [
-      "kill",
+      "ps",
+      "aux"
+    ],
+    "name": "kill and cleanup avd.List processes before cleaning up",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@1@@@"
+    ]
+  },
+  {
+    "cmd": [
+      "pkill",
       "-9",
-      "17687"
+      "-e",
+      "-f",
+      "emulator"
     ],
     "name": "kill and cleanup avd.Kill emulator cleanup",
     "~followup_annotations": [
@@ -316,12 +419,11 @@
   {
     "cmd": [
       "ps",
-      "-axww"
+      "aux"
     ],
-    "name": "kill and cleanup avd.list processes",
+    "name": "kill and cleanup avd.List processes after cleaning up",
     "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@",
-      "@@@STEP_LOG_END@raw_io.output_text@@@"
+      "@@@STEP_NEST_LEVEL@1@@@"
     ]
   },
   {
@@ -341,7 +443,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "17687",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -378,7 +479,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -404,7 +504,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "LOGS_FILE": "[CLEANUP]/tmp_tmp_2",
       "USE_EMULATOR": "true"
     },
@@ -436,7 +535,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "LOGS_FILE": "[CLEANUP]/tmp_tmp_2",
       "USE_EMULATOR": "true"
     },
@@ -467,7 +565,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -493,7 +590,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "LOGS_FILE": "[CLEANUP]/tmp_tmp_3",
       "USE_EMULATOR": "true"
     },
@@ -525,7 +621,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "LOGS_FILE": "[CLEANUP]/tmp_tmp_3",
       "USE_EMULATOR": "true"
     },
@@ -558,7 +653,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -589,6 +683,99 @@
   },
   {
     "cmd": [
+      "ps",
+      "aux"
+    ],
+    "cwd": "[CACHE]/avd",
+    "env": {
+      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
+      "AVD_CIPD_VERSION": "TESTVERSIONSTR",
+      "AVD_ROOT": "[CACHE]/avd",
+      "USE_EMULATOR": "true"
+    },
+    "env_prefixes": {
+      "PATH": [
+        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools"
+      ]
+    },
+    "env_suffixes": {
+      "DEPOT_TOOLS_UPDATE": [
+        "0"
+      ],
+      "PATH": [
+        "RECIPE_REPO[depot_tools]"
+      ]
+    },
+    "name": "start avd (2).kill and cleanup avd.List processes before cleaning up",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@2@@@"
+    ]
+  },
+  {
+    "cmd": [
+      "pkill",
+      "-9",
+      "-e",
+      "-f",
+      "emulator"
+    ],
+    "cwd": "[CACHE]/avd",
+    "env": {
+      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
+      "AVD_CIPD_VERSION": "TESTVERSIONSTR",
+      "AVD_ROOT": "[CACHE]/avd",
+      "USE_EMULATOR": "true"
+    },
+    "env_prefixes": {
+      "PATH": [
+        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools"
+      ]
+    },
+    "env_suffixes": {
+      "DEPOT_TOOLS_UPDATE": [
+        "0"
+      ],
+      "PATH": [
+        "RECIPE_REPO[depot_tools]"
+      ]
+    },
+    "name": "start avd (2).kill and cleanup avd.Kill emulator cleanup",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@2@@@"
+    ]
+  },
+  {
+    "cmd": [
+      "ps",
+      "aux"
+    ],
+    "cwd": "[CACHE]/avd",
+    "env": {
+      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
+      "AVD_CIPD_VERSION": "TESTVERSIONSTR",
+      "AVD_ROOT": "[CACHE]/avd",
+      "USE_EMULATOR": "true"
+    },
+    "env_prefixes": {
+      "PATH": [
+        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools"
+      ]
+    },
+    "env_suffixes": {
+      "DEPOT_TOOLS_UPDATE": [
+        "0"
+      ],
+      "PATH": [
+        "RECIPE_REPO[depot_tools]"
+      ]
+    },
+    "name": "start avd (2).kill and cleanup avd.List processes after cleaning up",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@2@@@"
+    ]
+  },
+  {
+    "cmd": [
       "xvfb-run",
       "vpython3",
       "[CACHE]/avd/src/tools/android/avd/avd.py",
@@ -606,7 +793,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -648,7 +834,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "17687",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -681,7 +866,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "17687",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -717,9 +901,21 @@
   },
   {
     "cmd": [
-      "kill",
+      "ps",
+      "aux"
+    ],
+    "name": "kill and cleanup avd (2).List processes before cleaning up",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@1@@@"
+    ]
+  },
+  {
+    "cmd": [
+      "pkill",
       "-9",
-      "17687"
+      "-e",
+      "-f",
+      "emulator"
     ],
     "name": "kill and cleanup avd (2).Kill emulator cleanup",
     "~followup_annotations": [
@@ -729,12 +925,11 @@
   {
     "cmd": [
       "ps",
-      "-axww"
+      "aux"
     ],
-    "name": "kill and cleanup avd (2).list processes",
+    "name": "kill and cleanup avd (2).List processes after cleaning up",
     "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@",
-      "@@@STEP_LOG_END@raw_io.output_text@@@"
+      "@@@STEP_NEST_LEVEL@1@@@"
     ]
   },
   {
@@ -754,7 +949,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "17687",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -791,7 +985,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -817,7 +1010,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "LOGS_FILE": "[CLEANUP]/tmp_tmp_4",
       "USE_EMULATOR": "true"
     },
@@ -849,7 +1041,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "LOGS_FILE": "[CLEANUP]/tmp_tmp_4",
       "USE_EMULATOR": "true"
     },
diff --git a/recipe_modules/android_virtual_device/examples/full.py b/recipe_modules/android_virtual_device/examples/full.py
index e5164ac..a1aee67 100644
--- a/recipe_modules/android_virtual_device/examples/full.py
+++ b/recipe_modules/android_virtual_device/examples/full.py
@@ -9,8 +9,10 @@
 
 
 def RunSteps(api):
-  env = {'USE_EMULATOR': api.properties.get('use_emulator', False),
-         'AVD_CIPD_VERSION': 'TESTVERSIONSTR'}
+  env = {
+      'USE_EMULATOR': api.properties.get('use_emulator', False),
+      'AVD_CIPD_VERSION': 'TESTVERSIONSTR'
+  }
   env_prefixes = {}
 
   with api.android_virtual_device(env=env, env_prefixes=env_prefixes,
@@ -37,8 +39,7 @@
           )
       ),
       api.step_data(
-          'start avd (2).Start Android emulator (%s)' %
-          avd_api_version,
+          'start avd (2).Start Android emulator (%s)' % avd_api_version,
           stdout=api.raw_io.output_text(
               'android_' + avd_api_version +
               '_google_apis_x86|emulator-5554 started (pid: 17687)'
@@ -58,19 +59,10 @@
           )
       ),
       api.step_data(
-          'kill and cleanup avd.list processes',
-          stdout=api.raw_io.output_text('12345 qemu-system blah')
-      ),
-      api.step_data(
-          'start avd (2).Start Android emulator (%s)' %
-          avd_api_version,
+          'start avd (2).Start Android emulator (%s)' % avd_api_version,
           stdout=api.raw_io.output_text(
               'android_' + avd_api_version +
               '_google_apis_x86|emulator-5554 started (pid: 17687)'
           )
       ),
-      api.step_data(
-          'kill and cleanup avd (2).list processes',
-          stdout=api.raw_io.output_text('12345 qemu-system blah')
-      ),
   )
diff --git a/recipe_modules/android_virtual_device/examples/full_api_34.expected/emulator_start_fails.json b/recipe_modules/android_virtual_device/examples/full_api_34.expected/emulator_start_fails.json
index b132682..7da81e4 100644
--- a/recipe_modules/android_virtual_device/examples/full_api_34.expected/emulator_start_fails.json
+++ b/recipe_modules/android_virtual_device/examples/full_api_34.expected/emulator_start_fails.json
@@ -180,6 +180,99 @@
   },
   {
     "cmd": [
+      "ps",
+      "aux"
+    ],
+    "cwd": "[CACHE]/avd",
+    "env": {
+      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
+      "AVD_CIPD_VERSION": "TESTVERSIONSTR",
+      "AVD_ROOT": "[CACHE]/avd",
+      "USE_EMULATOR": "true"
+    },
+    "env_prefixes": {
+      "PATH": [
+        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools"
+      ]
+    },
+    "env_suffixes": {
+      "DEPOT_TOOLS_UPDATE": [
+        "0"
+      ],
+      "PATH": [
+        "RECIPE_REPO[depot_tools]"
+      ]
+    },
+    "name": "start avd.kill and cleanup avd.List processes before cleaning up",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@2@@@"
+    ]
+  },
+  {
+    "cmd": [
+      "pkill",
+      "-9",
+      "-e",
+      "-f",
+      "emulator"
+    ],
+    "cwd": "[CACHE]/avd",
+    "env": {
+      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
+      "AVD_CIPD_VERSION": "TESTVERSIONSTR",
+      "AVD_ROOT": "[CACHE]/avd",
+      "USE_EMULATOR": "true"
+    },
+    "env_prefixes": {
+      "PATH": [
+        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools"
+      ]
+    },
+    "env_suffixes": {
+      "DEPOT_TOOLS_UPDATE": [
+        "0"
+      ],
+      "PATH": [
+        "RECIPE_REPO[depot_tools]"
+      ]
+    },
+    "name": "start avd.kill and cleanup avd.Kill emulator cleanup",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@2@@@"
+    ]
+  },
+  {
+    "cmd": [
+      "ps",
+      "aux"
+    ],
+    "cwd": "[CACHE]/avd",
+    "env": {
+      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
+      "AVD_CIPD_VERSION": "TESTVERSIONSTR",
+      "AVD_ROOT": "[CACHE]/avd",
+      "USE_EMULATOR": "true"
+    },
+    "env_prefixes": {
+      "PATH": [
+        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools"
+      ]
+    },
+    "env_suffixes": {
+      "DEPOT_TOOLS_UPDATE": [
+        "0"
+      ],
+      "PATH": [
+        "RECIPE_REPO[depot_tools]"
+      ]
+    },
+    "name": "start avd.kill and cleanup avd.List processes after cleaning up",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@2@@@"
+    ]
+  },
+  {
+    "cmd": [
       "xvfb-run",
       "vpython3",
       "[CACHE]/avd/src/tools/android/avd/avd.py",
@@ -229,6 +322,99 @@
   },
   {
     "cmd": [
+      "ps",
+      "aux"
+    ],
+    "cwd": "[CACHE]/avd",
+    "env": {
+      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
+      "AVD_CIPD_VERSION": "TESTVERSIONSTR",
+      "AVD_ROOT": "[CACHE]/avd",
+      "USE_EMULATOR": "true"
+    },
+    "env_prefixes": {
+      "PATH": [
+        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools"
+      ]
+    },
+    "env_suffixes": {
+      "DEPOT_TOOLS_UPDATE": [
+        "0"
+      ],
+      "PATH": [
+        "RECIPE_REPO[depot_tools]"
+      ]
+    },
+    "name": "start avd.kill and cleanup avd (2).List processes before cleaning up",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@2@@@"
+    ]
+  },
+  {
+    "cmd": [
+      "pkill",
+      "-9",
+      "-e",
+      "-f",
+      "emulator"
+    ],
+    "cwd": "[CACHE]/avd",
+    "env": {
+      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
+      "AVD_CIPD_VERSION": "TESTVERSIONSTR",
+      "AVD_ROOT": "[CACHE]/avd",
+      "USE_EMULATOR": "true"
+    },
+    "env_prefixes": {
+      "PATH": [
+        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools"
+      ]
+    },
+    "env_suffixes": {
+      "DEPOT_TOOLS_UPDATE": [
+        "0"
+      ],
+      "PATH": [
+        "RECIPE_REPO[depot_tools]"
+      ]
+    },
+    "name": "start avd.kill and cleanup avd (2).Kill emulator cleanup",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@2@@@"
+    ]
+  },
+  {
+    "cmd": [
+      "ps",
+      "aux"
+    ],
+    "cwd": "[CACHE]/avd",
+    "env": {
+      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
+      "AVD_CIPD_VERSION": "TESTVERSIONSTR",
+      "AVD_ROOT": "[CACHE]/avd",
+      "USE_EMULATOR": "true"
+    },
+    "env_prefixes": {
+      "PATH": [
+        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools"
+      ]
+    },
+    "env_suffixes": {
+      "DEPOT_TOOLS_UPDATE": [
+        "0"
+      ],
+      "PATH": [
+        "RECIPE_REPO[depot_tools]"
+      ]
+    },
+    "name": "start avd.kill and cleanup avd (2).List processes after cleaning up",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@2@@@"
+    ]
+  },
+  {
+    "cmd": [
       "xvfb-run",
       "vpython3",
       "[CACHE]/avd/src/tools/android/avd/avd.py",
@@ -278,6 +464,99 @@
   },
   {
     "cmd": [
+      "ps",
+      "aux"
+    ],
+    "cwd": "[CACHE]/avd",
+    "env": {
+      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
+      "AVD_CIPD_VERSION": "TESTVERSIONSTR",
+      "AVD_ROOT": "[CACHE]/avd",
+      "USE_EMULATOR": "true"
+    },
+    "env_prefixes": {
+      "PATH": [
+        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools"
+      ]
+    },
+    "env_suffixes": {
+      "DEPOT_TOOLS_UPDATE": [
+        "0"
+      ],
+      "PATH": [
+        "RECIPE_REPO[depot_tools]"
+      ]
+    },
+    "name": "start avd.kill and cleanup avd (3).List processes before cleaning up",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@2@@@"
+    ]
+  },
+  {
+    "cmd": [
+      "pkill",
+      "-9",
+      "-e",
+      "-f",
+      "emulator"
+    ],
+    "cwd": "[CACHE]/avd",
+    "env": {
+      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
+      "AVD_CIPD_VERSION": "TESTVERSIONSTR",
+      "AVD_ROOT": "[CACHE]/avd",
+      "USE_EMULATOR": "true"
+    },
+    "env_prefixes": {
+      "PATH": [
+        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools"
+      ]
+    },
+    "env_suffixes": {
+      "DEPOT_TOOLS_UPDATE": [
+        "0"
+      ],
+      "PATH": [
+        "RECIPE_REPO[depot_tools]"
+      ]
+    },
+    "name": "start avd.kill and cleanup avd (3).Kill emulator cleanup",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@2@@@"
+    ]
+  },
+  {
+    "cmd": [
+      "ps",
+      "aux"
+    ],
+    "cwd": "[CACHE]/avd",
+    "env": {
+      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
+      "AVD_CIPD_VERSION": "TESTVERSIONSTR",
+      "AVD_ROOT": "[CACHE]/avd",
+      "USE_EMULATOR": "true"
+    },
+    "env_prefixes": {
+      "PATH": [
+        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools"
+      ]
+    },
+    "env_suffixes": {
+      "DEPOT_TOOLS_UPDATE": [
+        "0"
+      ],
+      "PATH": [
+        "RECIPE_REPO[depot_tools]"
+      ]
+    },
+    "name": "start avd.kill and cleanup avd (3).List processes after cleaning up",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@2@@@"
+    ]
+  },
+  {
+    "cmd": [
       "xvfb-run",
       "vpython3",
       "[CACHE]/avd/src/tools/android/avd/avd.py",
@@ -323,6 +602,39 @@
     "name": "kill and cleanup avd"
   },
   {
+    "cmd": [
+      "ps",
+      "aux"
+    ],
+    "name": "kill and cleanup avd.List processes before cleaning up",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@1@@@"
+    ]
+  },
+  {
+    "cmd": [
+      "pkill",
+      "-9",
+      "-e",
+      "-f",
+      "emulator"
+    ],
+    "name": "kill and cleanup avd.Kill emulator cleanup",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@1@@@"
+    ]
+  },
+  {
+    "cmd": [
+      "ps",
+      "aux"
+    ],
+    "name": "kill and cleanup avd.List processes after cleaning up",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@1@@@"
+    ]
+  },
+  {
     "cmd": [],
     "name": "uninstall avd"
   },
@@ -375,7 +687,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -401,7 +712,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "LOGS_FILE": "[CLEANUP]/tmp_tmp_2",
       "USE_EMULATOR": "true"
     },
@@ -433,7 +743,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "LOGS_FILE": "[CLEANUP]/tmp_tmp_2",
       "USE_EMULATOR": "true"
     },
diff --git a/recipe_modules/android_virtual_device/examples/full_api_34.expected/emulator_started.json b/recipe_modules/android_virtual_device/examples/full_api_34.expected/emulator_started.json
index 4d6b942..99f7228 100644
--- a/recipe_modules/android_virtual_device/examples/full_api_34.expected/emulator_started.json
+++ b/recipe_modules/android_virtual_device/examples/full_api_34.expected/emulator_started.json
@@ -177,6 +177,99 @@
   },
   {
     "cmd": [
+      "ps",
+      "aux"
+    ],
+    "cwd": "[CACHE]/avd",
+    "env": {
+      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
+      "AVD_CIPD_VERSION": "TESTVERSIONSTR",
+      "AVD_ROOT": "[CACHE]/avd",
+      "USE_EMULATOR": "true"
+    },
+    "env_prefixes": {
+      "PATH": [
+        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools"
+      ]
+    },
+    "env_suffixes": {
+      "DEPOT_TOOLS_UPDATE": [
+        "0"
+      ],
+      "PATH": [
+        "RECIPE_REPO[depot_tools]"
+      ]
+    },
+    "name": "start avd.kill and cleanup avd.List processes before cleaning up",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@2@@@"
+    ]
+  },
+  {
+    "cmd": [
+      "pkill",
+      "-9",
+      "-e",
+      "-f",
+      "emulator"
+    ],
+    "cwd": "[CACHE]/avd",
+    "env": {
+      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
+      "AVD_CIPD_VERSION": "TESTVERSIONSTR",
+      "AVD_ROOT": "[CACHE]/avd",
+      "USE_EMULATOR": "true"
+    },
+    "env_prefixes": {
+      "PATH": [
+        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools"
+      ]
+    },
+    "env_suffixes": {
+      "DEPOT_TOOLS_UPDATE": [
+        "0"
+      ],
+      "PATH": [
+        "RECIPE_REPO[depot_tools]"
+      ]
+    },
+    "name": "start avd.kill and cleanup avd.Kill emulator cleanup",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@2@@@"
+    ]
+  },
+  {
+    "cmd": [
+      "ps",
+      "aux"
+    ],
+    "cwd": "[CACHE]/avd",
+    "env": {
+      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
+      "AVD_CIPD_VERSION": "TESTVERSIONSTR",
+      "AVD_ROOT": "[CACHE]/avd",
+      "USE_EMULATOR": "true"
+    },
+    "env_prefixes": {
+      "PATH": [
+        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools"
+      ]
+    },
+    "env_suffixes": {
+      "DEPOT_TOOLS_UPDATE": [
+        "0"
+      ],
+      "PATH": [
+        "RECIPE_REPO[depot_tools]"
+      ]
+    },
+    "name": "start avd.kill and cleanup avd.List processes after cleaning up",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@2@@@"
+    ]
+  },
+  {
+    "cmd": [
       "xvfb-run",
       "vpython3",
       "[CACHE]/avd/src/tools/android/avd/avd.py",
@@ -235,7 +328,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "17687",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -268,7 +360,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "17687",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -304,9 +395,21 @@
   },
   {
     "cmd": [
-      "kill",
+      "ps",
+      "aux"
+    ],
+    "name": "kill and cleanup avd.List processes before cleaning up",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@1@@@"
+    ]
+  },
+  {
+    "cmd": [
+      "pkill",
       "-9",
-      "17687"
+      "-e",
+      "-f",
+      "emulator"
     ],
     "name": "kill and cleanup avd.Kill emulator cleanup",
     "~followup_annotations": [
@@ -316,12 +419,11 @@
   {
     "cmd": [
       "ps",
-      "-axww"
+      "aux"
     ],
-    "name": "kill and cleanup avd.list processes",
+    "name": "kill and cleanup avd.List processes after cleaning up",
     "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@",
-      "@@@STEP_LOG_END@raw_io.output_text@@@"
+      "@@@STEP_NEST_LEVEL@1@@@"
     ]
   },
   {
@@ -341,7 +443,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "17687",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -378,7 +479,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -404,7 +504,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "LOGS_FILE": "[CLEANUP]/tmp_tmp_2",
       "USE_EMULATOR": "true"
     },
@@ -436,7 +535,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "LOGS_FILE": "[CLEANUP]/tmp_tmp_2",
       "USE_EMULATOR": "true"
     },
@@ -467,7 +565,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -493,7 +590,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "LOGS_FILE": "[CLEANUP]/tmp_tmp_3",
       "USE_EMULATOR": "true"
     },
@@ -525,7 +621,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "LOGS_FILE": "[CLEANUP]/tmp_tmp_3",
       "USE_EMULATOR": "true"
     },
@@ -558,7 +653,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -589,6 +683,99 @@
   },
   {
     "cmd": [
+      "ps",
+      "aux"
+    ],
+    "cwd": "[CACHE]/avd",
+    "env": {
+      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
+      "AVD_CIPD_VERSION": "TESTVERSIONSTR",
+      "AVD_ROOT": "[CACHE]/avd",
+      "USE_EMULATOR": "true"
+    },
+    "env_prefixes": {
+      "PATH": [
+        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools"
+      ]
+    },
+    "env_suffixes": {
+      "DEPOT_TOOLS_UPDATE": [
+        "0"
+      ],
+      "PATH": [
+        "RECIPE_REPO[depot_tools]"
+      ]
+    },
+    "name": "start avd (2).kill and cleanup avd.List processes before cleaning up",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@2@@@"
+    ]
+  },
+  {
+    "cmd": [
+      "pkill",
+      "-9",
+      "-e",
+      "-f",
+      "emulator"
+    ],
+    "cwd": "[CACHE]/avd",
+    "env": {
+      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
+      "AVD_CIPD_VERSION": "TESTVERSIONSTR",
+      "AVD_ROOT": "[CACHE]/avd",
+      "USE_EMULATOR": "true"
+    },
+    "env_prefixes": {
+      "PATH": [
+        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools"
+      ]
+    },
+    "env_suffixes": {
+      "DEPOT_TOOLS_UPDATE": [
+        "0"
+      ],
+      "PATH": [
+        "RECIPE_REPO[depot_tools]"
+      ]
+    },
+    "name": "start avd (2).kill and cleanup avd.Kill emulator cleanup",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@2@@@"
+    ]
+  },
+  {
+    "cmd": [
+      "ps",
+      "aux"
+    ],
+    "cwd": "[CACHE]/avd",
+    "env": {
+      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
+      "AVD_CIPD_VERSION": "TESTVERSIONSTR",
+      "AVD_ROOT": "[CACHE]/avd",
+      "USE_EMULATOR": "true"
+    },
+    "env_prefixes": {
+      "PATH": [
+        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools"
+      ]
+    },
+    "env_suffixes": {
+      "DEPOT_TOOLS_UPDATE": [
+        "0"
+      ],
+      "PATH": [
+        "RECIPE_REPO[depot_tools]"
+      ]
+    },
+    "name": "start avd (2).kill and cleanup avd.List processes after cleaning up",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@2@@@"
+    ]
+  },
+  {
+    "cmd": [
       "xvfb-run",
       "vpython3",
       "[CACHE]/avd/src/tools/android/avd/avd.py",
@@ -606,7 +793,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -648,7 +834,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "17687",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -681,7 +866,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "17687",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -717,9 +901,21 @@
   },
   {
     "cmd": [
-      "kill",
+      "ps",
+      "aux"
+    ],
+    "name": "kill and cleanup avd (2).List processes before cleaning up",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@1@@@"
+    ]
+  },
+  {
+    "cmd": [
+      "pkill",
       "-9",
-      "17687"
+      "-e",
+      "-f",
+      "emulator"
     ],
     "name": "kill and cleanup avd (2).Kill emulator cleanup",
     "~followup_annotations": [
@@ -729,12 +925,11 @@
   {
     "cmd": [
       "ps",
-      "-axww"
+      "aux"
     ],
-    "name": "kill and cleanup avd (2).list processes",
+    "name": "kill and cleanup avd (2).List processes after cleaning up",
     "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@",
-      "@@@STEP_LOG_END@raw_io.output_text@@@"
+      "@@@STEP_NEST_LEVEL@1@@@"
     ]
   },
   {
@@ -754,7 +949,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "17687",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -791,7 +985,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -817,7 +1010,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "LOGS_FILE": "[CLEANUP]/tmp_tmp_4",
       "USE_EMULATOR": "true"
     },
@@ -849,7 +1041,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "LOGS_FILE": "[CLEANUP]/tmp_tmp_4",
       "USE_EMULATOR": "true"
     },
diff --git a/recipe_modules/android_virtual_device/examples/full_api_34.expected/emulator_started_and stopped_processes_killed.json b/recipe_modules/android_virtual_device/examples/full_api_34.expected/emulator_started_and stopped_processes_killed.json
index c8c593e..99f7228 100644
--- a/recipe_modules/android_virtual_device/examples/full_api_34.expected/emulator_started_and stopped_processes_killed.json
+++ b/recipe_modules/android_virtual_device/examples/full_api_34.expected/emulator_started_and stopped_processes_killed.json
@@ -177,6 +177,99 @@
   },
   {
     "cmd": [
+      "ps",
+      "aux"
+    ],
+    "cwd": "[CACHE]/avd",
+    "env": {
+      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
+      "AVD_CIPD_VERSION": "TESTVERSIONSTR",
+      "AVD_ROOT": "[CACHE]/avd",
+      "USE_EMULATOR": "true"
+    },
+    "env_prefixes": {
+      "PATH": [
+        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools"
+      ]
+    },
+    "env_suffixes": {
+      "DEPOT_TOOLS_UPDATE": [
+        "0"
+      ],
+      "PATH": [
+        "RECIPE_REPO[depot_tools]"
+      ]
+    },
+    "name": "start avd.kill and cleanup avd.List processes before cleaning up",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@2@@@"
+    ]
+  },
+  {
+    "cmd": [
+      "pkill",
+      "-9",
+      "-e",
+      "-f",
+      "emulator"
+    ],
+    "cwd": "[CACHE]/avd",
+    "env": {
+      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
+      "AVD_CIPD_VERSION": "TESTVERSIONSTR",
+      "AVD_ROOT": "[CACHE]/avd",
+      "USE_EMULATOR": "true"
+    },
+    "env_prefixes": {
+      "PATH": [
+        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools"
+      ]
+    },
+    "env_suffixes": {
+      "DEPOT_TOOLS_UPDATE": [
+        "0"
+      ],
+      "PATH": [
+        "RECIPE_REPO[depot_tools]"
+      ]
+    },
+    "name": "start avd.kill and cleanup avd.Kill emulator cleanup",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@2@@@"
+    ]
+  },
+  {
+    "cmd": [
+      "ps",
+      "aux"
+    ],
+    "cwd": "[CACHE]/avd",
+    "env": {
+      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
+      "AVD_CIPD_VERSION": "TESTVERSIONSTR",
+      "AVD_ROOT": "[CACHE]/avd",
+      "USE_EMULATOR": "true"
+    },
+    "env_prefixes": {
+      "PATH": [
+        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools"
+      ]
+    },
+    "env_suffixes": {
+      "DEPOT_TOOLS_UPDATE": [
+        "0"
+      ],
+      "PATH": [
+        "RECIPE_REPO[depot_tools]"
+      ]
+    },
+    "name": "start avd.kill and cleanup avd.List processes after cleaning up",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@2@@@"
+    ]
+  },
+  {
+    "cmd": [
       "xvfb-run",
       "vpython3",
       "[CACHE]/avd/src/tools/android/avd/avd.py",
@@ -235,7 +328,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "17687",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -268,7 +360,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "17687",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -304,9 +395,21 @@
   },
   {
     "cmd": [
-      "kill",
+      "ps",
+      "aux"
+    ],
+    "name": "kill and cleanup avd.List processes before cleaning up",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@1@@@"
+    ]
+  },
+  {
+    "cmd": [
+      "pkill",
       "-9",
-      "17687"
+      "-e",
+      "-f",
+      "emulator"
     ],
     "name": "kill and cleanup avd.Kill emulator cleanup",
     "~followup_annotations": [
@@ -316,21 +419,9 @@
   {
     "cmd": [
       "ps",
-      "-axww"
+      "aux"
     ],
-    "name": "kill and cleanup avd.list processes",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@",
-      "@@@STEP_LOG_END@raw_io.output_text@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "kill",
-      "-9",
-      "12345"
-    ],
-    "name": "kill and cleanup avd.Kill zombie processes",
+    "name": "kill and cleanup avd.List processes after cleaning up",
     "~followup_annotations": [
       "@@@STEP_NEST_LEVEL@1@@@"
     ]
@@ -352,7 +443,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "17687",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -389,7 +479,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -415,7 +504,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "LOGS_FILE": "[CLEANUP]/tmp_tmp_2",
       "USE_EMULATOR": "true"
     },
@@ -447,7 +535,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "LOGS_FILE": "[CLEANUP]/tmp_tmp_2",
       "USE_EMULATOR": "true"
     },
@@ -478,7 +565,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -504,7 +590,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "LOGS_FILE": "[CLEANUP]/tmp_tmp_3",
       "USE_EMULATOR": "true"
     },
@@ -536,7 +621,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "LOGS_FILE": "[CLEANUP]/tmp_tmp_3",
       "USE_EMULATOR": "true"
     },
@@ -569,7 +653,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -600,6 +683,99 @@
   },
   {
     "cmd": [
+      "ps",
+      "aux"
+    ],
+    "cwd": "[CACHE]/avd",
+    "env": {
+      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
+      "AVD_CIPD_VERSION": "TESTVERSIONSTR",
+      "AVD_ROOT": "[CACHE]/avd",
+      "USE_EMULATOR": "true"
+    },
+    "env_prefixes": {
+      "PATH": [
+        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools"
+      ]
+    },
+    "env_suffixes": {
+      "DEPOT_TOOLS_UPDATE": [
+        "0"
+      ],
+      "PATH": [
+        "RECIPE_REPO[depot_tools]"
+      ]
+    },
+    "name": "start avd (2).kill and cleanup avd.List processes before cleaning up",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@2@@@"
+    ]
+  },
+  {
+    "cmd": [
+      "pkill",
+      "-9",
+      "-e",
+      "-f",
+      "emulator"
+    ],
+    "cwd": "[CACHE]/avd",
+    "env": {
+      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
+      "AVD_CIPD_VERSION": "TESTVERSIONSTR",
+      "AVD_ROOT": "[CACHE]/avd",
+      "USE_EMULATOR": "true"
+    },
+    "env_prefixes": {
+      "PATH": [
+        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools"
+      ]
+    },
+    "env_suffixes": {
+      "DEPOT_TOOLS_UPDATE": [
+        "0"
+      ],
+      "PATH": [
+        "RECIPE_REPO[depot_tools]"
+      ]
+    },
+    "name": "start avd (2).kill and cleanup avd.Kill emulator cleanup",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@2@@@"
+    ]
+  },
+  {
+    "cmd": [
+      "ps",
+      "aux"
+    ],
+    "cwd": "[CACHE]/avd",
+    "env": {
+      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
+      "AVD_CIPD_VERSION": "TESTVERSIONSTR",
+      "AVD_ROOT": "[CACHE]/avd",
+      "USE_EMULATOR": "true"
+    },
+    "env_prefixes": {
+      "PATH": [
+        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools"
+      ]
+    },
+    "env_suffixes": {
+      "DEPOT_TOOLS_UPDATE": [
+        "0"
+      ],
+      "PATH": [
+        "RECIPE_REPO[depot_tools]"
+      ]
+    },
+    "name": "start avd (2).kill and cleanup avd.List processes after cleaning up",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@2@@@"
+    ]
+  },
+  {
+    "cmd": [
       "xvfb-run",
       "vpython3",
       "[CACHE]/avd/src/tools/android/avd/avd.py",
@@ -617,7 +793,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -659,7 +834,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "17687",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -692,7 +866,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "17687",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -728,9 +901,21 @@
   },
   {
     "cmd": [
-      "kill",
+      "ps",
+      "aux"
+    ],
+    "name": "kill and cleanup avd (2).List processes before cleaning up",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@1@@@"
+    ]
+  },
+  {
+    "cmd": [
+      "pkill",
       "-9",
-      "17687"
+      "-e",
+      "-f",
+      "emulator"
     ],
     "name": "kill and cleanup avd (2).Kill emulator cleanup",
     "~followup_annotations": [
@@ -740,21 +925,9 @@
   {
     "cmd": [
       "ps",
-      "-axww"
+      "aux"
     ],
-    "name": "kill and cleanup avd (2).list processes",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@",
-      "@@@STEP_LOG_END@raw_io.output_text@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "kill",
-      "-9",
-      "12345"
-    ],
-    "name": "kill and cleanup avd (2).Kill zombie processes",
+    "name": "kill and cleanup avd (2).List processes after cleaning up",
     "~followup_annotations": [
       "@@@STEP_NEST_LEVEL@1@@@"
     ]
@@ -776,7 +949,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "17687",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -813,7 +985,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -839,7 +1010,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "LOGS_FILE": "[CLEANUP]/tmp_tmp_4",
       "USE_EMULATOR": "true"
     },
@@ -871,7 +1041,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "LOGS_FILE": "[CLEANUP]/tmp_tmp_4",
       "USE_EMULATOR": "true"
     },
diff --git a/recipe_modules/android_virtual_device/examples/full_api_34.py b/recipe_modules/android_virtual_device/examples/full_api_34.py
index d7aeb11..5033069 100644
--- a/recipe_modules/android_virtual_device/examples/full_api_34.py
+++ b/recipe_modules/android_virtual_device/examples/full_api_34.py
@@ -75,18 +75,10 @@
           )
       ),
       api.step_data(
-          'kill and cleanup avd.list processes',
-          stdout=api.raw_io.output_text('12345 qemu-system blah')
-      ),
-      api.step_data(
           'start avd (2).Start Android emulator (%s)' % avd_api_version,
           stdout=api.raw_io.output_text(
               'android_' + avd_api_version +
               '_google_apis_x86|emulator-5554 started (pid: 17687)'
           )
       ),
-      api.step_data(
-          'kill and cleanup avd (2).list processes',
-          stdout=api.raw_io.output_text('12345 qemu-system blah')
-      ),
   )
diff --git a/recipe_modules/android_virtual_device/examples/full_legacy_version.expected/emulator started and stopped, processes killed.json b/recipe_modules/android_virtual_device/examples/full_legacy_version.expected/emulator started and stopped, processes killed.json
index 37a35af..35981b0 100644
--- a/recipe_modules/android_virtual_device/examples/full_legacy_version.expected/emulator started and stopped, processes killed.json
+++ b/recipe_modules/android_virtual_device/examples/full_legacy_version.expected/emulator started and stopped, processes killed.json
@@ -177,6 +177,99 @@
   },
   {
     "cmd": [
+      "ps",
+      "aux"
+    ],
+    "cwd": "[CACHE]/avd",
+    "env": {
+      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
+      "AVD_CIPD_VERSION": "TESTVERSIONSTR",
+      "AVD_ROOT": "[CACHE]/avd",
+      "USE_EMULATOR": "true"
+    },
+    "env_prefixes": {
+      "PATH": [
+        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools"
+      ]
+    },
+    "env_suffixes": {
+      "DEPOT_TOOLS_UPDATE": [
+        "0"
+      ],
+      "PATH": [
+        "RECIPE_REPO[depot_tools]"
+      ]
+    },
+    "name": "start avd.kill and cleanup avd.List processes before cleaning up",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@2@@@"
+    ]
+  },
+  {
+    "cmd": [
+      "pkill",
+      "-9",
+      "-e",
+      "-f",
+      "emulator"
+    ],
+    "cwd": "[CACHE]/avd",
+    "env": {
+      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
+      "AVD_CIPD_VERSION": "TESTVERSIONSTR",
+      "AVD_ROOT": "[CACHE]/avd",
+      "USE_EMULATOR": "true"
+    },
+    "env_prefixes": {
+      "PATH": [
+        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools"
+      ]
+    },
+    "env_suffixes": {
+      "DEPOT_TOOLS_UPDATE": [
+        "0"
+      ],
+      "PATH": [
+        "RECIPE_REPO[depot_tools]"
+      ]
+    },
+    "name": "start avd.kill and cleanup avd.Kill emulator cleanup",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@2@@@"
+    ]
+  },
+  {
+    "cmd": [
+      "ps",
+      "aux"
+    ],
+    "cwd": "[CACHE]/avd",
+    "env": {
+      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
+      "AVD_CIPD_VERSION": "TESTVERSIONSTR",
+      "AVD_ROOT": "[CACHE]/avd",
+      "USE_EMULATOR": "true"
+    },
+    "env_prefixes": {
+      "PATH": [
+        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools"
+      ]
+    },
+    "env_suffixes": {
+      "DEPOT_TOOLS_UPDATE": [
+        "0"
+      ],
+      "PATH": [
+        "RECIPE_REPO[depot_tools]"
+      ]
+    },
+    "name": "start avd.kill and cleanup avd.List processes after cleaning up",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@2@@@"
+    ]
+  },
+  {
+    "cmd": [
       "xvfb-run",
       "vpython3",
       "[CACHE]/avd/src/tools/android/avd/avd.py",
@@ -235,7 +328,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "17687",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -268,7 +360,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "17687",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -304,9 +395,21 @@
   },
   {
     "cmd": [
-      "kill",
+      "ps",
+      "aux"
+    ],
+    "name": "kill and cleanup avd.List processes before cleaning up",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@1@@@"
+    ]
+  },
+  {
+    "cmd": [
+      "pkill",
       "-9",
-      "17687"
+      "-e",
+      "-f",
+      "emulator"
     ],
     "name": "kill and cleanup avd.Kill emulator cleanup",
     "~followup_annotations": [
@@ -316,21 +419,9 @@
   {
     "cmd": [
       "ps",
-      "-axww"
+      "aux"
     ],
-    "name": "kill and cleanup avd.list processes",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@",
-      "@@@STEP_LOG_END@raw_io.output_text@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "kill",
-      "-9",
-      "12345"
-    ],
-    "name": "kill and cleanup avd.Kill zombie processes",
+    "name": "kill and cleanup avd.List processes after cleaning up",
     "~followup_annotations": [
       "@@@STEP_NEST_LEVEL@1@@@"
     ]
@@ -352,7 +443,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "17687",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -389,7 +479,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -415,7 +504,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "LOGS_FILE": "[CLEANUP]/tmp_tmp_2",
       "USE_EMULATOR": "true"
     },
@@ -447,7 +535,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "LOGS_FILE": "[CLEANUP]/tmp_tmp_2",
       "USE_EMULATOR": "true"
     },
@@ -478,7 +565,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -504,7 +590,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "LOGS_FILE": "[CLEANUP]/tmp_tmp_3",
       "USE_EMULATOR": "true"
     },
@@ -536,7 +621,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "LOGS_FILE": "[CLEANUP]/tmp_tmp_3",
       "USE_EMULATOR": "true"
     },
@@ -569,7 +653,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -600,6 +683,99 @@
   },
   {
     "cmd": [
+      "ps",
+      "aux"
+    ],
+    "cwd": "[CACHE]/avd",
+    "env": {
+      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
+      "AVD_CIPD_VERSION": "TESTVERSIONSTR",
+      "AVD_ROOT": "[CACHE]/avd",
+      "USE_EMULATOR": "true"
+    },
+    "env_prefixes": {
+      "PATH": [
+        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools"
+      ]
+    },
+    "env_suffixes": {
+      "DEPOT_TOOLS_UPDATE": [
+        "0"
+      ],
+      "PATH": [
+        "RECIPE_REPO[depot_tools]"
+      ]
+    },
+    "name": "start avd (2).kill and cleanup avd.List processes before cleaning up",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@2@@@"
+    ]
+  },
+  {
+    "cmd": [
+      "pkill",
+      "-9",
+      "-e",
+      "-f",
+      "emulator"
+    ],
+    "cwd": "[CACHE]/avd",
+    "env": {
+      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
+      "AVD_CIPD_VERSION": "TESTVERSIONSTR",
+      "AVD_ROOT": "[CACHE]/avd",
+      "USE_EMULATOR": "true"
+    },
+    "env_prefixes": {
+      "PATH": [
+        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools"
+      ]
+    },
+    "env_suffixes": {
+      "DEPOT_TOOLS_UPDATE": [
+        "0"
+      ],
+      "PATH": [
+        "RECIPE_REPO[depot_tools]"
+      ]
+    },
+    "name": "start avd (2).kill and cleanup avd.Kill emulator cleanup",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@2@@@"
+    ]
+  },
+  {
+    "cmd": [
+      "ps",
+      "aux"
+    ],
+    "cwd": "[CACHE]/avd",
+    "env": {
+      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
+      "AVD_CIPD_VERSION": "TESTVERSIONSTR",
+      "AVD_ROOT": "[CACHE]/avd",
+      "USE_EMULATOR": "true"
+    },
+    "env_prefixes": {
+      "PATH": [
+        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools"
+      ]
+    },
+    "env_suffixes": {
+      "DEPOT_TOOLS_UPDATE": [
+        "0"
+      ],
+      "PATH": [
+        "RECIPE_REPO[depot_tools]"
+      ]
+    },
+    "name": "start avd (2).kill and cleanup avd.List processes after cleaning up",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@2@@@"
+    ]
+  },
+  {
+    "cmd": [
       "xvfb-run",
       "vpython3",
       "[CACHE]/avd/src/tools/android/avd/avd.py",
@@ -617,7 +793,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -659,7 +834,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "17687",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -692,7 +866,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "17687",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -728,9 +901,21 @@
   },
   {
     "cmd": [
-      "kill",
+      "ps",
+      "aux"
+    ],
+    "name": "kill and cleanup avd (2).List processes before cleaning up",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@1@@@"
+    ]
+  },
+  {
+    "cmd": [
+      "pkill",
       "-9",
-      "17687"
+      "-e",
+      "-f",
+      "emulator"
     ],
     "name": "kill and cleanup avd (2).Kill emulator cleanup",
     "~followup_annotations": [
@@ -740,21 +925,9 @@
   {
     "cmd": [
       "ps",
-      "-axww"
+      "aux"
     ],
-    "name": "kill and cleanup avd (2).list processes",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@",
-      "@@@STEP_LOG_END@raw_io.output_text@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "kill",
-      "-9",
-      "12345"
-    ],
-    "name": "kill and cleanup avd (2).Kill zombie processes",
+    "name": "kill and cleanup avd (2).List processes after cleaning up",
     "~followup_annotations": [
       "@@@STEP_NEST_LEVEL@1@@@"
     ]
@@ -776,7 +949,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "17687",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -813,7 +985,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -839,7 +1010,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "LOGS_FILE": "[CLEANUP]/tmp_tmp_4",
       "USE_EMULATOR": "true"
     },
@@ -871,7 +1041,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "LOGS_FILE": "[CLEANUP]/tmp_tmp_4",
       "USE_EMULATOR": "true"
     },
diff --git a/recipe_modules/android_virtual_device/examples/full_legacy_version.expected/emulator started.json b/recipe_modules/android_virtual_device/examples/full_legacy_version.expected/emulator started.json
index 4cec501..35981b0 100644
--- a/recipe_modules/android_virtual_device/examples/full_legacy_version.expected/emulator started.json
+++ b/recipe_modules/android_virtual_device/examples/full_legacy_version.expected/emulator started.json
@@ -177,6 +177,99 @@
   },
   {
     "cmd": [
+      "ps",
+      "aux"
+    ],
+    "cwd": "[CACHE]/avd",
+    "env": {
+      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
+      "AVD_CIPD_VERSION": "TESTVERSIONSTR",
+      "AVD_ROOT": "[CACHE]/avd",
+      "USE_EMULATOR": "true"
+    },
+    "env_prefixes": {
+      "PATH": [
+        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools"
+      ]
+    },
+    "env_suffixes": {
+      "DEPOT_TOOLS_UPDATE": [
+        "0"
+      ],
+      "PATH": [
+        "RECIPE_REPO[depot_tools]"
+      ]
+    },
+    "name": "start avd.kill and cleanup avd.List processes before cleaning up",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@2@@@"
+    ]
+  },
+  {
+    "cmd": [
+      "pkill",
+      "-9",
+      "-e",
+      "-f",
+      "emulator"
+    ],
+    "cwd": "[CACHE]/avd",
+    "env": {
+      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
+      "AVD_CIPD_VERSION": "TESTVERSIONSTR",
+      "AVD_ROOT": "[CACHE]/avd",
+      "USE_EMULATOR": "true"
+    },
+    "env_prefixes": {
+      "PATH": [
+        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools"
+      ]
+    },
+    "env_suffixes": {
+      "DEPOT_TOOLS_UPDATE": [
+        "0"
+      ],
+      "PATH": [
+        "RECIPE_REPO[depot_tools]"
+      ]
+    },
+    "name": "start avd.kill and cleanup avd.Kill emulator cleanup",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@2@@@"
+    ]
+  },
+  {
+    "cmd": [
+      "ps",
+      "aux"
+    ],
+    "cwd": "[CACHE]/avd",
+    "env": {
+      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
+      "AVD_CIPD_VERSION": "TESTVERSIONSTR",
+      "AVD_ROOT": "[CACHE]/avd",
+      "USE_EMULATOR": "true"
+    },
+    "env_prefixes": {
+      "PATH": [
+        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools"
+      ]
+    },
+    "env_suffixes": {
+      "DEPOT_TOOLS_UPDATE": [
+        "0"
+      ],
+      "PATH": [
+        "RECIPE_REPO[depot_tools]"
+      ]
+    },
+    "name": "start avd.kill and cleanup avd.List processes after cleaning up",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@2@@@"
+    ]
+  },
+  {
+    "cmd": [
       "xvfb-run",
       "vpython3",
       "[CACHE]/avd/src/tools/android/avd/avd.py",
@@ -235,7 +328,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "17687",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -268,7 +360,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "17687",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -304,9 +395,21 @@
   },
   {
     "cmd": [
-      "kill",
+      "ps",
+      "aux"
+    ],
+    "name": "kill and cleanup avd.List processes before cleaning up",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@1@@@"
+    ]
+  },
+  {
+    "cmd": [
+      "pkill",
       "-9",
-      "17687"
+      "-e",
+      "-f",
+      "emulator"
     ],
     "name": "kill and cleanup avd.Kill emulator cleanup",
     "~followup_annotations": [
@@ -316,12 +419,11 @@
   {
     "cmd": [
       "ps",
-      "-axww"
+      "aux"
     ],
-    "name": "kill and cleanup avd.list processes",
+    "name": "kill and cleanup avd.List processes after cleaning up",
     "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@",
-      "@@@STEP_LOG_END@raw_io.output_text@@@"
+      "@@@STEP_NEST_LEVEL@1@@@"
     ]
   },
   {
@@ -341,7 +443,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "17687",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -378,7 +479,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -404,7 +504,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "LOGS_FILE": "[CLEANUP]/tmp_tmp_2",
       "USE_EMULATOR": "true"
     },
@@ -436,7 +535,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "LOGS_FILE": "[CLEANUP]/tmp_tmp_2",
       "USE_EMULATOR": "true"
     },
@@ -467,7 +565,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -493,7 +590,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "LOGS_FILE": "[CLEANUP]/tmp_tmp_3",
       "USE_EMULATOR": "true"
     },
@@ -525,7 +621,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "LOGS_FILE": "[CLEANUP]/tmp_tmp_3",
       "USE_EMULATOR": "true"
     },
@@ -558,7 +653,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -589,6 +683,99 @@
   },
   {
     "cmd": [
+      "ps",
+      "aux"
+    ],
+    "cwd": "[CACHE]/avd",
+    "env": {
+      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
+      "AVD_CIPD_VERSION": "TESTVERSIONSTR",
+      "AVD_ROOT": "[CACHE]/avd",
+      "USE_EMULATOR": "true"
+    },
+    "env_prefixes": {
+      "PATH": [
+        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools"
+      ]
+    },
+    "env_suffixes": {
+      "DEPOT_TOOLS_UPDATE": [
+        "0"
+      ],
+      "PATH": [
+        "RECIPE_REPO[depot_tools]"
+      ]
+    },
+    "name": "start avd (2).kill and cleanup avd.List processes before cleaning up",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@2@@@"
+    ]
+  },
+  {
+    "cmd": [
+      "pkill",
+      "-9",
+      "-e",
+      "-f",
+      "emulator"
+    ],
+    "cwd": "[CACHE]/avd",
+    "env": {
+      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
+      "AVD_CIPD_VERSION": "TESTVERSIONSTR",
+      "AVD_ROOT": "[CACHE]/avd",
+      "USE_EMULATOR": "true"
+    },
+    "env_prefixes": {
+      "PATH": [
+        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools"
+      ]
+    },
+    "env_suffixes": {
+      "DEPOT_TOOLS_UPDATE": [
+        "0"
+      ],
+      "PATH": [
+        "RECIPE_REPO[depot_tools]"
+      ]
+    },
+    "name": "start avd (2).kill and cleanup avd.Kill emulator cleanup",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@2@@@"
+    ]
+  },
+  {
+    "cmd": [
+      "ps",
+      "aux"
+    ],
+    "cwd": "[CACHE]/avd",
+    "env": {
+      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
+      "AVD_CIPD_VERSION": "TESTVERSIONSTR",
+      "AVD_ROOT": "[CACHE]/avd",
+      "USE_EMULATOR": "true"
+    },
+    "env_prefixes": {
+      "PATH": [
+        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools"
+      ]
+    },
+    "env_suffixes": {
+      "DEPOT_TOOLS_UPDATE": [
+        "0"
+      ],
+      "PATH": [
+        "RECIPE_REPO[depot_tools]"
+      ]
+    },
+    "name": "start avd (2).kill and cleanup avd.List processes after cleaning up",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@2@@@"
+    ]
+  },
+  {
+    "cmd": [
       "xvfb-run",
       "vpython3",
       "[CACHE]/avd/src/tools/android/avd/avd.py",
@@ -606,7 +793,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -648,7 +834,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "17687",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -681,7 +866,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "17687",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -717,9 +901,21 @@
   },
   {
     "cmd": [
-      "kill",
+      "ps",
+      "aux"
+    ],
+    "name": "kill and cleanup avd (2).List processes before cleaning up",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@1@@@"
+    ]
+  },
+  {
+    "cmd": [
+      "pkill",
       "-9",
-      "17687"
+      "-e",
+      "-f",
+      "emulator"
     ],
     "name": "kill and cleanup avd (2).Kill emulator cleanup",
     "~followup_annotations": [
@@ -729,12 +925,11 @@
   {
     "cmd": [
       "ps",
-      "-axww"
+      "aux"
     ],
-    "name": "kill and cleanup avd (2).list processes",
+    "name": "kill and cleanup avd (2).List processes after cleaning up",
     "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@",
-      "@@@STEP_LOG_END@raw_io.output_text@@@"
+      "@@@STEP_NEST_LEVEL@1@@@"
     ]
   },
   {
@@ -754,7 +949,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "17687",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -791,7 +985,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -817,7 +1010,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "LOGS_FILE": "[CLEANUP]/tmp_tmp_4",
       "USE_EMULATOR": "true"
     },
@@ -849,7 +1041,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "LOGS_FILE": "[CLEANUP]/tmp_tmp_4",
       "USE_EMULATOR": "true"
     },
diff --git a/recipe_modules/android_virtual_device/examples/full_legacy_version.py b/recipe_modules/android_virtual_device/examples/full_legacy_version.py
index dd6fcab..8b35966 100644
--- a/recipe_modules/android_virtual_device/examples/full_legacy_version.py
+++ b/recipe_modules/android_virtual_device/examples/full_legacy_version.py
@@ -9,8 +9,10 @@
 
 
 def RunSteps(api):
-  env = {'USE_EMULATOR': api.properties.get('use_emulator', False),
-         'AVD_CIPD_VERSION': 'TESTVERSIONSTR'}
+  env = {
+      'USE_EMULATOR': api.properties.get('use_emulator', False),
+      'AVD_CIPD_VERSION': 'TESTVERSIONSTR'
+  }
   env_prefixes = {}
 
   with api.android_virtual_device(env=env, env_prefixes=env_prefixes,
@@ -21,6 +23,7 @@
                                   version='34'):
     api.step('Do something', ['echo', 'hello'])
 
+
 def GenTests(api):
   avd_api_version = '34'
 
@@ -35,8 +38,7 @@
           )
       ),
       api.step_data(
-          'start avd (2).Start Android emulator (%s)' %
-          avd_api_version,
+          'start avd (2).Start Android emulator (%s)' % avd_api_version,
           stdout=api.raw_io.output_text(
               'android_' + avd_api_version +
               '_google_apis_x86|emulator-5554 started (pid: 17687)'
@@ -55,19 +57,10 @@
           )
       ),
       api.step_data(
-          'kill and cleanup avd.list processes',
-          stdout=api.raw_io.output_text('12345 qemu-system blah')
-      ),
-      api.step_data(
-          'start avd (2).Start Android emulator (%s)' %
-          avd_api_version,
+          'start avd (2).Start Android emulator (%s)' % avd_api_version,
           stdout=api.raw_io.output_text(
               'android_' + avd_api_version +
               '_google_apis_x86|emulator-5554 started (pid: 17687)'
           )
       ),
-      api.step_data(
-          'kill and cleanup avd (2).list processes',
-          stdout=api.raw_io.output_text('12345 qemu-system blah')
-      ),
   )
diff --git a/recipe_modules/android_virtual_device/examples/full_legacy_version_28.expected/emulator started and stopped, processes killed.json b/recipe_modules/android_virtual_device/examples/full_legacy_version_28.expected/emulator started and stopped, processes killed.json
index f55c996..59b49f8 100644
--- a/recipe_modules/android_virtual_device/examples/full_legacy_version_28.expected/emulator started and stopped, processes killed.json
+++ b/recipe_modules/android_virtual_device/examples/full_legacy_version_28.expected/emulator started and stopped, processes killed.json
@@ -177,6 +177,99 @@
   },
   {
     "cmd": [
+      "ps",
+      "aux"
+    ],
+    "cwd": "[CACHE]/avd",
+    "env": {
+      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
+      "AVD_CIPD_VERSION": "TESTVERSIONSTR",
+      "AVD_ROOT": "[CACHE]/avd",
+      "USE_EMULATOR": "true"
+    },
+    "env_prefixes": {
+      "PATH": [
+        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools"
+      ]
+    },
+    "env_suffixes": {
+      "DEPOT_TOOLS_UPDATE": [
+        "0"
+      ],
+      "PATH": [
+        "RECIPE_REPO[depot_tools]"
+      ]
+    },
+    "name": "start avd.kill and cleanup avd.List processes before cleaning up",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@2@@@"
+    ]
+  },
+  {
+    "cmd": [
+      "pkill",
+      "-9",
+      "-e",
+      "-f",
+      "emulator"
+    ],
+    "cwd": "[CACHE]/avd",
+    "env": {
+      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
+      "AVD_CIPD_VERSION": "TESTVERSIONSTR",
+      "AVD_ROOT": "[CACHE]/avd",
+      "USE_EMULATOR": "true"
+    },
+    "env_prefixes": {
+      "PATH": [
+        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools"
+      ]
+    },
+    "env_suffixes": {
+      "DEPOT_TOOLS_UPDATE": [
+        "0"
+      ],
+      "PATH": [
+        "RECIPE_REPO[depot_tools]"
+      ]
+    },
+    "name": "start avd.kill and cleanup avd.Kill emulator cleanup",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@2@@@"
+    ]
+  },
+  {
+    "cmd": [
+      "ps",
+      "aux"
+    ],
+    "cwd": "[CACHE]/avd",
+    "env": {
+      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
+      "AVD_CIPD_VERSION": "TESTVERSIONSTR",
+      "AVD_ROOT": "[CACHE]/avd",
+      "USE_EMULATOR": "true"
+    },
+    "env_prefixes": {
+      "PATH": [
+        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools"
+      ]
+    },
+    "env_suffixes": {
+      "DEPOT_TOOLS_UPDATE": [
+        "0"
+      ],
+      "PATH": [
+        "RECIPE_REPO[depot_tools]"
+      ]
+    },
+    "name": "start avd.kill and cleanup avd.List processes after cleaning up",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@2@@@"
+    ]
+  },
+  {
+    "cmd": [
       "xvfb-run",
       "vpython3",
       "[CACHE]/avd/src/tools/android/avd/avd.py",
@@ -235,7 +328,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "17687",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -268,7 +360,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "17687",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -304,9 +395,21 @@
   },
   {
     "cmd": [
-      "kill",
+      "ps",
+      "aux"
+    ],
+    "name": "kill and cleanup avd.List processes before cleaning up",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@1@@@"
+    ]
+  },
+  {
+    "cmd": [
+      "pkill",
       "-9",
-      "17687"
+      "-e",
+      "-f",
+      "emulator"
     ],
     "name": "kill and cleanup avd.Kill emulator cleanup",
     "~followup_annotations": [
@@ -316,21 +419,9 @@
   {
     "cmd": [
       "ps",
-      "-axww"
+      "aux"
     ],
-    "name": "kill and cleanup avd.list processes",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@",
-      "@@@STEP_LOG_END@raw_io.output_text@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "kill",
-      "-9",
-      "12345"
-    ],
-    "name": "kill and cleanup avd.Kill zombie processes",
+    "name": "kill and cleanup avd.List processes after cleaning up",
     "~followup_annotations": [
       "@@@STEP_NEST_LEVEL@1@@@"
     ]
@@ -352,7 +443,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "17687",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -389,7 +479,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -415,7 +504,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "LOGS_FILE": "[CLEANUP]/tmp_tmp_2",
       "USE_EMULATOR": "true"
     },
@@ -447,7 +535,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "LOGS_FILE": "[CLEANUP]/tmp_tmp_2",
       "USE_EMULATOR": "true"
     },
@@ -478,7 +565,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -504,7 +590,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "LOGS_FILE": "[CLEANUP]/tmp_tmp_3",
       "USE_EMULATOR": "true"
     },
@@ -536,7 +621,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "LOGS_FILE": "[CLEANUP]/tmp_tmp_3",
       "USE_EMULATOR": "true"
     },
@@ -569,7 +653,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -600,6 +683,99 @@
   },
   {
     "cmd": [
+      "ps",
+      "aux"
+    ],
+    "cwd": "[CACHE]/avd",
+    "env": {
+      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
+      "AVD_CIPD_VERSION": "TESTVERSIONSTR",
+      "AVD_ROOT": "[CACHE]/avd",
+      "USE_EMULATOR": "true"
+    },
+    "env_prefixes": {
+      "PATH": [
+        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools"
+      ]
+    },
+    "env_suffixes": {
+      "DEPOT_TOOLS_UPDATE": [
+        "0"
+      ],
+      "PATH": [
+        "RECIPE_REPO[depot_tools]"
+      ]
+    },
+    "name": "start avd (2).kill and cleanup avd.List processes before cleaning up",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@2@@@"
+    ]
+  },
+  {
+    "cmd": [
+      "pkill",
+      "-9",
+      "-e",
+      "-f",
+      "emulator"
+    ],
+    "cwd": "[CACHE]/avd",
+    "env": {
+      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
+      "AVD_CIPD_VERSION": "TESTVERSIONSTR",
+      "AVD_ROOT": "[CACHE]/avd",
+      "USE_EMULATOR": "true"
+    },
+    "env_prefixes": {
+      "PATH": [
+        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools"
+      ]
+    },
+    "env_suffixes": {
+      "DEPOT_TOOLS_UPDATE": [
+        "0"
+      ],
+      "PATH": [
+        "RECIPE_REPO[depot_tools]"
+      ]
+    },
+    "name": "start avd (2).kill and cleanup avd.Kill emulator cleanup",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@2@@@"
+    ]
+  },
+  {
+    "cmd": [
+      "ps",
+      "aux"
+    ],
+    "cwd": "[CACHE]/avd",
+    "env": {
+      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
+      "AVD_CIPD_VERSION": "TESTVERSIONSTR",
+      "AVD_ROOT": "[CACHE]/avd",
+      "USE_EMULATOR": "true"
+    },
+    "env_prefixes": {
+      "PATH": [
+        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools"
+      ]
+    },
+    "env_suffixes": {
+      "DEPOT_TOOLS_UPDATE": [
+        "0"
+      ],
+      "PATH": [
+        "RECIPE_REPO[depot_tools]"
+      ]
+    },
+    "name": "start avd (2).kill and cleanup avd.List processes after cleaning up",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@2@@@"
+    ]
+  },
+  {
+    "cmd": [
       "xvfb-run",
       "vpython3",
       "[CACHE]/avd/src/tools/android/avd/avd.py",
@@ -617,7 +793,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -659,7 +834,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "17687",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -692,7 +866,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "17687",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -728,9 +901,21 @@
   },
   {
     "cmd": [
-      "kill",
+      "ps",
+      "aux"
+    ],
+    "name": "kill and cleanup avd (2).List processes before cleaning up",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@1@@@"
+    ]
+  },
+  {
+    "cmd": [
+      "pkill",
       "-9",
-      "17687"
+      "-e",
+      "-f",
+      "emulator"
     ],
     "name": "kill and cleanup avd (2).Kill emulator cleanup",
     "~followup_annotations": [
@@ -740,21 +925,9 @@
   {
     "cmd": [
       "ps",
-      "-axww"
+      "aux"
     ],
-    "name": "kill and cleanup avd (2).list processes",
-    "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@",
-      "@@@STEP_LOG_END@raw_io.output_text@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "kill",
-      "-9",
-      "12345"
-    ],
-    "name": "kill and cleanup avd (2).Kill zombie processes",
+    "name": "kill and cleanup avd (2).List processes after cleaning up",
     "~followup_annotations": [
       "@@@STEP_NEST_LEVEL@1@@@"
     ]
@@ -776,7 +949,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "17687",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -813,7 +985,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -839,7 +1010,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "LOGS_FILE": "[CLEANUP]/tmp_tmp_4",
       "USE_EMULATOR": "true"
     },
@@ -871,7 +1041,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "LOGS_FILE": "[CLEANUP]/tmp_tmp_4",
       "USE_EMULATOR": "true"
     },
diff --git a/recipe_modules/android_virtual_device/examples/full_legacy_version_28.expected/emulator started.json b/recipe_modules/android_virtual_device/examples/full_legacy_version_28.expected/emulator started.json
index 2d97e49..59b49f8 100644
--- a/recipe_modules/android_virtual_device/examples/full_legacy_version_28.expected/emulator started.json
+++ b/recipe_modules/android_virtual_device/examples/full_legacy_version_28.expected/emulator started.json
@@ -177,6 +177,99 @@
   },
   {
     "cmd": [
+      "ps",
+      "aux"
+    ],
+    "cwd": "[CACHE]/avd",
+    "env": {
+      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
+      "AVD_CIPD_VERSION": "TESTVERSIONSTR",
+      "AVD_ROOT": "[CACHE]/avd",
+      "USE_EMULATOR": "true"
+    },
+    "env_prefixes": {
+      "PATH": [
+        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools"
+      ]
+    },
+    "env_suffixes": {
+      "DEPOT_TOOLS_UPDATE": [
+        "0"
+      ],
+      "PATH": [
+        "RECIPE_REPO[depot_tools]"
+      ]
+    },
+    "name": "start avd.kill and cleanup avd.List processes before cleaning up",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@2@@@"
+    ]
+  },
+  {
+    "cmd": [
+      "pkill",
+      "-9",
+      "-e",
+      "-f",
+      "emulator"
+    ],
+    "cwd": "[CACHE]/avd",
+    "env": {
+      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
+      "AVD_CIPD_VERSION": "TESTVERSIONSTR",
+      "AVD_ROOT": "[CACHE]/avd",
+      "USE_EMULATOR": "true"
+    },
+    "env_prefixes": {
+      "PATH": [
+        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools"
+      ]
+    },
+    "env_suffixes": {
+      "DEPOT_TOOLS_UPDATE": [
+        "0"
+      ],
+      "PATH": [
+        "RECIPE_REPO[depot_tools]"
+      ]
+    },
+    "name": "start avd.kill and cleanup avd.Kill emulator cleanup",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@2@@@"
+    ]
+  },
+  {
+    "cmd": [
+      "ps",
+      "aux"
+    ],
+    "cwd": "[CACHE]/avd",
+    "env": {
+      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
+      "AVD_CIPD_VERSION": "TESTVERSIONSTR",
+      "AVD_ROOT": "[CACHE]/avd",
+      "USE_EMULATOR": "true"
+    },
+    "env_prefixes": {
+      "PATH": [
+        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools"
+      ]
+    },
+    "env_suffixes": {
+      "DEPOT_TOOLS_UPDATE": [
+        "0"
+      ],
+      "PATH": [
+        "RECIPE_REPO[depot_tools]"
+      ]
+    },
+    "name": "start avd.kill and cleanup avd.List processes after cleaning up",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@2@@@"
+    ]
+  },
+  {
+    "cmd": [
       "xvfb-run",
       "vpython3",
       "[CACHE]/avd/src/tools/android/avd/avd.py",
@@ -235,7 +328,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "17687",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -268,7 +360,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "17687",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -304,9 +395,21 @@
   },
   {
     "cmd": [
-      "kill",
+      "ps",
+      "aux"
+    ],
+    "name": "kill and cleanup avd.List processes before cleaning up",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@1@@@"
+    ]
+  },
+  {
+    "cmd": [
+      "pkill",
       "-9",
-      "17687"
+      "-e",
+      "-f",
+      "emulator"
     ],
     "name": "kill and cleanup avd.Kill emulator cleanup",
     "~followup_annotations": [
@@ -316,12 +419,11 @@
   {
     "cmd": [
       "ps",
-      "-axww"
+      "aux"
     ],
-    "name": "kill and cleanup avd.list processes",
+    "name": "kill and cleanup avd.List processes after cleaning up",
     "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@",
-      "@@@STEP_LOG_END@raw_io.output_text@@@"
+      "@@@STEP_NEST_LEVEL@1@@@"
     ]
   },
   {
@@ -341,7 +443,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "17687",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -378,7 +479,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -404,7 +504,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "LOGS_FILE": "[CLEANUP]/tmp_tmp_2",
       "USE_EMULATOR": "true"
     },
@@ -436,7 +535,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "LOGS_FILE": "[CLEANUP]/tmp_tmp_2",
       "USE_EMULATOR": "true"
     },
@@ -467,7 +565,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -493,7 +590,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "LOGS_FILE": "[CLEANUP]/tmp_tmp_3",
       "USE_EMULATOR": "true"
     },
@@ -525,7 +621,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "LOGS_FILE": "[CLEANUP]/tmp_tmp_3",
       "USE_EMULATOR": "true"
     },
@@ -558,7 +653,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -589,6 +683,99 @@
   },
   {
     "cmd": [
+      "ps",
+      "aux"
+    ],
+    "cwd": "[CACHE]/avd",
+    "env": {
+      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
+      "AVD_CIPD_VERSION": "TESTVERSIONSTR",
+      "AVD_ROOT": "[CACHE]/avd",
+      "USE_EMULATOR": "true"
+    },
+    "env_prefixes": {
+      "PATH": [
+        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools"
+      ]
+    },
+    "env_suffixes": {
+      "DEPOT_TOOLS_UPDATE": [
+        "0"
+      ],
+      "PATH": [
+        "RECIPE_REPO[depot_tools]"
+      ]
+    },
+    "name": "start avd (2).kill and cleanup avd.List processes before cleaning up",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@2@@@"
+    ]
+  },
+  {
+    "cmd": [
+      "pkill",
+      "-9",
+      "-e",
+      "-f",
+      "emulator"
+    ],
+    "cwd": "[CACHE]/avd",
+    "env": {
+      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
+      "AVD_CIPD_VERSION": "TESTVERSIONSTR",
+      "AVD_ROOT": "[CACHE]/avd",
+      "USE_EMULATOR": "true"
+    },
+    "env_prefixes": {
+      "PATH": [
+        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools"
+      ]
+    },
+    "env_suffixes": {
+      "DEPOT_TOOLS_UPDATE": [
+        "0"
+      ],
+      "PATH": [
+        "RECIPE_REPO[depot_tools]"
+      ]
+    },
+    "name": "start avd (2).kill and cleanup avd.Kill emulator cleanup",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@2@@@"
+    ]
+  },
+  {
+    "cmd": [
+      "ps",
+      "aux"
+    ],
+    "cwd": "[CACHE]/avd",
+    "env": {
+      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
+      "AVD_CIPD_VERSION": "TESTVERSIONSTR",
+      "AVD_ROOT": "[CACHE]/avd",
+      "USE_EMULATOR": "true"
+    },
+    "env_prefixes": {
+      "PATH": [
+        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools"
+      ]
+    },
+    "env_suffixes": {
+      "DEPOT_TOOLS_UPDATE": [
+        "0"
+      ],
+      "PATH": [
+        "RECIPE_REPO[depot_tools]"
+      ]
+    },
+    "name": "start avd (2).kill and cleanup avd.List processes after cleaning up",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@2@@@"
+    ]
+  },
+  {
+    "cmd": [
       "xvfb-run",
       "vpython3",
       "[CACHE]/avd/src/tools/android/avd/avd.py",
@@ -606,7 +793,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -648,7 +834,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "17687",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -681,7 +866,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "17687",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -717,9 +901,21 @@
   },
   {
     "cmd": [
-      "kill",
+      "ps",
+      "aux"
+    ],
+    "name": "kill and cleanup avd (2).List processes before cleaning up",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@1@@@"
+    ]
+  },
+  {
+    "cmd": [
+      "pkill",
       "-9",
-      "17687"
+      "-e",
+      "-f",
+      "emulator"
     ],
     "name": "kill and cleanup avd (2).Kill emulator cleanup",
     "~followup_annotations": [
@@ -729,12 +925,11 @@
   {
     "cmd": [
       "ps",
-      "-axww"
+      "aux"
     ],
-    "name": "kill and cleanup avd (2).list processes",
+    "name": "kill and cleanup avd (2).List processes after cleaning up",
     "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@",
-      "@@@STEP_LOG_END@raw_io.output_text@@@"
+      "@@@STEP_NEST_LEVEL@1@@@"
     ]
   },
   {
@@ -754,7 +949,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "17687",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -791,7 +985,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "USE_EMULATOR": "true"
     },
     "env_prefixes": {
@@ -817,7 +1010,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "LOGS_FILE": "[CLEANUP]/tmp_tmp_4",
       "USE_EMULATOR": "true"
     },
@@ -849,7 +1041,6 @@
       "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
       "AVD_CIPD_VERSION": "TESTVERSIONSTR",
       "AVD_ROOT": "[CACHE]/avd",
-      "EMULATOR_PID": "",
       "LOGS_FILE": "[CLEANUP]/tmp_tmp_4",
       "USE_EMULATOR": "true"
     },
diff --git a/recipe_modules/android_virtual_device/examples/full_legacy_version_28.py b/recipe_modules/android_virtual_device/examples/full_legacy_version_28.py
index 9a948a5..d7555b9 100644
--- a/recipe_modules/android_virtual_device/examples/full_legacy_version_28.py
+++ b/recipe_modules/android_virtual_device/examples/full_legacy_version_28.py
@@ -57,18 +57,10 @@
           )
       ),
       api.step_data(
-          'kill and cleanup avd.list processes',
-          stdout=api.raw_io.output_text('12345 qemu-system blah')
-      ),
-      api.step_data(
           'start avd (2).Start Android emulator (%s)' % avd_api_version,
           stdout=api.raw_io.output_text(
               'android_' + avd_api_version +
               '_google_apis_x86|emulator-5554 started (pid: 17687)'
           )
       ),
-      api.step_data(
-          'kill and cleanup avd (2).list processes',
-          stdout=api.raw_io.output_text('12345 qemu-system blah')
-      ),
   )
diff --git a/recipes/devicelab/devicelab_drone.expected/emulator-test.json b/recipes/devicelab/devicelab_drone.expected/emulator-test.json
index 2e75d27..1b85d9a 100644
--- a/recipes/devicelab/devicelab_drone.expected/emulator-test.json
+++ b/recipes/devicelab/devicelab_drone.expected/emulator-test.json
@@ -529,6 +529,150 @@
   },
   {
     "cmd": [
+      "ps",
+      "aux"
+    ],
+    "cwd": "[CACHE]/avd",
+    "env": {
+      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
+      "ARTIFACT_HUB_REPOSITORY": "artifactregistry://us-maven.pkg.dev/artifact-foundry-prod/maven-3p",
+      "AVD_CIPD_VERSION": "AVDCIPDVERSION",
+      "AVD_ROOT": "[CACHE]/avd",
+      "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
+      "EMULATOR_VERSION": "android_31_google_apis_x64.textpb",
+      "FLUTTER_LOGS_DIR": "[CLEANUP]/flutter_logs_dir",
+      "FLUTTER_TEST_OUTPUTS_DIR": "[CLEANUP]/flutter_logs_dir",
+      "GIT_BRANCH": "master",
+      "LUCI_BRANCH": "",
+      "LUCI_CI": "True",
+      "LUCI_PR": "",
+      "OS": "linux",
+      "PUB_CACHE": "[START_DIR]/.pub-cache",
+      "REVISION": "12345abcde12345abcde12345abcde12345abcde",
+      "SDK_CHECKOUT_PATH": "[CLEANUP]/tmp_tmp_1/flutter sdk",
+      "USE_EMULATOR": "True"
+    },
+    "env_prefixes": {
+      "PATH": [
+        "[CLEANUP]/tmp_tmp_1/flutter sdk/bin",
+        "[CLEANUP]/tmp_tmp_1/flutter sdk/bin/cache/dart-sdk/bin",
+        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools",
+        "[CLEANUP]/tmp_tmp_1/flutter sdk/bin",
+        "[CLEANUP]/tmp_tmp_1/flutter sdk/bin/cache/dart-sdk/bin"
+      ]
+    },
+    "env_suffixes": {
+      "DEPOT_TOOLS_UPDATE": [
+        "0"
+      ],
+      "PATH": [
+        "RECIPE_REPO[depot_tools]"
+      ]
+    },
+    "name": "start avd.kill and cleanup avd.List processes before cleaning up",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@2@@@"
+    ]
+  },
+  {
+    "cmd": [
+      "pkill",
+      "-9",
+      "-e",
+      "-f",
+      "emulator"
+    ],
+    "cwd": "[CACHE]/avd",
+    "env": {
+      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
+      "ARTIFACT_HUB_REPOSITORY": "artifactregistry://us-maven.pkg.dev/artifact-foundry-prod/maven-3p",
+      "AVD_CIPD_VERSION": "AVDCIPDVERSION",
+      "AVD_ROOT": "[CACHE]/avd",
+      "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
+      "EMULATOR_VERSION": "android_31_google_apis_x64.textpb",
+      "FLUTTER_LOGS_DIR": "[CLEANUP]/flutter_logs_dir",
+      "FLUTTER_TEST_OUTPUTS_DIR": "[CLEANUP]/flutter_logs_dir",
+      "GIT_BRANCH": "master",
+      "LUCI_BRANCH": "",
+      "LUCI_CI": "True",
+      "LUCI_PR": "",
+      "OS": "linux",
+      "PUB_CACHE": "[START_DIR]/.pub-cache",
+      "REVISION": "12345abcde12345abcde12345abcde12345abcde",
+      "SDK_CHECKOUT_PATH": "[CLEANUP]/tmp_tmp_1/flutter sdk",
+      "USE_EMULATOR": "True"
+    },
+    "env_prefixes": {
+      "PATH": [
+        "[CLEANUP]/tmp_tmp_1/flutter sdk/bin",
+        "[CLEANUP]/tmp_tmp_1/flutter sdk/bin/cache/dart-sdk/bin",
+        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools",
+        "[CLEANUP]/tmp_tmp_1/flutter sdk/bin",
+        "[CLEANUP]/tmp_tmp_1/flutter sdk/bin/cache/dart-sdk/bin"
+      ]
+    },
+    "env_suffixes": {
+      "DEPOT_TOOLS_UPDATE": [
+        "0"
+      ],
+      "PATH": [
+        "RECIPE_REPO[depot_tools]"
+      ]
+    },
+    "name": "start avd.kill and cleanup avd.Kill emulator cleanup",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@2@@@"
+    ]
+  },
+  {
+    "cmd": [
+      "ps",
+      "aux"
+    ],
+    "cwd": "[CACHE]/avd",
+    "env": {
+      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
+      "ARTIFACT_HUB_REPOSITORY": "artifactregistry://us-maven.pkg.dev/artifact-foundry-prod/maven-3p",
+      "AVD_CIPD_VERSION": "AVDCIPDVERSION",
+      "AVD_ROOT": "[CACHE]/avd",
+      "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
+      "EMULATOR_VERSION": "android_31_google_apis_x64.textpb",
+      "FLUTTER_LOGS_DIR": "[CLEANUP]/flutter_logs_dir",
+      "FLUTTER_TEST_OUTPUTS_DIR": "[CLEANUP]/flutter_logs_dir",
+      "GIT_BRANCH": "master",
+      "LUCI_BRANCH": "",
+      "LUCI_CI": "True",
+      "LUCI_PR": "",
+      "OS": "linux",
+      "PUB_CACHE": "[START_DIR]/.pub-cache",
+      "REVISION": "12345abcde12345abcde12345abcde12345abcde",
+      "SDK_CHECKOUT_PATH": "[CLEANUP]/tmp_tmp_1/flutter sdk",
+      "USE_EMULATOR": "True"
+    },
+    "env_prefixes": {
+      "PATH": [
+        "[CLEANUP]/tmp_tmp_1/flutter sdk/bin",
+        "[CLEANUP]/tmp_tmp_1/flutter sdk/bin/cache/dart-sdk/bin",
+        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools",
+        "[CLEANUP]/tmp_tmp_1/flutter sdk/bin",
+        "[CLEANUP]/tmp_tmp_1/flutter sdk/bin/cache/dart-sdk/bin"
+      ]
+    },
+    "env_suffixes": {
+      "DEPOT_TOOLS_UPDATE": [
+        "0"
+      ],
+      "PATH": [
+        "RECIPE_REPO[depot_tools]"
+      ]
+    },
+    "name": "start avd.kill and cleanup avd.List processes after cleaning up",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@2@@@"
+    ]
+  },
+  {
+    "cmd": [
       "xvfb-run",
       "vpython3",
       "[CACHE]/avd/src/tools/android/avd/avd.py",
@@ -606,7 +750,6 @@
       "AVD_CIPD_VERSION": "AVDCIPDVERSION",
       "AVD_ROOT": "[CACHE]/avd",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
-      "EMULATOR_PID": "17687",
       "EMULATOR_VERSION": "android_31_google_apis_x64.textpb",
       "FLUTTER_LOGS_DIR": "[CLEANUP]/flutter_logs_dir",
       "FLUTTER_TEST_OUTPUTS_DIR": "[CLEANUP]/flutter_logs_dir",
@@ -658,7 +801,6 @@
       "AVD_CIPD_VERSION": "AVDCIPDVERSION",
       "AVD_ROOT": "[CACHE]/avd",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
-      "EMULATOR_PID": "17687",
       "EMULATOR_VERSION": "android_31_google_apis_x64.textpb",
       "FLUTTER_LOGS_DIR": "[CLEANUP]/flutter_logs_dir",
       "FLUTTER_TEST_OUTPUTS_DIR": "[CLEANUP]/flutter_logs_dir",
@@ -1181,9 +1323,45 @@
   },
   {
     "cmd": [
-      "kill",
+      "ps",
+      "aux"
+    ],
+    "cwd": "[CLEANUP]/tmp_tmp_1/flutter sdk/dev/devicelab",
+    "env": {
+      "ARTIFACT_HUB_REPOSITORY": "artifactregistry://us-maven.pkg.dev/artifact-foundry-prod/maven-3p",
+      "AVD_CIPD_VERSION": "AVDCIPDVERSION",
+      "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
+      "EMULATOR_VERSION": "android_31_google_apis_x64.textpb",
+      "FLUTTER_LOGS_DIR": "[CLEANUP]/flutter_logs_dir",
+      "FLUTTER_TEST_OUTPUTS_DIR": "[CLEANUP]/flutter_logs_dir",
+      "GIT_BRANCH": "master",
+      "LUCI_BRANCH": "",
+      "LUCI_CI": "True",
+      "LUCI_PR": "",
+      "OS": "linux",
+      "PUB_CACHE": "[START_DIR]/.pub-cache",
+      "REVISION": "12345abcde12345abcde12345abcde12345abcde",
+      "SDK_CHECKOUT_PATH": "[CLEANUP]/tmp_tmp_1/flutter sdk",
+      "USE_EMULATOR": "True"
+    },
+    "env_prefixes": {
+      "PATH": [
+        "[CLEANUP]/tmp_tmp_1/flutter sdk/bin",
+        "[CLEANUP]/tmp_tmp_1/flutter sdk/bin/cache/dart-sdk/bin"
+      ]
+    },
+    "name": "kill and cleanup avd.List processes before cleaning up",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@1@@@"
+    ]
+  },
+  {
+    "cmd": [
+      "pkill",
       "-9",
-      "17687"
+      "-e",
+      "-f",
+      "emulator"
     ],
     "cwd": "[CLEANUP]/tmp_tmp_1/flutter sdk/dev/devicelab",
     "env": {
@@ -1217,7 +1395,7 @@
   {
     "cmd": [
       "ps",
-      "-axww"
+      "aux"
     ],
     "cwd": "[CLEANUP]/tmp_tmp_1/flutter sdk/dev/devicelab",
     "env": {
@@ -1243,10 +1421,9 @@
         "[CLEANUP]/tmp_tmp_1/flutter sdk/bin/cache/dart-sdk/bin"
       ]
     },
-    "name": "kill and cleanup avd.list processes",
+    "name": "kill and cleanup avd.List processes after cleaning up",
     "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@1@@@",
-      "@@@STEP_LOG_END@raw_io.output_text@@@"
+      "@@@STEP_NEST_LEVEL@1@@@"
     ]
   },
   {
@@ -1268,7 +1445,6 @@
       "AVD_CIPD_VERSION": "AVDCIPDVERSION",
       "AVD_ROOT": "[CACHE]/avd",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
-      "EMULATOR_PID": "17687",
       "EMULATOR_VERSION": "android_31_google_apis_x64.textpb",
       "FLUTTER_LOGS_DIR": "[CLEANUP]/flutter_logs_dir",
       "FLUTTER_TEST_OUTPUTS_DIR": "[CLEANUP]/flutter_logs_dir",
@@ -1322,7 +1498,6 @@
       "AVD_CIPD_VERSION": "AVDCIPDVERSION",
       "AVD_ROOT": "[CACHE]/avd",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
-      "EMULATOR_PID": "",
       "EMULATOR_VERSION": "android_31_google_apis_x64.textpb",
       "FLUTTER_LOGS_DIR": "[CLEANUP]/flutter_logs_dir",
       "FLUTTER_TEST_OUTPUTS_DIR": "[CLEANUP]/flutter_logs_dir",
@@ -1365,7 +1540,6 @@
       "AVD_CIPD_VERSION": "AVDCIPDVERSION",
       "AVD_ROOT": "[CACHE]/avd",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
-      "EMULATOR_PID": "",
       "EMULATOR_VERSION": "android_31_google_apis_x64.textpb",
       "FLUTTER_LOGS_DIR": "[CLEANUP]/flutter_logs_dir",
       "FLUTTER_TEST_OUTPUTS_DIR": "[CLEANUP]/flutter_logs_dir",
@@ -1414,7 +1588,6 @@
       "AVD_CIPD_VERSION": "AVDCIPDVERSION",
       "AVD_ROOT": "[CACHE]/avd",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
-      "EMULATOR_PID": "",
       "EMULATOR_VERSION": "android_31_google_apis_x64.textpb",
       "FLUTTER_LOGS_DIR": "[CLEANUP]/flutter_logs_dir",
       "FLUTTER_TEST_OUTPUTS_DIR": "[CLEANUP]/flutter_logs_dir",
diff --git a/recipes/packages/packages.expected/emulator-test.json b/recipes/packages/packages.expected/emulator-test.json
index de6ba8e..c38daa4 100644
--- a/recipes/packages/packages.expected/emulator-test.json
+++ b/recipes/packages/packages.expected/emulator-test.json
@@ -688,6 +688,147 @@
   },
   {
     "cmd": [
+      "ps",
+      "aux"
+    ],
+    "cwd": "[CACHE]/avd",
+    "env": {
+      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
+      "ARTIFACT_HUB_REPOSITORY": "artifactregistry://us-maven.pkg.dev/artifact-foundry-prod/maven-3p",
+      "AVD_CIPD_VERSION": "AVDCIPDVERSION",
+      "AVD_ROOT": "[CACHE]/avd",
+      "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
+      "EMULATOR_VERSION": "android_31_google_apis_x64.textpb",
+      "GIT_BRANCH": "master",
+      "LUCI_BRANCH": "",
+      "LUCI_CI": "True",
+      "LUCI_PR": "",
+      "OS": "linux",
+      "PR_OVERRIDE_LABELS": "",
+      "PUB_CACHE": "[START_DIR]/.pub-cache",
+      "REVISION": "12345abcde12345abcde12345abcde12345abcde",
+      "SDK_CHECKOUT_PATH": "[START_DIR]/flutter",
+      "USE_EMULATOR": "True"
+    },
+    "env_prefixes": {
+      "PATH": [
+        "[START_DIR]/flutter/bin",
+        "[START_DIR]/flutter/bin/cache/dart-sdk/bin",
+        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools",
+        "[START_DIR]/flutter/bin",
+        "[START_DIR]/flutter/bin/cache/dart-sdk/bin"
+      ]
+    },
+    "env_suffixes": {
+      "DEPOT_TOOLS_UPDATE": [
+        "0"
+      ],
+      "PATH": [
+        "RECIPE_REPO[depot_tools]"
+      ]
+    },
+    "name": "Run package tests.start avd.kill and cleanup avd.List processes before cleaning up",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@3@@@"
+    ]
+  },
+  {
+    "cmd": [
+      "pkill",
+      "-9",
+      "-e",
+      "-f",
+      "emulator"
+    ],
+    "cwd": "[CACHE]/avd",
+    "env": {
+      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
+      "ARTIFACT_HUB_REPOSITORY": "artifactregistry://us-maven.pkg.dev/artifact-foundry-prod/maven-3p",
+      "AVD_CIPD_VERSION": "AVDCIPDVERSION",
+      "AVD_ROOT": "[CACHE]/avd",
+      "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
+      "EMULATOR_VERSION": "android_31_google_apis_x64.textpb",
+      "GIT_BRANCH": "master",
+      "LUCI_BRANCH": "",
+      "LUCI_CI": "True",
+      "LUCI_PR": "",
+      "OS": "linux",
+      "PR_OVERRIDE_LABELS": "",
+      "PUB_CACHE": "[START_DIR]/.pub-cache",
+      "REVISION": "12345abcde12345abcde12345abcde12345abcde",
+      "SDK_CHECKOUT_PATH": "[START_DIR]/flutter",
+      "USE_EMULATOR": "True"
+    },
+    "env_prefixes": {
+      "PATH": [
+        "[START_DIR]/flutter/bin",
+        "[START_DIR]/flutter/bin/cache/dart-sdk/bin",
+        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools",
+        "[START_DIR]/flutter/bin",
+        "[START_DIR]/flutter/bin/cache/dart-sdk/bin"
+      ]
+    },
+    "env_suffixes": {
+      "DEPOT_TOOLS_UPDATE": [
+        "0"
+      ],
+      "PATH": [
+        "RECIPE_REPO[depot_tools]"
+      ]
+    },
+    "name": "Run package tests.start avd.kill and cleanup avd.Kill emulator cleanup",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@3@@@"
+    ]
+  },
+  {
+    "cmd": [
+      "ps",
+      "aux"
+    ],
+    "cwd": "[CACHE]/avd",
+    "env": {
+      "ADB_PATH": "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools/adb",
+      "ARTIFACT_HUB_REPOSITORY": "artifactregistry://us-maven.pkg.dev/artifact-foundry-prod/maven-3p",
+      "AVD_CIPD_VERSION": "AVDCIPDVERSION",
+      "AVD_ROOT": "[CACHE]/avd",
+      "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
+      "EMULATOR_VERSION": "android_31_google_apis_x64.textpb",
+      "GIT_BRANCH": "master",
+      "LUCI_BRANCH": "",
+      "LUCI_CI": "True",
+      "LUCI_PR": "",
+      "OS": "linux",
+      "PR_OVERRIDE_LABELS": "",
+      "PUB_CACHE": "[START_DIR]/.pub-cache",
+      "REVISION": "12345abcde12345abcde12345abcde12345abcde",
+      "SDK_CHECKOUT_PATH": "[START_DIR]/flutter",
+      "USE_EMULATOR": "True"
+    },
+    "env_prefixes": {
+      "PATH": [
+        "[START_DIR]/flutter/bin",
+        "[START_DIR]/flutter/bin/cache/dart-sdk/bin",
+        "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools",
+        "[START_DIR]/flutter/bin",
+        "[START_DIR]/flutter/bin/cache/dart-sdk/bin"
+      ]
+    },
+    "env_suffixes": {
+      "DEPOT_TOOLS_UPDATE": [
+        "0"
+      ],
+      "PATH": [
+        "RECIPE_REPO[depot_tools]"
+      ]
+    },
+    "name": "Run package tests.start avd.kill and cleanup avd.List processes after cleaning up",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@3@@@"
+    ]
+  },
+  {
+    "cmd": [
       "xvfb-run",
       "vpython3",
       "[CACHE]/avd/src/tools/android/avd/avd.py",
@@ -764,7 +905,6 @@
       "AVD_CIPD_VERSION": "AVDCIPDVERSION",
       "AVD_ROOT": "[CACHE]/avd",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
-      "EMULATOR_PID": "17687",
       "EMULATOR_VERSION": "android_31_google_apis_x64.textpb",
       "GIT_BRANCH": "master",
       "LUCI_BRANCH": "",
@@ -815,7 +955,6 @@
       "AVD_CIPD_VERSION": "AVDCIPDVERSION",
       "AVD_ROOT": "[CACHE]/avd",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
-      "EMULATOR_PID": "17687",
       "EMULATOR_VERSION": "android_31_google_apis_x64.textpb",
       "GIT_BRANCH": "master",
       "LUCI_BRANCH": "",
@@ -956,7 +1095,6 @@
       "AVD_CIPD_VERSION": "AVDCIPDVERSION",
       "AVD_ROOT": "[CACHE]/avd",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
-      "EMULATOR_PID": "17687",
       "EMULATOR_VERSION": "android_31_google_apis_x64.textpb",
       "FLUTTER_LOGS_DIR": "[CLEANUP]/flutter_logs_dir",
       "FLUTTER_TEST_OUTPUTS_DIR": "[CLEANUP]/flutter_logs_dir",
@@ -1137,9 +1275,44 @@
   },
   {
     "cmd": [
-      "kill",
+      "ps",
+      "aux"
+    ],
+    "cwd": "[START_DIR]/packages",
+    "env": {
+      "ARTIFACT_HUB_REPOSITORY": "artifactregistry://us-maven.pkg.dev/artifact-foundry-prod/maven-3p",
+      "AVD_CIPD_VERSION": "AVDCIPDVERSION",
+      "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
+      "EMULATOR_VERSION": "android_31_google_apis_x64.textpb",
+      "GIT_BRANCH": "master",
+      "LUCI_BRANCH": "",
+      "LUCI_CI": "True",
+      "LUCI_PR": "",
+      "OS": "linux",
+      "PR_OVERRIDE_LABELS": "",
+      "PUB_CACHE": "[START_DIR]/.pub-cache",
+      "REVISION": "12345abcde12345abcde12345abcde12345abcde",
+      "SDK_CHECKOUT_PATH": "[START_DIR]/flutter",
+      "USE_EMULATOR": "True"
+    },
+    "env_prefixes": {
+      "PATH": [
+        "[START_DIR]/flutter/bin",
+        "[START_DIR]/flutter/bin/cache/dart-sdk/bin"
+      ]
+    },
+    "name": "Run package tests.kill and cleanup avd.List processes before cleaning up",
+    "~followup_annotations": [
+      "@@@STEP_NEST_LEVEL@2@@@"
+    ]
+  },
+  {
+    "cmd": [
+      "pkill",
       "-9",
-      "17687"
+      "-e",
+      "-f",
+      "emulator"
     ],
     "cwd": "[START_DIR]/packages",
     "env": {
@@ -1172,7 +1345,7 @@
   {
     "cmd": [
       "ps",
-      "-axww"
+      "aux"
     ],
     "cwd": "[START_DIR]/packages",
     "env": {
@@ -1197,10 +1370,9 @@
         "[START_DIR]/flutter/bin/cache/dart-sdk/bin"
       ]
     },
-    "name": "Run package tests.kill and cleanup avd.list processes",
+    "name": "Run package tests.kill and cleanup avd.List processes after cleaning up",
     "~followup_annotations": [
-      "@@@STEP_NEST_LEVEL@2@@@",
-      "@@@STEP_LOG_END@raw_io.output_text@@@"
+      "@@@STEP_NEST_LEVEL@2@@@"
     ]
   },
   {
@@ -1225,7 +1397,6 @@
       "AVD_CIPD_VERSION": "AVDCIPDVERSION",
       "AVD_ROOT": "[CACHE]/avd",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
-      "EMULATOR_PID": "17687",
       "EMULATOR_VERSION": "android_31_google_apis_x64.textpb",
       "FLUTTER_LOGS_DIR": "[CLEANUP]/flutter_logs_dir",
       "FLUTTER_TEST_OUTPUTS_DIR": "[CLEANUP]/flutter_logs_dir",
@@ -1283,7 +1454,6 @@
       "AVD_CIPD_VERSION": "AVDCIPDVERSION",
       "AVD_ROOT": "[CACHE]/avd",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
-      "EMULATOR_PID": "",
       "EMULATOR_VERSION": "android_31_google_apis_x64.textpb",
       "FLUTTER_LOGS_DIR": "[CLEANUP]/flutter_logs_dir",
       "FLUTTER_TEST_OUTPUTS_DIR": "[CLEANUP]/flutter_logs_dir",
@@ -1327,7 +1497,6 @@
       "AVD_CIPD_VERSION": "AVDCIPDVERSION",
       "AVD_ROOT": "[CACHE]/avd",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
-      "EMULATOR_PID": "",
       "EMULATOR_VERSION": "android_31_google_apis_x64.textpb",
       "FLUTTER_LOGS_DIR": "[CLEANUP]/flutter_logs_dir",
       "FLUTTER_TEST_OUTPUTS_DIR": "[CLEANUP]/flutter_logs_dir",
@@ -1377,7 +1546,6 @@
       "AVD_CIPD_VERSION": "AVDCIPDVERSION",
       "AVD_ROOT": "[CACHE]/avd",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
-      "EMULATOR_PID": "",
       "EMULATOR_VERSION": "android_31_google_apis_x64.textpb",
       "FLUTTER_LOGS_DIR": "[CLEANUP]/flutter_logs_dir",
       "FLUTTER_TEST_OUTPUTS_DIR": "[CLEANUP]/flutter_logs_dir",