Contents

Method

GetProcesses

ModuleOperatingSystem
LibraryCore
Action

Get details of executing processes.

Parameters(None)
Return values

For each current process:

    • AccountName (string): The user account.
    • AccountId (string): The user account ID; SID for Windows or UID for *nix. New in v5.3.
    • ProcessId (integer): The PID of this process.
    • ParentProcessId (integer): The PID of the parent of this process, if this is a child process.
    • StartupTime (string): The StartUpTime of the process if known, otherwise NULL.
    • CommandLine (string): If command line (with parameters) used to invoke the process.
    • Executable (string): The binary being executed.
    • MemoryUsageBytes (string): Some measure of the physical memory being used by this process in bytes. This was introduced in 3.1.
      • On Windows, this is the total of the private pages of the working set (resident pages) on Windows
      • From version 3.1
        • On all supported non-windows platforms this is the total virtual memory size (private + shared) size on Linux, Mac and Solaris.
      • From version 3.2
        • On platforms with the all the necessary procfs files, this is the total bytes in the process' private resident pages, this is equivalent to the Windows measure.
        • On platforms not covered above then this is just the private and shared resident memory. This is slightly different to the Windows measure, resident shared pages are included.
Example
OperatingSystem.GetProcesses();
Platforms
  • Windows
  • Linux
  • MacOS
  • Solaris Intel
  • Solaris Sparc
  • Android
Notes

This method and OperatingSystem.GetRunningApps are not supported on Android version 6.0 (Marshmallow) onwards. These methods use the full list capability which has been removed by Google as a potential security issue. An app now only has access to the list of processes it has created either directly or indirectly. To maintain privacy, each app is sand-boxed and if an app wants to use resources or information outside of its sandbox, it has to explicitly request permission from the user.

This method is only supported on versions of Android prior to version 6.0 where applications like Tachyon had access to the full list of all processes running on the device. It uses ps to list all the applications initiated by the Android Zygote daemon.