Is there a Linux distribution certified with the Single UNIX Specification? What are the primary reasons that most distributions don't get certified?
Yes, there are
They've been certified by the Open Group to be conformed to the UNIX 03 Product Standard. Currently no other Linux distros have the certification due to the high cost. The list of Unix-certified systems can be found below
- The Open Group official register of UNIX Certified Products
Most Linux distributions are mostly POSIX compliant, but there's no formal POSIX stamp on them since nobody thinks it's a good idea to either go through that procedure, or pay the required fees, or both.
Getting a POSIX certification would mean that it would be e.g. "Debian, version 8, on amd64" that was certified. Then you'd need to certify "Debian, version 8, on powerpc" etc., and then do that again for the next release. Today only a handful of commercially available Unices are certified to be POSIX compliant in very specific configurations (release version + machine architecture). For example, Solaris 8 and 9 are UNIX 98 compliant (SUSv2) on i386 and sparc, but not on x86_64.
Instead, most free Unices (not just Linux) chooses to
- Trying to conform to POSIX.
- Document non-conformance to POSIX.
- Document extensions to POSIX.
So the "contract" between you and the OS is the manual pages rather than the POSIX standard document.
I use "POSIX" above since "POSIX:2001" was the same as "Single UNIX Specification, version 3", and if I understand things right, "POSIX:2008" and "Single UNIX Specification, version 4" is the same thing too.