Openbsd
Essay by 24 • November 28, 2010 • 3,714 Words (15 Pages) • 1,300 Views
In December 1994, NetBSD co-founder Theo de Raadt was asked to resign his position as a senior developer and member of the NetBSD core team, and his access to the source code repository was revoked. The reason for this is not wholly clear, although there are claims that it was due to personality clashes within the NetBSD project and on its mailing lists.[2] De Raadt has been criticized for having a sometimes abrasive personality: in his book, Free For All, Peter Wayner claims that de Raadt "began to rub some people the wrong way" before the split from NetBSD;[3] Linus Torvalds has described him as "difficult;"[4] and an interviewer admits to being "apprehensive" before meeting him.[5] Many have different feelings: the same interviewer describes de Raadt's "transformation" on founding OpenBSD and his "desire to take care of his team," some find his straightforwardness refreshing, and few deny he is a talented coder[6] and security "guru".[7]
In October 1995, de Raadt founded OpenBSD, a new project forked from NetBSD 1.0. The initial release, OpenBSD 1.2, was made in July 1996, followed in October of the same year by OpenBSD 2.0.[8] Since then, the project has followed a schedule of a release every six months, each of which is maintained and supported for one year. The latest release, OpenBSD 4.3, appeared on May 1, 2008.[9]
Bar chart showing the proportion of users of each BSD variant from a BSD usage survey. Each participant was permitted to indicate multiple BSD variants
Bar chart showing the proportion of users of each BSD variant from a BSD usage survey.[10] Each participant was permitted to indicate multiple BSD variants
On 25 July 2007, OpenBSD developer Bob Beck announced the formation of the OpenBSD Foundation,[11] a Canadian not-for-profit corporation formed to "act as a single point of contact for persons and organizations requiring a legal entity to deal with when they wish to support OpenBSD."[12]
Just how widely OpenBSD is used is hard to ascertain: the developers do not collect and publish usage statistics and there are few other sources of information. In September, 2005 the nascent BSD Certification project performed a usage survey which revealed that 32.8% of BSD users (1420 of 4330 respondents) were using OpenBSD,[10] placing it second of the four major BSD variants, behind FreeBSD with 77.0% and ahead of NetBSD with 16.3%.[13] The DistroWatch website, well-known in the Linux community and often used as a reference for popularity, publishes page hits for each of the Linux distributions and other operating systems it covers. As of April 14, 2007 it places OpenBSD in 55th place, with 121 hits per day. FreeBSD is in 16th place with 478 hits per day and a number of Linux distributions range between them.
[edit] Open source and open documentation
When OpenBSD was created, Theo de Raadt decided that the source should be available for anyone to read at any time, so, with the assistance of Chuck Cranor,[14] he set up a public, anonymous CVS server. This was the first of its kind in the software development world: at the time, the tradition was for only a small team of developers to have access to a project's source repository. This practice had downsides, notably that outside contributors had no way to closely follow a project's development and contributed work would often duplicate already completed efforts. This decision led to the name OpenBSD and signalled the project's insistence on open and public access to both source code and documentation.
A revealing incident regarding open documentation occurred in March 2005, when de Raadt posted a message[15] to the openbsd-misc mailing list. He announced that after four months of discussion, Adaptec had yet to disclose the required documentation to improve the OpenBSD drivers for its AAC RAID controllers. As in similar circumstances in the past, he encouraged the OpenBSD community to become involved and express their opinion to Adaptec. Shortly after this, FreeBSD committer, former Adaptec employee and author of the FreeBSD AAC RAID support Scott Long[16] castigated de Raadt[17] on the OSNews website for not contacting him directly regarding the issues with Adaptec. This caused the discussion to spill over onto the freebsd-questions mailing list, where the OpenBSD project leader countered[18] by claiming that he had received no previous offer of help from Scott Long nor been referred to him by Adaptec. The debate was amplified[19] by disagreements between members of the two camps regarding the use of binary blob drivers and non-disclosure agreements (NDAs): OpenBSD developers do not permit the inclusion of closed source binary drivers in the source tree and are reluctant to sign NDAs. However, the policy of the FreeBSD project has been less strict and much of the Adaptec RAID management code Scott Long proposed as assistance for OpenBSD was closed source or written under an NDA. As no documentation was forthcoming before the deadline for release of OpenBSD 3.7, support for Adaptec AAC RAID controllers was removed from the standard OpenBSD kernel.
The OpenBSD policy on openness extends to hardware documentation: in the slides for a December 2006 presentation, de Raadt explained that without it "developers often make mistakes writing drivers," and pointed out that "the [oh my god, I got it to work] rush is harder to achieve, and some developers just give up."[20] He went on to say that vendor binary drivers are unacceptable, as they cannot be trusted and there is "no way to fix [them] ... when they break," that even vendor source is only "marginally acceptable" and still difficult to fix when problems occur, and further commented "if we cannot maintain a driver after the vendor stops caring, we ... have a broken hardware [sic]."
[edit] Licensing
OpenBSD 3.7 running X.Org with the JWM window manager
OpenBSD 3.7 running X.Org with the JWM window manager
A goal of the OpenBSD project is to "maintain the spirit of the original Berkeley Unix copyrights," which permitted a "relatively un-encumbered Unix source distribution."[21] To this end, the Internet Systems Consortium (ISC) licence, a simplified version of the BSD licence with wording removed that is unnecessary under the Berne convention, is preferred for new code, but the MIT or BSD licences are accepted. The widely used GNU General Public License is considered overly restrictive in comparison with these:[22] code licensed under it, and other licences the project sees as undesirable, is no longer accepted for
...
...