Mono has support for both 32 and 64 bit systems on a number of architectures as well as a number of operating systems.
Supported Operating Systems
- macOS, iOS, tvOS, watchOS
- Sun Solaris
- IBM AIX and i
- BSD - OpenBSD, FreeBSD, NetBSD
- Microsoft Windows
- Sony PlayStation 4
- Xbox Series X and Xbox Series S
Mono has both an optimizing just-in-time (JIT) runtime and a interpreter runtime. The interpreter runtime is far less complex and is primarily used in the early stages before a JIT version for that architecture is constructed. The interpreter is not supported on architectures where the JIT has been ported.
|Supported Architectures||Runtime||Operating system|
|s390x (64 bits)||JIT||Linux|
|SPARC (32)||JIT||Solaris, Linux|
|PowerPC||JIT||Linux, AIX, i, macOS, Wii, PlayStation 3|
|x86||JIT||Linux, FreeBSD, OpenBSD, NetBSD, Microsoft Windows, Solaris, macOS, Android|
|x86-64: AMD64 and EM64T (64 bit)||JIT, Interpreter||Linux, FreeBSD, OpenBSD, Microsoft Windows, Solaris, macOS|
|ARM: little and big endian||JIT, Interpreter (arm64 only)||Linux (both old and new ABI), iPhone, Android|
Note that the MIPS, PowerPC, SPARC, S390X, and ARM big-endian are community-supported and may not be as complete as the other architectures.
Packages for most platforms are available from the Downloads page.
To make mono more suitable for some architectures used as embedded systems have a look at the Small footprint page.
Support for the following platforms is only available for older versions of Mono (that you can retrieve from the Git history, or via licensing from Novell) but are not up-to-date and are no longer maintained:
- Sony PlayStation 3
- Nintendo Wii
- HPPA architecture on HP-UX.
- Alpha architecture on Linux.
- S390 architecture on Linux (the 32-bit version)
- IA64 Itanium2 (64 bit) on Linux
- SPARC64 a community effort that was not merged.