From owner-freebsd-questions@FreeBSD.ORG Tue Feb 28 12:30:30 2012 Return-Path: Delivered-To: freebsd-questions@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 467AE106566B for ; Tue, 28 Feb 2012 12:30:30 +0000 (UTC) (envelope-from jherman@dichotomia.fr) Received: from mail.dichotomia.fr (hydrogen.dichotomia.net [91.121.82.228]) by mx1.freebsd.org (Postfix) with ESMTP id BD3158FC08 for ; Tue, 28 Feb 2012 12:30:29 +0000 (UTC) Received: from [192.168.2.11] (unknown [109.190.13.180]) (Authenticated sender: kha@dichotomia.fr) by sslmail.dichotomia.fr (Postfix) with ESMTPSA id D6B233DD07D for ; Tue, 28 Feb 2012 13:29:58 +0100 (CET) Message-ID: <4F4CC8D1.4070000@dichotomia.fr> Date: Tue, 28 Feb 2012 13:30:09 +0100 From: Jerome Herman User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:10.0.2) Gecko/20120216 Thunderbird/10.0.2 MIME-Version: 1.0 To: freebsd-questions@freebsd.org 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> In-Reply-To: <20120228113213.GA56638@mech-cluster241.men.bris.ac.uk> X-Greylist: Sender succeeded SMTP AUTH, not delayed by milter-greylist-4.2.7 (sslmail.dichotomia.fr); Tue, 28 Feb 2012 13:29:59 +0100 (CET) Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-Content-Filtered-By: Mailman/MimeDel 2.1.5 Subject: Re: posix compliance X-BeenThere: freebsd-questions@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: User questions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 28 Feb 2012 12:30:30 -0000 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...