Jump to content

Comparison of BSD operating systems

From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by Janizary (talk | contribs) at 16:15, 30 January 2007 (General information: "Stable" can be said of most systems, so, we'll just not list it for only FreeBSD.). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

There are a number of Unix-like operating systems based on, or descended from, the Berkeley Software Distribution (BSD) series of UNIX variants. The three most notable descendants in current use are FreeBSD, OpenBSD, and NetBSD, which are all derived from 386BSD and 4.4BSD-Lite, by various routes. Both NetBSD and FreeBSD started life in 1993, initially derived from 386BSD, but in 1994 migrating to a 4.4BSD-Lite code base. OpenBSD was forked in 1995 from NetBSD. Other notable derivatives include DragonFly BSD, which was forked from FreeBSD 4.8, and Apple Computer's Mac OS X, with its Darwin base including a large amount of code derived from FreeBSD.

Most of the current BSD operating systems are open source and available for download, free of charge, under the BSD License, the most notable exception being Mac OS X. They also generally use a monolithic kernel architecture, apart from Mac OS X and DragonFly BSD which feature hybrid kernels. The various open source BSD projects generally develop the kernel and userland programs and libraries together, the source code being managed using a single central source repository.

In the past, BSD was also used as a basis for several proprietary versions of UNIX, such as Sun's SunOS, Sequent's Dynix, NeXT's NeXTSTEP, DEC's Ultrix and OSF/1 AXP (now Tru64 UNIX). Of these, only the last is still currently supported.

Aims and philosophies

The aim of the FreeBSD project is to produce an operating system usable for any purpose.[1] FreeBSD is intended to run a wide variety of applications, be easy to use, contain cutting edge features, and be highly scalable on very high load network servers.[2] FreeBSD is free and open source, and the project prefers the BSD license. However, they do sometimes accept non-disclosure agreements (NDAs) and include a limited number of closed-source HAL modules for specific device drivers in their source tree, in order to support the hardware of companies who do not provide purely open source drivers (such as HALs to program software-defined radios so that vendors do not violate FCC regulations). In order to maintain a high level of quality and provide good support for "production quality commercial off-the-shelf (COTS) workstation, server, and high-end embedded systems", FreeBSD focuses on a narrow set of architectures.[3] A significant focus of development over the last five years has been "SMPng", a fine-grained SMP architecture intended to support higher levels of scalability, and KSE, an M:N threading implementation also targeted at scalability. Other recent work includes Common Criteria security functionality, such as mandatory access control and security event audit support.

OpenBSD focuses on security, correctness, and being as free as possible. Security policies include revealing security flaws publicly, known as full disclosure; thoroughly auditing code for bugs and security issues; various security features, including the W^X page protection technology and heavy use of randomisation; a "secure by default" philosophy including disabling all non-essential services and sane initial settings; and integrated cryptography, originally made easier due to relaxed Canadian export laws in comparison to the United States. Concerning software freedom, OpenBSD prefers the BSD or ISC license, with the GPL acceptable only for existing software which is impractical to replace, such as the GNU Compiler Collection. NDAs are almost never considered acceptable. This has led to the foundation of a number of child projects to replace restricted alternatives, including OpenSSH and CARP, as well as campaigns to persuade hardware vendors to release documentation. In common with its parent, NetBSD, OpenBSD strives to run on a wide variety of hardware.[4]

NetBSD aims to provide a freely redistributable operating system that professionals, hobbyists, and researchers can use in whatever manner they wish. NetBSD's main focus is portability, through the use of clear distinctions between machine-dependent and machine-independent code. It runs on a wide variety of 32-bit and 64-bit processor architectures and hardware platforms, and is intended to interoperate well with other operating systems. NetBSD places emphasis on correct design, well-written code, stability, and efficiency. Where practical, close compliance with open API and protocol standards is also aimed for. The NetBSD Project prefers the 4-clause BSD license, and tries to avoid encumbering licenses when possible.[5]

DragonFly BSD focuses on being inherently easy to understand and develop for multi-processor capable infrastructures. Taking FreeBSD 4.8 as a starting point, the primary aim is to radically change the kernel architecture, introducing microkernel-like message passing which will enhance scalability and reliability on symmetric multiprocessing platforms, and also be applicable to NUMA and clustered systems. The long-term goal is to provide transparent single system image clustering. DragonFly BSD currently supports only the IA-32 platform.[6] Matthew Dillon, the founder of DragonFly BSD, believes supporting fewer platforms makes it easier for a project to do a proper ground-up SMP implementation.[7]

Popularity

Results of a BSD usage survey, September 2005. The question allowed participants to check more than one OS. The percentages around the graph are out of the total answers; the percentages in the key are out of the total participants.

In September 2005, the BSD Certification Group, after advertising on a number of mailing lists, surveyed 4,330 BSD users, 3958 of whom took the survey in English, to assess the relative popularity of the various BSD operating systems. About 77% of respondents used FreeBSD, 33% used OpenBSD, 16% used NetBSD, 2.6% used Dragonfly, and 6.6% used other BSD systems. Other languages offered were Brazilian and European Portuguese, German, Italian, and Polish. Note that there was no control group or pre-screening of the survey takers. Those who checked "Other" were asked to specify that operating system. Note that the operating system survey takers filled in for "other" may or may not be considered BSD operating systems by most people.[8]

Note that because survey takers were permitted to select more than one answer, the percentages shown in the key, which are out of the total survey takers (4330), add up to greater than 100%. The percentages shown around the chart, which were used to size the sections, are out of the total answers (5860). Note that if a survey taker filled in more than one choice for "other", this is still only counted as one vote for other on this chart.[8]

Another attempt to profile worldwide BSD usage is the *BSDstats Project, whose primary goal is to demonstrate to hardware vendors the penetration of BSD and viability of hardware drivers for the operating system. The project collects data monthly from any BSD system administrators willing to participate, and currently records the BSD market share of FreeBSD, OpenBSD, NetBSD, DragonflyBSD, Debian GNU/kFreeBSD, PC-BSD, and MirBSD.[9]

The Distrowatch website, well-known in the Linux community and often used as a rough guide to free operating system popularity, publishes page hits for each of the Linux distributions and other operating systems it covers. As of July 2006 it placed FreeBSD in 12th place with 555 hits per day; OpenBSD in 48th place with 117 hits per day; and NetBSD in 80th place with 70 hits per day.[10]

Names, logos, and slogans

File:BSD-daemon.svg
FreeBSD's mascot.

The names FreeBSD and OpenBSD are references to software freedom: both in cost and open source.[11] NetBSD's name is a tribute to the Internet, which brought the original developers together.[12]

The first BSD mascot was the BSD daemon, named after a common type of Unix software program, a daemon. FreeBSD still uses the image, a red cartoon devil named Beastie, wielding a pitchfork, as its mascot today. In 2005, after a competition, a stylized version of Beastie's head was chosen as the FreeBSD logo.[13]

NetBSD's logo.

The NetBSD flag, designed in 2004 by Grant Bisset, is inspired by the original NetBSD logo[14], designed in 1994 by Shawn Mueller, portraying a number of BSD daemons raising a flag on top of a mound of computer equipment. This was based on a World War II photograph, Raising the Flag on Iwo Jima. Some people believed this had negative cultural ramifications and was not a suitable image for NetBSD in the corporate world, so the new, flatter, abstract flag design was selected.[15] The NetBSD slogan is "Of course it runs NetBSD", referring to the operating system's portability.

File:Openbsd.png
OpenBSD's logo.

Originally, OpenBSD used the BSD daemon as a mascot, but later replaced it with Puffy. Although Puffy is usually referred to as a pufferfish, the spikes on the cartoon images give him a closer likeness to the porcupinefish. The logo is a reference to the fish's defensive capabilities and to the Blowfish cryptography algorithm used in OpenBSD. OpenBSD also has a number of slogans including "Secure by default", which was used in the first OpenBSD song, E-railed, and "Free, Functional & Secure"[16] and has released an original song with every release since 3.0.[17]

File:DragonFly BSD Logo.png
DragonFly BSD's logo.

The DragonFly BSD logo, designed by Joe Angrisano, is a dragonfly named Fred. A number of unofficial logos[18] by various authors also show the dragonfly or stylized versions of it. DragonFly BSD considers itself to be "the logical continuation of the FreeBSD 4.x series."[19] FireflyBSD has a similar logo, a firefly, showing its close relationship to DragonFly BSD. In fact, the FireflyBSD website states that proceeds from sales will go to the development of DragonFly BSD, suggesting that the two may in fact be very closely related.

PicoBSD's slogan is "For the little BSD in all of us," and its logo includes a version of FreeBSD's Beastie as a child[20], showing its close connection to FreeBSD, and the minimal amount of code needed to run as a LiveCD.

A number of BSD OSes use stylized version of their respective names for logos. This includes Mac OS X (which only uses the X), PC-BSD, DesktopBSD (with a symbol on the side), ClosedBSD (curved into a semicircle[21]), Frenzy[22] (with symbol on the side), and MicroBSD (which includes a bull-like M with yellow eyes[23]). The Mac OS X logo is the Roman numeral for 10. This is intended to emphasize the change from previous versions of Mac OS, which were not based on BSD and had version numbers expressed using Arabic numerals. PC-BSD's slogan is "Personal computing, served up BSD style!", DesktopBSD's "A Step Towards BSD on the Desktop." MicroBSD's slogan is "The small secure unix like OS."

MirOS's site collects a variety of BSD mascots and Tux, the Linux mascot, together, illustrating the project's aim of supporting both BSD and Linux kernels. MirOS's slogan is "a wonderful operating system for a world of peace."[24]

General information

Developer First public release Based on Latest stable version Cost (USD) Preferred license Purpose Short description
Version Release Date
FreeBSD The FreeBSD Project December 1993 386BSD, 4.4BSD-Lite 6.2 Jan 15, 2007 Free BSD Server, Workstation, Network Appliance High performance
OpenBSD The OpenBSD Project October 1995 NetBSD 1.0 4.0 Nov 1, 2006 Free BSD, see detailed policy Server, Workstation, Network Appliance, Embedded extremely secure (out of the box)
NetBSD The NetBSD Project May 1993 386BSD, 4.4BSD-Lite 3.1 November 4, 2006 Free BSD Server, Workstation, Network Appliance, Embedded highly portable
386BSD Template:Fn William and Lynne Jolitz March 1992 4.3BSD Net/2 1.0 1994 Free BSD
BSD/OS (BSD/386) Template:Fn BSDi, Wind River Systems March 1993 4.3BSD Net/2, 4.4BSD 5.1 October 2003 Proprietary
SunOS Template:Fn Sun Microsystems 1982 4.xBSD, UNIX System V[25] 4.1.4 November 1994 Template:Fn Proprietary
Ultrix Template:Fn Digital Equipment Corporation 1984 4.2BSD, SVR2 4.5 1995 Proprietary
Tru64 UNIX (OSF/1 AXP, Digital UNIX) DEC, Compaq, HP 1993 4.3BSD, Mach 2.5, UNIX System V 5.1B-3 June 2005 Non-free$99 (non-commercial) Proprietary
Mac OS X Apple Computer March 2001 Darwin 10.4.8 "Tiger" September 29, 2006 Non-freeDesktop $129
Server $499 (10 clients)
$999 (unlimited clients)
Open source core system (APSL, GPL, others) with proprietary higher level API layers Workstation, Home Desktop, Server easy to use
Darwin Apple Computer March 2001 NeXTSTEP, FreeBSD, Mac OS 8.8 September 29, 2006 Free APSL, GPL, others Workstation, Home Desktop, Server core of Mac OS X
DragonFly BSD Matt Dillon July 12, 2004 FreeBSD 4.8 1.6 July 24, 2006 Free BSD Server, Workstation, Network Appliance Emphasis on multiprocessor systems, and clustering
FireflyBSD Steven David Rhodus September 14, 2004 DragonFly BSD 1.4 Non-free$12.95 Commercially supported version of DragonFly BSD
PC-BSD Kris Moore, Mike Albert, Tim McCormick, Dimitri Tishchenko April 29, 2006 FreeBSD 1.3 December 31, 2006 Free BSD Desktop easy to use
DesktopBSD Peter Hofer, Daniel Seuffert July 25, 2005 FreeBSD 1.0 March 28, 2006 Free BSD Desktop easy to use
BSDeviantTemplate:Fn Unixpunx FreeBSD 1.0? June 2004 Free LiveCD
ClosedBSD various contributors FreeBSD 1.0B(floppy), 1.0-RC1(CD) Free BSD firewall/NAT, boot floppy, LiveCD
FreeSBIE FreeBSD 2.0 January 2007 Free LiveCD of FreeBSD
Frenzy Mozhaisky Sergei FreeBSD 1.0 Free "portable system administrator toolkit" LiveCD
PicoBSD Andrzej Bialeck FreeBSD 0.42 Free BSD boot floppy
Anonym.OS beta as of January 2005 OpenBSD 3.8 none Free anonymous browsing LiveCD
MirOS BSD The MirOS Project OpenBSD 3.1 #8 December 24, 2005 Free European
ekkoBSD Template:Fn Rick Collette OpenBSD 3.3 Server easy to administer
MicroBSD Template:Fn Bulgarians OpenBSD 3.0/3.4 0.6 Oct 27, 2003 Free general purpose small, secure
OliveBSD Gabriel Paderni OpenBSD 3.8 Free Livecd
Gentoo/FreeBSD Gentoo Linux developers FreeBSD 6.1 May 9, 2006 Free GPL, BSD Server, Workstation, Network Appliance uses Gentoo framework
Gentoo OpenBSD Gentoo Linux developers OpenBSD Free Server, Workstation, Network Appliance, Embedded uses Gentoo framework
Gentoo NetBSD Gentoo Linux developers NetBSD Free Server, Workstation, Network Appliance, Embedded uses Gentoo framework
Gentoo DragonflyBSD Robert Sebastian Gerus (project not yet officially supported by Gentoo) DragonFly BSD Free Server, Workstation, Network Appliance uses Gentoo framework
Debian GNU/kFreeBSD GNU, FreeBSD Free GNU userspace on FreeBSD kernel
Debian GNU/NetBSD GNU, NetBSD Free GNU userspace on NetBSD kernel
Developer First public release Based on Version Release Date Cost (USD) Preferred license Purpose Short description

Template:FnbThis article only refers to SunOS through version 4.x. SunOS from release 5.x forward is based on SVR4, and is most commonly referred to as the Solaris Operating System.
Template:Fnb 386BSD, BSD/OS, SunOS, and Ultrix are historic operating systems that are no longer developed. BSDeviant and ekkoBSD don't exist anymore either, although BSDeviant is still available for download (see external links). MicroBSD ended, then started again in 2003, but it does not seem that any progress has been made since then, though the website still exists.

Technical information

Supported architectures Supported file systemsTemplate:Fn Kernel type GUI on by defaultTemplate:Fn Package management Update management Primary APIsTemplate:Fn
FreeBSD x86, x86-64, PC98, UltraSPARC, others UFS, UFS2, ext2, FAT, ISO 9660, UDF, NFS, SMBFS, NetWare (nwfs), NTFS (read only), ReiserFS (read only), XFS (experimental), others Monolithic with modules No ports tree, packages source (CVSup, portsnap), network binary update (freebsdupdate) BSD, POSIX
OpenBSD x86, 68k, Alpha, x86-64, SPARC, VAX, others UFS, ext2, FAT, ISO 9660, NFS, NTFSTemplate:Fn (read only), AFS, others MonolithicTemplate:Fn NoTemplate:Fn ports tree, packages source (CVS, CVSup, rsync) or binary upgrade BSD, POSIX, X11
NetBSD x86, 68k, Alpha, x86-64, PPC, SPARC, others UFS, UFS2, ext2, FAT, ISO 9660, NFS, LFS, others Monolithic with modules NoTemplate:Fn pkgsrc, packages source (CVS, CVSup, rsync) or binary (using sysinst) BSD, POSIX
Ultrix VAX, PDP-11, MIPS UFS + others Monolithic No setld ? BSD, POSIX (4.0 onwards)
Tru64 UNIX Alpha UFS, AdvFS, ISO 9660, UDF, NFS Hybrid Yes (CDE) setld dupatch POSIX, UNIX 98, X11, CDE, others
Mac OS X / Darwin PPC, x86 HFS+ (default), HFS, UFS, AFP, ISO 9660, FAT, UDF, NFS, SMBFS, NTFS (read only), FTP, WebDAV, others Hybrid Yes (Aqua) OS X Installer Software Update Carbon, Cocoa, BSD/POSIX, CF, X11 (since 10.3)
DragonFly BSD x86 UFS, FAT, ISO 9660, NFS, SMBFS, NTFS (read only), others Hybrid No pkgsrc, packages CVSup BSD, POSIX
PC-BSD x86, x86-64 UFS, UFS2, FAT, ISO 9660, NFS, SMBFS, NTFS (read only), others Monolithic with modules Yes (KDE) graphical installation wizard, ports tree CVSup, Portsnap, network binary update (Online Update) BSD, POSIX, X11, KDE

Template:Fnb UFS and UFS2 are descendants of the old FFS. However, many BSD operating systems refer to UFS1 as FFS.
Template:Fnb Operating systems where the GUI is not installed and turned on by default are often bundled with an implementation of the X Window System. However, installing X is usually optional.
Template:Fnb Most operating systems use proprietary APIs in addition to any supported standards.
Template:Fnb OpenBSD's NTFS support is not enabled by default and requires a custom kernel.
Template:Fnb OpenBSD contains support for modules on some architectures. They are used only to add third-party features: extracting existing functions into modules in the same manner as FreeBSD is not possible.
Template:Fnb Unlike FreeBSD, OpenBSD includes the X Window System as base install sets rather than packages within the ports collection. It includes some local changes and is managed as part of the OpenBSD source tree.
Template:Fnb NetBSD includes Xfree86 as a base install set and includes some local changes and is maintained within the NetBSD source tree. The pkgsrc collection also provides Xorg via packages as an alternative.

Security features

Resource access control Security logging Subsystem isolation mechanisms Integrated firewall Encrypted file systems Data execution prevention Known unpatched vulnerabilitiesTemplate:Fn
hardware emulation number oldest
FreeBSD Unix, ACLs, MAC syslog, CAPP event auditing chroot, jail, MAC partitions IPFW2, IPFilter, PF Yes No No 4 -
OpenBSD Unix syslog chroot, systrace, privilege separation PF Yes Yes Yes 0 -
NetBSD Unix, Veriexec syslog chroot, systrace IPFilter, PF Yes Yes No 6 -
Mac OS X Unix, ACLs syslog, CAPP event auditing chroot ipfw Yes ? 18 -

Template:Fnb Comparison of known unpatched vulnerabilities is based on Secunia vulnerabilities reports with a severity of less critical and above. Updated daily.

See also

Notes and references

  1. ^ "Chapter 1 Introduction: 1.2. - What is the goal of the FreeBSD Project?". Frequently Asked Questions for FreeBSD 4.X, 5.X, and 6.X. The FreeBSD Documentation Project. 1995–2006. Retrieved 2006-04-22.{{cite web}}: CS1 maint: date format (link)
  2. ^ "About FreeBSD". The FreeBSD Project. 2006-10-12. Retrieved 2006-10-14. {{cite web}}: Check date values in: |date= (help)
  3. ^ "Support for Multiple Architectures: Statement of General Intent". Committer's Guide. The FreeBSD Documentation Project. ©1999-2005. Retrieved 2006-10-14. The FreeBSD Project targets "production quality commercial off-the-shelf (COTS) workstation, server, and high-end embedded systems". {{cite web}}: Check date values in: |date= (help)
  4. ^ "OpenBSD Project Goals". OpenBSD. 2005-10-12. Retrieved 2006-04-22. {{cite web}}: Check date values in: |date= (help)
  5. ^ "About the NetBSD Project - What is the NetBSD project?". The NetBSD Foundation, Inc. 2006-01-08. Retrieved 2006-04-22. {{cite web}}: Check date values in: |date= (help)
  6. ^ "DragonFly Frequently Asked Questions". The DragonFly BSD Project. Retrieved 2006-07-01.
  7. ^ Biancuzzi, Federico (2004-07-08). "Behind DragonFly BSD An Interview with the developers.". O’Reilly Media, Inc. p. 3. Retrieved 2006-04-29. {{cite web}}: Check date values in: |date= (help)
  8. ^ a b BSD Certification site; PDF of usage survey results. Retrieved on 2006-04-22.
  9. ^ "*BSD Usage Statistics". The *BSD Stats Project. Retrieved 2006-09-30.
  10. ^ "DistroWatch.com: Put the fun back into computing". DistroWatch.com. 2001–2006. Retrieved 2006-07-21.{{cite web}}: CS1 maint: date format (link)
  11. ^ "Chapter 1 Introduction - Why is it called FreeBSD?". Frequently Asked Questions for FreeBSD 4.X, 5.X, and 6.X. The FreeBSD Documentation Project. 1995–2006. Retrieved 2006-06-11.{{cite web}}: CS1 maint: date format (link)
  12. ^ "About the NetBSD Project - Why the name?". The NetBSD Foundation. 1994–2006. Retrieved 2006-12-06.{{cite web}}: CS1 maint: date format (link)
  13. ^ FreeBSD Logo Competition. The FreeBSD Project. Competition ended 2005-06-30. Retrieved on 2006-04-22.
  14. ^ Mueller, Shawn (1994). "Original NetBSD Logo" (JPEG). The NetBSD Foundation. Retrieved 2006-04-22. Also see NetBSD Logos.
  15. ^ Mewburn, Luke (2004-01-14). "NetBSD logo design competition". Netbsd-advocacy mailing list. Retrieved 2006-04-22. {{cite web}}: Check date values in: |date= (help)
    Linked to from:
    "Changes and NetBSD News in 2004 - NetBSD Logo Design Contest". The NetBSD Foundation, Inc. 2004-01-13. Retrieved 2006-10-14. {{cite web}}: Check date values in: |date= (help)
    Also see:
    "The NetBSD Foundation Press Release: Announcement of New Logo - NetBSD has a new logo!". The NetBSD Foundation, Inc. 2004-10-30. Retrieved 2006-04-22. {{cite web}}: Check date values in: |date= (help)
  16. ^ "OpenBSD 3.9 - Free, Functional & Secure" (JPEG). OpenBSD. Retrieved 2006-07-01.
  17. ^ "OpenBSD release song lyrics". OpenBSD. 2006-04-15. Retrieved 2006-04-22. {{cite web}}: Check date values in: |date= (help)
  18. ^ "DFWiki - DragonFly Artwork". The DragonFlyBSD Project. 2006-03-28. Retrieved 2006-04-22. {{cite web}}: Check date values in: |date= (help) This page was noted to be a redirect to the front page of new DragonFly Wiki on 2006-06-17.
  19. ^ "The History of DragonFly". The DragonFly BSD Project. Retrieved 2006-04-22.
  20. ^ "PicoBSD Banner - For the little BSD in all of us" (GIF). The FreeBSD Project. Retrieved 2006-04-22.
  21. ^ "ClosedBSD logo". Archived from the original (JPEG) on 2005-03-18. Retrieved 2006-10-14. {{cite web}}: |archive-date= / |archive-url= timestamp mismatch; 2005-03-06 suggested (help) Original last retrieved on 2006-04-22.
  22. ^ Vitalievich, Mozhaisky Sergei. "Frenzy logo" (PNG). Retrieved 2006-04-22.
  23. ^ "MicroBSD logo - The small secure unix like OS" (PNG). Retrieved 2006-04-22.
  24. ^ "MirOS/MirPorts: a wonderful operating system for a world of peace". MirOS Project. Retrieved 2006-04-22.
  25. ^ "SunOS 4.1.3: svidii - overview of the System V environment". FreeBSD Hypertext Man Pages. The FreeBSD Project. 1989-09-30. Retrieved 2006-06-14. {{cite web}}: Check date values in: |date= (help)

Home pages

Other sources