In software engineering, a compatibility layer is an interface that allows binaries for a legacy or foreign system to run on a host system.
Examples include: Compatibility layer in kernel: A compatibility layer avoids both the complexity and the speed penalty of full hardware emulation.
Benchmarks are occasionally run on Wine to compare it to Windows NT-based operating systems.
[24] Even on similar systems, the details of implementing a compatibility layer can be quite intricate and troublesome; a good example is the IRIX binary compatibility layer in the MIPS architecture version of NetBSD.
Some hardware compatibility layers involve breakout boxes because breakout boxes can provide compatibility for certain computer buses that are otherwise incompatible with the machine.