Comparison of OS emulation or virtualization apps on Android

From Wikipedia, the free encyclopedia

There are many apps in Android that can run or emulate other operating systems, via utilizing hardware support for platform virtualization technologies, or via terminal emulation. Some of these apps support having more than one emulation/virtual file system for different OS profiles, thus the ability to have or run multiple OS's. Some even have support to run the emulation via a localhost SSH connection (letting remote ssh terminal apps on device access the OS emulation/VM, VNC, and XSDL. If more than one of these apps that support these protocols or technologies are available on the android device, via androids ability to do background tasking the main emulator/VM app on android can be used to launch multiple emulation/vm OS, which the other apps can connect to, thus multiple emulated/VM OS's can run at the same time. However, there are a few emulator or VM apps that require that the android device to be rooted for the app to work, and there are others that do not require such. Some remote terminal access apps also have the ability to access Android's internally implemented Toybox, via device loopback support. Some VM/emulator apps have a fixed set of OS's or applications that can be supported.

Since Android 8 (Oreo) and latter versions of Android, some of these apps have been reporting issues as Google has heightened the security of file-access permissions on newer versions of Android. Some apps have difficulties or have lost access to SD card.[1][2] It is also been reported that some of the apps have trouble utilizing packages like udisks2, Open vSwitch, Snort (software), and Mininet, due to new hardware or Android API restrictions on apps that have been put into place in the recent years.[3][4] Due to this, many of these app developers and their community members are stating that the emulation/VM app can run itself and an OS without being rooted, however not all packages will be able to run unless the device is rooted.[3][4][5][6]

OS emulators or VM Android apps[edit]

The following is a list of OS emulators and OS virtualization Android apps.

App Name Type Device architecture & OS version requirement Guest OS architecture Requires rooted device Connection technologies References
Termux Enhanced Terminal Emulator /Android 7.0 + same as host No Emulation inside app (none) [7][8][9]
UserLAnd Technologies Compatibility layer /Android 5.0 + same as host (sometimes emulates Aarch packages for ARM devices if "arm64" package is not available, but "aarch32" or "aarch64" package is available.) No SSH, VNC, XSDL (supports access from another app on the phone that links to these technologies.) [10][11]
SPC/AT Computer system emulator arm only for the android version of VM X86-64 PC , and various other platforms [12][13]
GNURoot Debian Compatibility layer ?/Android versions below 5.0 same as host No [14][15][16]
AnLinux Compatibility layer (utilizes Termux) ARMv7, ARM64, x86, x86-64/Android 5.0 + same as host No SSH, VNC (similar support statement like in UserLAnd.) [17][18]
VMOS (software) platform virtualization app ?/Android 5.0+ same as host No Emulation inside app (none) [19][20]
AndroNIX Compatibility layer (utilizes Termux) ARMv7, ARM64, x86-64/Android 5.1 + same as host No [21][22]
LinuxDeploy Compatibility layer ARM, ARM64, X86, x86-64, emulation mode (ARM ~ 86)/Android 4.0.3 + Yes [23][24][25]
linux on dex Samsung phones only / Android version below 10 No [26][25][27]
VMware Horizon Client Desktop virtualization ?/Android 5.0 + Connected to a server:

VMware Server, VMware ESXi

No [28][29]

Terminal emulation apps utilizing internal OS[edit]

App Name Notes Ref
JuiceSSH Other than just local loopback, the app can do SSH, telnet, and Mosh. [30][31][32]
ConnectBot Other than just local loopback, the app can do telnet and SSH. [33]
Termius Other than just local loopback, the app can do telnet, SSH, and SFTP. [34][35][36]

See also[edit]

