Date: Tue, 28 Feb 2012 13:30:09 +0100 From: Jerome Herman <jherman@dichotomia.fr> To: freebsd-questions@freebsd.org Subject: Re: posix compliance Message-ID: <4F4CC8D1.4070000@dichotomia.fr> In-Reply-To: <20120228113213.GA56638@mech-cluster241.men.bris.ac.uk> References: <20120228091746.GA48977@mech-cluster241.men.bris.ac.uk> <4F4CB09B.7010806@herveybayaustralia.com.au> <20120228110323.GA56536@mech-cluster241.men.bris.ac.uk> <20120228062537.31ac74c0@scorpio> <20120228113213.GA56638@mech-cluster241.men.bris.ac.uk>
next in thread | previous in thread | raw e-mail | index | archive | help
On 28/02/2012 12:32, Anton Shterenlikht wrote: > On Tue, Feb 28, 2012 at 06:25:37AM -0500, Jerry wrote: >> On Tue, 28 Feb 2012 11:03:23 +0000 >> Anton Shterenlikht articulated: >> >>> On Tue, Feb 28, 2012 at 08:46:51PM +1000, Da Rock wrote: >>>> On 02/28/12 19:17, Anton Shterenlikht wrote: >>>>> I'm putting together a small presentation >>>>> about FreeBSD for our IT support staff. >>>>> >>>>> Is fbsd POSIX compliant? Fully? Partially? >>>>> >>>>> The info here is a bit out of date: >>>>> >>>>> http://www.freebsd.org/projects/c99/index.html >>>> Looking at the doc its not that out of date. Just check the 9.x >>>> column. >>> Oh.. I see. I only looked in the top table. >>> >>> Still, I don't get an idea from the table of >>> how close FreeBSD is to full POSIX compliance. >>> I guess that's the aim, isn't it? >> The answer is rather simple. In your presentation you would simple >> indicate that FreeBSD is not fully compliant. You then have the option >> of making copies of all the pages referenced in the above URL and >> including them in the presentation packet you are supplying to the group >> or simply referring them to the above URL. Figuring out which is more >> impressive I'll leave up to you. > sorry to be a pain. > > Are we talking 10%, 50%, 90% complete? > > Does the above page include all tasks > that need to be completed? In other words, > if all tasks on the above page are ticked, > does this aumtomatically give 100% compliance, > or is it not that simple? > It is not that simple, POSIX is more a set of norms than a norm by itself. There are Posix aspects that are not in FreeBSD and probably never will be, other aspects that do exist in FreeBSD but you should definitly not use them as they are painfull to use or flawed or both (Posix capabilities for exemple). Also there are systems that do support a fair part of Posix, but which are just a pain to use in a Posix compatible environment, basically requiring you to code quite a lot of tools to have a Posix environment. Basically Windows Server supports quite a good deal of Posix norms, and it works well for small projects or simple programs, but if you want to create a Posix compliant distributed datastore you are in for a hell of a ride. Linux is becoming basically the same, in that more and more core system tools have dependencies on Linux specific API. (And I won't talk about MacOS X) A good way of making a presentation would be to first look at what aspects of Posix you need and try to find out where these aspect are best supported. Now a simple and true enough answer would be to say that FreeBSD has one of the broader _and most usable_ Posix support, second only to Solaris. (Way better than AIX and on par with HP-UX in my humble opinion). It is mostly true in the sense that FreeBSD does support quite a lot of Posix norms including the latest ones. It is false int the sense that AIX, HP-UX IRIX and quite alot of others have a 100% certified compliance for some (quite old now) Posix norms. CF : http://en.wikipedia.org/wiki/POSIX http://en.wikipedia.org/wiki/Single_UNIX_Specification#BSD_descendants At one point FreeBSD was very close to be fully Posix compliant with norm 1.e, then norm 1.e was more or less thrown out the windows, and posix norming system pretty much imploded at this time. So basically it is quite hard to answer without first knowing exactly why you need Posix compliance. It is also worth noting that porting an application from one fully compliant OS to another is not always easier than porting from that OS to a non compliant one. Quite a lot of problems can arise in slightly different interpretations of the norm, and quite a lot of assumption that are correct under one system will require carefull tweaking and lib binding in another. Another thing that is worth noting is that Posix norming system is dying, I do not know of one system that has compliance above UNIX03, a norm written in 2001...
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4F4CC8D1.4070000>