Identifying the Unix Standards

* I am hearing the words about UNIX standards such as Free BSD, OpenBSD, Linux, FIFS, POSIX.
* What it means?. How can i know which type of standard i am using?.
* for eg, i am installing debian etch 2.6.18. How do i know that which unix standard is defined for that
kernel?

0

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

Identifying the Unix

The UNIX standards are SVrX (System 5, Release whatever). I can't recall what the latest release was, but it hasn't changed for years. It's a de-facto standard for the filesystem hierarchy, system initialization, and service control. Most UNIXes differ from SVrX and even most Linux distributions are different from eachother although the Linux Standards Base has helped to keep things from getting too crazy.

Then there's Portable Operating System Interface for Unix (it should be POSIU, but it's spelled POSIX). As far as I know there is no operating system on the planet which is 100% POSIX compliant. POSIX just lists system calls which programmers should be able to make on compliant systems. Often the specification is not good and the result is incompatible variations on different systems. Sometimes the specification is not worth implementing. Any recent Linux kernel + GNU LibC will be mostly compliant with the latest version of POSIX. The great things about GNU LibC is that it is used to build so many UNIXes, so you can bet that most system calls made via GNU LibC don't change. However, calls to the kernel itself often do change (even if that call is technically POSIX compliant on both kernels - that's the problem with the poor POSIX specs).

So ... Solaris (is it v10 now or later?), FreeBSD, NetBSD, OpenBSD, Mac OSX, and Linux 2.4 and 2.6 are all mostly compliant with the latest POSIX specification. In the end this just means that it's not too difficult to write a piece of command-line software which can be compiled and run on any of these machines. Even Microsoft claim POSIX compliance for WinDos but they seem to have an interesting notion of what constitutes compliance.

Syndicate content