References[edit]

  1. ^ "terminal - No permissions for Termux to access internal storage - even for reading". Android Enthusiasts Stack Exchange. Retrieved 2019-10-30.
  2. ^ "How to access sdcard? · Issue #46 · CypherpunkArmory/UserLAnd". GitHub. Retrieved 2019-10-30.
  3. ^ a b "Apt-Get Install failing - Udisks2 Permission Denied error leads to lots of DPKG error · Issue #992 · CypherpunkArmory/UserLAnd". GitHub. Retrieved 2019-10-30.
  4. ^ a b "[Full Tutorial💻] Install Parrot OS On Android". AndroPalac.com. 2019-10-09. Archived from the original on 2019-10-30. Retrieved 2019-10-30.
  5. ^ "Question #266516 : Questions : udisks2 package : Ubuntu". answers.launchpad.net. 19 March 2015. Retrieved 2019-10-30.
  6. ^ "closed session after dpkg --configure -a ] , After installing gnome-terminal · Issue #802 · CypherpunkArmory/UserLAnd". GitHub. Retrieved 2019-10-30.
  7. ^ "Termux - Apps on Google Play". play.google.com. Retrieved 2019-10-30.
  8. ^ "Termux". termux.com. Retrieved 2019-10-30.
  9. ^ Wallen, Jack (August 13, 2019). "How to install Git on Android". TechRepublic. Retrieved 2019-10-30.
  10. ^ "UserLAnd - Apps on Google Play". play.google.com. Retrieved 2019-10-30.
  11. ^ "Use Linux Anywhere". userland.tech. Retrieved 2019-10-30.
  12. ^ "SPC / AT Emulator - PC x86 / x86-64 - Downloads - Emulators". www.emutopia.com. Retrieved 2019-10-30.
  13. ^ "SPC / AT x64 Emulator 0.98 - Front Page News". www.emutopia.com. Retrieved 2019-10-30.
  14. ^ "GNURoot Debian – Apps on Google Play". 2019-04-06. Archived from the original on 2019-04-06. Retrieved 2019-10-30.
  15. ^ "GNURoot Debian". corbinlc.github.io. Retrieved 2019-10-30.
  16. ^ This is the repository corresponding to the GNURoot Debian Android app.: corbinlc/GNURootDebian, 2019-10-24, retrieved 2019-10-30
  17. ^ "AnLinux : Run Linux On Android Without Root Access - Apps on Google Play". play.google.com. Retrieved 2019-10-30.
  18. ^ AnLinux allow you to run Linux on Android without root access.: EXALAB/AnLinux-App, EXALAB, 2019-10-30, retrieved 2019-10-30
  19. ^ "VMOS Virtual Root Android on Android-Double System - Apps on Google Play". play.google.com. Retrieved 2019-10-30.
  20. ^ "VMOS Lets You Run a Virtual Android Machine on your Phone". xda-developers. 2019-08-08. Retrieved 2019-10-30.
  21. ^ "AndroNix - Linux on Android without root - Apps on Google Play". play.google.com. Retrieved 2019-10-30.
  22. ^ "AndroNix - Install Linux on Android without Rooting". AndroNix. Retrieved 2019-10-30.
  23. ^ "Linux Deploy - Apps on Google Play". play.google.com. Retrieved 2019-10-30.
  24. ^ Skshidlevsky, Anton (2019-10-30), GitHub - meefik/linuxdeploy: Install and run GNU/Linux on Android, retrieved 2019-10-30
  25. ^ a b Bradshaw, Kyle (2019-10-18). "Samsung discontinuing 'Linux on DeX' w/ Android 10 update". 9to5Google. Retrieved 2019-10-30.
  26. ^ "Linux on DeX is Dead, Says Samsung". OMG! Ubuntu!. 2019-10-20. Retrieved 2019-10-30.
  27. ^ "Linux on DeX". www.linuxondex.com. Archived from the original on 2020-08-11. Retrieved 2019-10-30.
  28. ^ "VMware Horizon Client - Apps on Google Play". play.google.com. Retrieved 2019-11-21.
  29. ^ Evans, Jonny (2019-01-28). "How to run Windows 10 on an iPad Pro or on Android". Computerworld. Retrieved 2019-11-21.
  30. ^ "JuiceSSH - SSH Client - Apps on Google Play". play.google.com. Retrieved 2019-11-21.
  31. ^ "JuiceSSH - Free SSH client for Android". juicessh.com. Retrieved 2019-11-21.
  32. ^ Wallen, Jack (August 13, 2014). "JuiceSSH makes it easy to manage SSH from an Android device". TechRepublic. Retrieved 2019-11-21.
  33. ^ "ConnectBot - Apps on Google Play". play.google.com. Retrieved 2019-11-21.
  34. ^ "A Nice Alternative for PuTTY: Termius – A very nice portable SSH connection tool". Computing & Technology, The Ultimate Computer Technology Blog and The Knowledgebase of Computing. Retrieved 2019-11-21.
  35. ^ "Termius". termius.com. Retrieved 2019-11-21.
  36. ^ "JuiceSSH - SSH Client vs Termius - SSH/SFTP and Telnet client - compare android market data from Google Play". www.androidrank.org. Retrieved 2019-11-21.