FreeBSD
Encyclopedia
FreeBSD is a free
Free software
Free software, software libre or libre software is software that can be used, studied, and modified without restriction, and which can be copied and redistributed in modified or unmodified form either without restriction, or with restrictions that only ensure that further recipients can also do...

 Unix-like
Unix-like
A Unix-like operating system is one that behaves in a manner similar to a Unix system, while not necessarily conforming to or being certified to any version of the Single UNIX Specification....

 operating system
Operating system
An operating system is a set of programs that manage computer hardware resources and provide common services for application software. The operating system is the most important type of system software in a computer system...

 descended from AT&T
American Telephone & Telegraph
AT&T Corp., originally American Telephone and Telegraph Company, is an American telecommunications company that provides voice, video, data, and Internet telecommunications and professional services to businesses, consumers, and government agencies. AT&T is the oldest telecommunications company...

 UNIX
Unix
Unix is a multitasking, multi-user computer operating system originally developed in 1969 by a group of AT&T employees at Bell Labs, including Ken Thompson, Dennis Ritchie, Brian Kernighan, Douglas McIlroy, and Joe Ossanna...

 via BSD UNIX
Berkeley Software Distribution
Berkeley Software Distribution is a Unix operating system derivative developed and distributed by the Computer Systems Research Group of the University of California, Berkeley, from 1977 to 1995...

. Although for legal reasons FreeBSD cannot be called “UNIX”, as the direct descendant of BSD UNIX (many of whose original developers became FreeBSD developers), FreeBSD’s internals and system APIs are UNIX-compliant. Thanks to its permissive licensing terms, much of FreeBSD’s code base has become an integral part of other operating systems such as Mac OS X
Mac OS X
Mac OS X is a series of Unix-based operating systems and graphical user interfaces developed, marketed, and sold by Apple Inc. Since 2002, has been included with all new Macintosh computer systems...

 that have subsequently been certified as UNIX-compliant and have formally received UNIX branding. With the exception of the proprietary Mac OS X, FreeBSD is the most widely used BSD-derived operating system in terms of number of installed computers, and is the most widely used freely licensed, open-source BSD distribution, accounting for more than three quarters of all installed systems running free, open-source BSD derivatives.

FreeBSD is a complete operating system; the kernel, device driver
Device driver
In computing, a device driver or software driver is a computer program allowing higher-level computer programs to interact with a hardware device....

s, and all of the userland utilities, such as the shell, are held in the same source code
Source code
In computer science, source code is text written using the format and syntax of the programming language that it is being written in. Such a language is specially designed to facilitate the work of computer programmers, who specify the actions to be performed by a computer mostly by writing source...

 revision tracking tree. (This is in contrast to Linux distribution
Linux distribution
A Linux distribution is a member of the family of Unix-like operating systems built on top of the Linux kernel. Such distributions are operating systems including a large collection of software applications such as word processors, spreadsheets, media players, and database applications...

s, for which the kernel, userland utilities, and applications are developed separately, and then packaged together in various ways by others.) Third-party application software may be installed using various software installation systems, the two most common being source installation and package installation, both of which use the FreeBSD Ports
FreeBSD Ports
The FreeBSD Ports collection is a package management system for the FreeBSD operating system, providing an easy and consistent way of installing software packages. As of October 2011, there are over 22,700 ports available in the collection...

 system.

FreeBSD has been characterized as “the unknown giant among free operating systems” and is widely regarded as reliable and robust. In a Netcraft
Netcraft
Netcraft is an Internet services company based in Bath, England.Netcraft provides web server and web hosting market-share analysis, including web server and operating system detection...

 survey published 1 March 2011, the top three most reliable Web hosting company sites for the month of February 2011 (the most recent month for which figures are available as of March 2011) were all found to be running FreeBSD on their servers.

History

FreeBSD development
Software development
Software development is the development of a software product...

 began in 1993 with a quickly growing, unofficial patchkit maintained by users of the 386BSD
386BSD
386BSD, sometimes called "Jolix", was a free Unix-like operating system based on BSD, first released in 1992. It ran on PC compatible computer systems based on the Intel 80386 microprocessor...

 operating system. This patchkit forked
Fork (software development)
In software engineering, a project fork happens when developers take a legal copy of source code from one software package and start independent development on it, creating a distinct piece of software...

 from 386BSD and grew into an operating system taken from U.C. Berkeley's 4.3BSD-Lite (Net/2) tape
Magnetic tape data storage
Magnetic tape data storage uses digital recording on to magnetic tape to store digital information. Modern magnetic tape is most commonly packaged in cartridges and cassettes. The device that performs actual writing or reading of data is a tape drive...

 with many 386BSD components and code from the Free Software Foundation
Free Software Foundation
The Free Software Foundation is a non-profit corporation founded by Richard Stallman on 4 October 1985 to support the free software movement, a copyleft-based movement which aims to promote the universal freedom to create, distribute and modify computer software...

. After two public beta releases via FTP (1.0-GAMMA on September 2, 1993, and 1.0-EPSILON on October 3, 1993), the first official release was FreeBSD 1.0, available via FTP on November 1, 1993 and on CDROM on December 30, 1993. This official release was coordinated by Jordan Hubbard
Jordan Hubbard
Jordan K. Hubbard is a long-time open source developer, authoring software like the Ardent Window Manager and various other open source tools and libraries before finally co-founding the FreeBSD project. He started the FreeBSD project in 1993 with Nate Williams and Rodney W. Grimes, also creating...

, Nate Williams and Rodney W. Grimes with the name thought up by David Greenman. Walnut Creek CDROM
Walnut Creek CDROM
Walnut Creek CDROM was an early provider of freeware, shareware and free software on CD-ROMs. The company was founded in August 1991 by Bob Bruce and was one of the first commercial distributors of free software on CD-ROMs...

 agreed to distribute FreeBSD on CD and gave the project a machine to work on along with a fast Internet connection, which Hubbard later said helped stir FreeBSD's rapid growth. A "highly successful" FreeBSD 1.1 release followed in May 1994.

However, there were legal concerns about the BSD Net/2 release source code used in 386BSD. After a lawsuit
USL v. BSDi
USL v. BSDi was a lawsuit brought in the United States in 1992 by Unix System Laboratories against Berkeley Software Design, Inc and the Regents of the University of California over intellectual property related to UNIX...

 between UNIX copyright owner at the time Unix System Laboratories
Unix System Laboratories
Unix System Laboratories was originally organized as part of Bell Labs in 1989. USL joined with the UNIX Software Operation, also a Bell Laboratories division, in 1990. It assumed responsibility for Unix development and licensing activities...

 and the University of California, Berkeley
University of California, Berkeley
The University of California, Berkeley , is a teaching and research university established in 1868 and located in Berkeley, California, USA...

, the FreeBSD project re-engineered most of the system using the 4.4BSD-Lite release from Berkeley, which, owing to this lawsuit, had none of the AT&T
AT&T
AT&T Inc. is an American multinational telecommunications corporation headquartered in Whitacre Tower, Dallas, Texas, United States. It is the largest provider of mobile telephony and fixed telephony in the United States, and is also a provider of broadband and subscription television services...

 source code earlier BSD versions had depended upon, making it an unbootable operating system. Following much work, the unencumbered outcome was released as FreeBSD 2.0 in January 1995.

FreeBSD 2.0 featured a revamp of the original Carnegie Mellon University
Carnegie Mellon University
Carnegie Mellon University is a private research university in Pittsburgh, Pennsylvania, United States....

 Mach
Mach (kernel)
Mach is an operating system kernel developed at Carnegie Mellon University to support operating system research, primarily distributed and parallel computation. Although Mach is often mentioned as one of the earliest examples of a microkernel, not all versions of Mach are microkernels...

 virtual memory system, which was optimized for performance under high loads. This release also introduced the FreeBSD Ports
FreeBSD Ports
The FreeBSD Ports collection is a package management system for the FreeBSD operating system, providing an easy and consistent way of installing software packages. As of October 2011, there are over 22,700 ports available in the collection...

 system, which made downloading, building and installing third party software very easy. By 1996 FreeBSD had become popular among commercial and ISP users, powering extremely successful sites like Walnut Creek CD-ROM
Simtel
Simtel is an Internet-based archive of shareware for various operating systems, particularly Microsoft Windows and MS-DOS. The Simtel archive has been available on the public Internet since 1993, when its older ARPANET host was shut down....

 (a huge repository of software that broke several throughput records on the Internet), Yahoo!
Yahoo!
Yahoo! Inc. is an American multinational internet corporation headquartered in Sunnyvale, California, United States. The company is perhaps best known for its web portal, search engine , Yahoo! Directory, Yahoo! Mail, Yahoo! News, Yahoo! Groups, Yahoo! Answers, advertising, online mapping ,...

 and Hotmail
Hotmail
Windows Live Hotmail, formerly known as MSN Hotmail and commonly referred to simply as Hotmail, is a free web-based email service operated by Microsoft as part of its Windows Live group. It was founded by Sabeer Bhatia and Jack Smith and launched in July 1996 as "HoTMaiL". It was one of the first...

. The last release along the 2-STABLE branch was 2.2.8 in November 1998. FreeBSD 3.0 brought many more changes, including the switch to the ELF binary
Executable and Linkable Format
In computing, the Executable and Linkable Format is a common standard file format for executables, object code, shared libraries, and core dumps. First published in the System V Application Binary Interface specification, and later in the Tool Interface Standard, it was quickly accepted among...

 format. Support for SMP
Symmetric multiprocessing
In computing, symmetric multiprocessing involves a multiprocessor computer hardware architecture where two or more identical processors are connected to a single shared main memory and are controlled by a single OS instance. Most common multiprocessor systems today use an SMP architecture...

 systems and the 64-bit Alpha platform were also added. The 3-STABLE branch ended with 3.5.1 in June 2000.

Networking

FreeBSD's TCP/IP stack is based on the 4.2BSD implementation of TCP/IP which greatly contributed to the widespread adoption of these protocols.
FreeBSD also supports IPv6
IPv6
Internet Protocol version 6 is a version of the Internet Protocol . It is designed to succeed the Internet Protocol version 4...

, SCTP, IPSec
IPsec
Internet Protocol Security is a protocol suite for securing Internet Protocol communications by authenticating and encrypting each IP packet of a communication session...

, IPX
IPX
Internetwork Packet Exchange is the OSI-model Network layer protocol in the IPX/SPX protocol stack.The IPX/SPXM protocol stack is supported by Novell's NetWare network operating system. Because of Netware's popularity through the late 1980s into the mid 1990s, IPX became a popular internetworking...

, AppleTalk and wireless networking.

Storage

FreeBSD has several unique features related to storage. Soft updates
Soft updates
In computer file systems, soft updates is an approach to maintaining disk integrity after a crash or power outage. They are an alternative to journaling file systems....

 maintain filesystem integrity in the event of a system crash. The GEOM
GEOM
GEOM is the main storage framework for the FreeBSD operating system. It is available in FreeBSD 5.0 and higher and provides a standardized way to access storage layers. GEOM is modular and allows for geom modules to connect to the framework. For example, the geom_mirror module will provide RAID1 or...

 framework provides features such as RAID
RAID
RAID is a storage technology that combines multiple disk drive components into a logical unit...

 (levels 0, 1, 3 currently), full disk encryption
Full disk encryption
Disk encryption uses disk encryption software or hardware to encrypt every bit of data that goes on a disk or disk volume. Disk encryption prevents unauthorized access to data storage. The term "full disk encryption" is often used to signify that everything on a disk is encrypted, including the...

, and concatenation of drives. Filesystem snapshots allow an image of a filesystem at an instant in time to be efficiently created. Snapshots allow reliable backup of a live filesystem. FreeBSD also provides the ZFS
ZFS
In computing, ZFS is a combined file system and logical volume manager designed by Sun Microsystems. The features of ZFS include data integrity verification against data corruption modes , support for high storage capacities, integration of the concepts of filesystem and volume management,...

 filesystem as an alternative to the normal UFS2 file system.

Security

FreeBSD provides several security-related features including access control list
Access control list
An access control list , with respect to a computer file system, is a list of permissions attached to an object. An ACL specifies which users or system processes are granted access to objects, as well as what operations are allowed on given objects. Each entry in a typical ACL specifies a subject...

s (ACLs), security event auditing, extended file system attributes, fine-grained capabilities and mandatory access control
Mandatory access control
In computer security, mandatory access control refers to a type of access control by which the operating system constrains the ability of a subject or initiator to access or generally perform some sort of operation on an object or target...

s (MAC). These security enhancements were developed by the TrustedBSD project. The project was founded by Robert Watson with the goal of implementing concepts from the Common Criteria
Common Criteria
The Common Criteria for Information Technology Security Evaluation is an international standard for computer security certification...

 for Information Technology Security Evaluation and the Orange Book. This project is ongoing and many of its extensions have been integrated into FreeBSD.

The project has also ported the NSA's FLASK
FLASK
The Flux Advanced Security Kernel is an operating system security architecture that provides flexible support for security policies....

/TE implementation from SELinux to FreeBSD. Other work includes the development of OpenBSM
OpenBSM
OpenBSM is an open source implementation of Sun's Basic Security Module Audit API and file format. BSM, which is a system used for auditing, describes a set of system call and library interfaces for managing audit records as well as a token stream file format that permits extensible and...

, an open source implementation of Sun's Basic Security Module (BSM) API
Application programming interface
An application programming interface is a source code based specification intended to be used as an interface by software components to communicate with each other...

 and audit log file format, which supports an extensive security audit system. This was shipped as part of FreeBSD 6.2. Other infrastructure work in FreeBSD performed as part of the TrustedBSD Project has included SYN cookies
SYN cookies
SYN Cookies are the key element of a technique used to guard against SYN flood attacks. Daniel J. Bernstein, the technique's primary inventor, defines SYN Cookies as "particular choices of initial TCP sequence numbers by TCP servers." In particular, the use of SYN Cookies allows a server to avoid...

, GEOM and OpenPAM.

While most components of the TrustedBSD project are eventually folded into the main sources for FreeBSD, many features, once fully matured, find their way into other operating systems. For example, OpenPAM
OpenPAM
OpenPAM is an implementation of PAM used by FreeBSD, NetBSD, DragonFly BSD and Mac OS X ,and offered as an alternative to Linux PAM in certain Linux distributions....

 and UFS2 have been adopted by NetBSD
NetBSD
NetBSD is a freely available open source version of the Berkeley Software Distribution Unix operating system. It was the second open source BSD descendant to be formally released, after 386BSD, and continues to be actively developed. The NetBSD project is primarily focused on high quality design,...

. Moreover, the TrustedBSD MAC Framework has been adopted by Apple for Mac OS X
Mac OS X
Mac OS X is a series of Unix-based operating systems and graphical user interfaces developed, marketed, and sold by Apple Inc. Since 2002, has been included with all new Macintosh computer systems...

.

Much of this work was sponsored by DARPA.

Portability

FreeBSD has been ported to a variety of processor architectures. The FreeBSD project organizes architectures into tiers that characterize the level of support provided. Tier 1 architectures are mature and fully supported. Tier 2 architectures are undergoing major development. Tier 3 architectures are experimental or are no longer under active development (as is the case of DEC Alpha) and tier 4 architectures have no support at all.

FreeBSD has been ported to the following architectures:
Architecture Support Level Notes
x86 (IA-32)
IA-32
IA-32 , also known as x86-32, i386 or x86, is the CISC instruction-set architecture of Intel's most commercially successful microprocessors, and was first implemented in the Intel 80386 as a 32-bit extension of x86 architecture...

Tier 1 referred to as "i386"
x86-64
X86-64
x86-64 is an extension of the x86 instruction set. It supports vastly larger virtual and physical address spaces than are possible on x86, thereby allowing programmers to conveniently work with much larger data sets. x86-64 also provides 64-bit general purpose registers and numerous other...

Tier 1 referred to as "amd64"
NEC PC-9801 Tier 1 referred to as "pc98"
Sun
Sun Microsystems
Sun Microsystems, Inc. was a company that sold :computers, computer components, :computer software, and :information technology services. Sun was founded on February 24, 1982...

 SPARC
SPARC
SPARC is a RISC instruction set architecture developed by Sun Microsystems and introduced in mid-1987....

Tier 2 Only support 64-bit (V9) architecture
Itanium (IA-64)
Itanium
Itanium is a family of 64-bit Intel microprocessors that implement the Intel Itanium architecture . Intel markets the processors for enterprise servers and high-performance computing systems...

Tier 2
PowerPC
PowerPC
PowerPC is a RISC architecture created by the 1991 Apple–IBM–Motorola alliance, known as AIM...

 and PowerPC/64
Tier 2
ARM
ARM architecture
ARM is a 32-bit reduced instruction set computer instruction set architecture developed by ARM Holdings. It was named the Advanced RISC Machine, and before that, the Acorn RISC Machine. The ARM architecture is the most widely used 32-bit ISA in numbers produced...

Tier 2
MIPS
MIPS architecture
MIPS is a reduced instruction set computer instruction set architecture developed by MIPS Technologies . The early MIPS architectures were 32-bit, and later versions were 64-bit...

Tier 2
Microsoft's
Microsoft
Microsoft Corporation is an American public multinational corporation headquartered in Redmond, Washington, USA that develops, manufactures, licenses, and supports a wide range of products and services predominantly related to computing through its various product divisions...

 Xbox
Xbox
The Xbox is a sixth-generation video game console manufactured by Microsoft. It was released on November 15, 2001 in North America, February 22, 2002 in Japan, and March 14, 2002 in Australia and Europe and is the predecessor to the Xbox 360. It was Microsoft's first foray into the gaming console...

Tier 3
DEC Alpha
DEC Alpha
Alpha, originally known as Alpha AXP, is a 64-bit reduced instruction set computer instruction set architecture developed by Digital Equipment Corporation , designed to replace the 32-bit VAX complex instruction set computer ISA and its implementations. Alpha was implemented in microprocessors...

Tier 3 Support discontinued from FreeBSD 7.0 on

Third-party software

FreeBSD has a repository
Software repository
A software repository is a storage location from which software packages may be retrieved and installed on a computer.- Discussion :Many software publishers and other organizations maintain servers on the Internet for this purpose, either free of charge or for a subscription fee...

 of thousands of applications that are developed by third parties outside of the project itself. (Examples include windowing systems, Internet browsers, email programs, office suites, and so forth.) In general, the project itself does not develop this software, only the framework to allow these programs to be installed (termed the Ports Collection). Applications may be installed either from source, if its licensing terms allow such redistribution (these are called ports), or as compiled binaries if allowed (these are called packages). The Ports Collection supports the latest release on the -CURRENT and -STABLE branches. Older releases are not supported and may or may not work correctly with an up-to-date ports collection.

Ports Collection

Each application in the Ports Collection is installed from source
Source code
In computer science, source code is text written using the format and syntax of the programming language that it is being written in. Such a language is specially designed to facilitate the work of computer programmers, who specify the actions to be performed by a computer mostly by writing source...

. Each port's Makefile automatically fetches the application source code
Source code
In computer science, source code is text written using the format and syntax of the programming language that it is being written in. Such a language is specially designed to facilitate the work of computer programmers, who specify the actions to be performed by a computer mostly by writing source...

, either from a local disk, CD-ROM or via ftp, unpacks it on the system, applies the patches, and compiles
Compiler
A compiler is a computer program that transforms source code written in a programming language into another computer language...

. This method can be very time consuming as compiling large packages can take hours, but the user is able to install a customized program.

Packages system

For most ports, precompiled binary packages also exist. This method is very quick as the whole compilation process is avoided, but the user is not able to install a program with customized compile time options.

Utilities for managing ports and packages

There are many utilities available for managing ports and packages available in GUIs
Graphical user interface
In computing, a graphical user interface is a type of user interface that allows users to interact with electronic devices with images rather than text commands. GUIs can be used in computers, hand-held devices such as MP3 players, portable media players or gaming devices, household appliances and...

 and CLIs
Command-line interface
A command-line interface is a mechanism for interacting with a computer operating system or software by typing commands to perform specific tasks...

. These are some of them:
  • portmaster - A CLI frontend to the ports system, which itself has no dependencies to other ports.
  • portupgrade - Another older CLI frontend to the ports system.
  • portaudit - A tool to check if versions of installed ports are listed as being vulnerable to security issues.
  • barry - A KDE
    KDE
    KDE is an international free software community producing an integrated set of cross-platform applications designed to run on Linux, FreeBSD, Microsoft Windows, Solaris and Mac OS X systems...

     frontend to the ports system
  • bpm - A GUI
    Graphical user interface
    In computing, a graphical user interface is a type of user interface that allows users to interact with electronic devices with images rather than text commands. GUIs can be used in computers, hand-held devices such as MP3 players, portable media players or gaming devices, household appliances and...

     ports collection manager
  • kports - A KDE
    KDE
    KDE is an international free software community producing an integrated set of cross-platform applications designed to run on Linux, FreeBSD, Microsoft Windows, Solaris and Mac OS X systems...

     frontend to the ports system
  • pib - A GUI
    Graphical user interface
    In computing, a graphical user interface is a type of user interface that allows users to interact with electronic devices with images rather than text commands. GUIs can be used in computers, hand-held devices such as MP3 players, portable media players or gaming devices, household appliances and...

     Ports Collection management tool
  • portbrowser - A GUI
    Graphical user interface
    In computing, a graphical user interface is a type of user interface that allows users to interact with electronic devices with images rather than text commands. GUIs can be used in computers, hand-held devices such as MP3 players, portable media players or gaming devices, household appliances and...

     frontend for the ports system

Linux compatibility

Most software that runs on Linux
Linux
Linux is a Unix-like computer operating system assembled under the model of free and open source software development and distribution. The defining component of any Linux system is the Linux kernel, an operating system kernel first released October 5, 1991 by Linus Torvalds...

 can run on FreeBSD without the need for any compatibility layer
Compatibility layer
A compatibility layer is a term that refers to components that allow for non-native support of components.In software engineering, a compatibility layer allows binaries for a legacy or foreign system to run on a host system. This translates system calls for the foreign system into native system...

. FreeBSD nonetheless still provides a compatibility layer
Compatibility layer
A compatibility layer is a term that refers to components that allow for non-native support of components.In software engineering, a compatibility layer allows binaries for a legacy or foreign system to run on a host system. This translates system calls for the foreign system into native system...

 for several other Unix-like
Unix-like
A Unix-like operating system is one that behaves in a manner similar to a Unix system, while not necessarily conforming to or being certified to any version of the Single UNIX Specification....

 operating system
Operating system
An operating system is a set of programs that manage computer hardware resources and provide common services for application software. The operating system is the most important type of system software in a computer system...

s, including Linux. Hence, most Linux binaries can be run on FreeBSD, including some proprietary applications distributed only in binary form. Examples of applications that can use the Linux compatibility layer are StarOffice
StarOffice
StarOffice, known briefly as Oracle Open Office before its discontinuation in 2010, is a proprietary office suite. It was originally developed by StarDivision which was acquired by Sun Microsystems in 1999...

, the Linux version of Firefox, Adobe Acrobat
Adobe Acrobat
Adobe Acrobat is a family of application software developed by Adobe Systems to view, create, manipulate, print and manage files in Portable Document Format . All members of the family, except Adobe Reader , are commercial software, while the latter is available as freeware and can be downloaded...

, RealPlayer
RealPlayer
RealPlayer is a cross-platform media player by RealNetworks that plays a number of multimedia formats including MP3, MPEG-4, QuickTime, Windows Media, and multiple versions of proprietary RealAudio and RealVideo formats.-History:...

, Oracle
Oracle Database
The Oracle Database is an object-relational database management system produced and marketed by Oracle Corporation....

, Mathematica
Mathematica
Mathematica is a computational software program used in scientific, engineering, and mathematical fields and other areas of technical computing...

, Maple
Maple (software)
Maple is a general-purpose commercial computer algebra system. It was first developed in 1980 by the Symbolic Computation Group at the University of Waterloo in Waterloo, Ontario, Canada....

, MATLAB
MATLAB
MATLAB is a numerical computing environment and fourth-generation programming language. Developed by MathWorks, MATLAB allows matrix manipulations, plotting of functions and data, implementation of algorithms, creation of user interfaces, and interfacing with programs written in other languages,...

, WordPerfect
WordPerfect
WordPerfect is a word processing application, now owned by Corel.Bruce Bastian, a Brigham Young University graduate student, and BYU computer science professor Dr. Alan Ashton joined forces to design a word processing system for the city of Orem's Data General Corp. minicomputer system in 1979...

, Skype
Skype
Skype is a software application that allows users to make voice and video calls and chat over the Internet. Calls to other users within the Skype service are free, while calls to both traditional landline telephones and mobile phones can be made for a fee using a debit-based user account system...

, Wolfenstein: Enemy Territory
Wolfenstein: Enemy Territory
Wolfenstein: Enemy Territory is a free and open source multiplayer first-person shooter video game set during World War II...

, Doom 3
Doom 3
Doom 3 is a science fiction horror video game developed by id Software and published by Activision. An example of the first-person shooter genre, Doom 3 was first released for Microsoft Windows on August 3, 2004. The game was later adapted for Linux, as well as being ported by Aspyr Media for Mac...

 and Quake 4
Quake 4
Quake 4 is the fourth title in the series of Quake first-person shooter computer games. The game was developed by Raven Software and published by Activision. Raven Software has collaborated with id Software, the creators and historical developers of preceding Quake games...

  (though some of these applications also have a native version). No noticeable performance penalty over native FreeBSD programs has been noted when running Linux binaries, and, in some cases, these may even perform more smoothly than on Linux. However, the layer is not altogether seamless, and some Linux binaries are unusable or only partially usable on FreeBSD. This is often because the compatibility layer only supports system calls available in the historical Linux kernel 2.4.2. There is support for Linux 2.6.16 system calls, available since and enabled by default since . However, there is currently no support for running 64-bit Linux binaries.

Governance structure

The FreeBSD Project is run by FreeBSD committers, or developers who have CVS
Concurrent Versions System
The Concurrent Versions System , also known as the Concurrent Versioning System, is a client-server free software revision control system in the field of software development. Version control system software keeps track of all work and all changes in a set of files, and allows several developers ...

/SVN commit access. There are several kinds of committers, including source committers (base operating system), doc committers (documentation and web site authors) and ports (third party application porting and infrastructure). Every two years the FreeBSD committers select a 9-member FreeBSD Core Team who are responsible for overall project direction, setting and enforcing project rules and approving new "commit bits", or the granting of CVS/SVN commit access. A number of responsibilities are officially assigned to other development teams by the FreeBSD Core Team, including responsibility for security advisories (the Security Officer Team), release engineering
Release engineering
Release engineering, frequently abbreviated as "releng", is a sub-discipline in software engineering concerned with the compilation, assembly, and delivery of source code into finished products or other software components. Associated with the software release life cycle, it is often said that...

 (the Release Engineering Team) and managing the ports collection (the Port Manager team). Developers may give up their commit rights to retire or for "safe-keeping" after a period of a year or more of inactivity, although commit rights will generally be restored on request. Under rare circumstances commit rights may be removed by Core Team vote as a result of repeated violation of project rules and standards. The FreeBSD Project is unusual among open source projects in having developers who have worked with its source base for over 25 years, owing to the involvement of a number of past University of California developers who worked on BSD at the Computer Systems Research Group
Computer Systems Research Group
The Computer Systems Research Group was a research group at the University of California, Berkeley that was dedicated to enhancing AT&T Unix operating system and funded by Defense Advanced Research Projects Agency.- History :...

.

Branches

FreeBSD developers
Software developer
A software developer is a person concerned with facets of the software development process. Their work includes researching, designing, developing, and testing software. A software developer may take part in design, computer programming, or software project management...

 maintain at least two branches of simultaneous development. The -CURRENT branch always represents the "bleeding edge
Bleeding edge
Bleeding edge technology is technology that is so new that it could have a high risk of being unreliable and may incur greater expense in order to use it...

" of FreeBSD development. A -STABLE branch of FreeBSD is created for each major version number, from which -RELEASE are cut about once every 4–6 months. If a feature is sufficiently stable and mature it will likely be backported (MFC or Merge from CURRENT in FreeBSD developer slang) to the -STABLE branch. FreeBSD's development model is further described in an article by Niklas Saers.

Foundation

FreeBSD development is supported in part by the FreeBSD Foundation. The foundation is a non-profit organization that accepts donations to fund FreeBSD development. Such funding has been used to sponsor developers for specific activities, purchase hardware and network infrastructure, provide travel grants to developer summits, and provide legal support to the FreeBSD project.

License

FreeBSD is released under a variety of open source licenses. The kernel code and most newly created code is released under the two-clause BSD license which allows everyone to use and redistribute FreeBSD as they wish. There are parts released under three- and four-clause BSD licenses, as well as Beerware
Beerware
Beerware is a somewhat tongue-in-cheek term for software released under a very relaxed license. It provides the end user with the right to use a particular program .-Description:...

 license. Some device drivers include a binary blob
Binary blob
In the free software community, binary blob is a pejorative term for an object file loaded into the kernel of a open source operating system without publicly available source code...

, such as the Atheros
Atheros
Qualcomm Atheros is a developer of semiconductors for network communications, particularly wireless chipsets. Founded under the name Atheros in 1998 by experts in signal processing from Stanford University, the University of California, Berkeley and the private industry, it became a public company...

 HAL of FreeBSD versions before 7.2. Some of the code contributed by other projects is licensed under GPL
GNU General Public License
The GNU General Public License is the most widely used free software license, originally written by Richard Stallman for the GNU Project....

, LGPL
GNU Lesser General Public License
The GNU Lesser General Public License or LGPL is a free software license published by the Free Software Foundation . It was designed as a compromise between the strong-copyleft GNU General Public License or GPL and permissive licenses such as the BSD licenses and the MIT License...

, ISC or CDDL
Common Development and Distribution License
Common Development and Distribution License is a free software license, produced by Sun Microsystems, based on the Mozilla Public License , version 1.1....

. All the code licensed under GPL and CDDL is clearly separated from the code under liberal licenses, to make it easy for users such as embedded device manufacturers to use only permissive free software licenses. ClangBSD aims to replace some GPL dependencies in the FreeBSD base system by replacing the GNU compiler collection
GNU Compiler Collection
The GNU Compiler Collection is a compiler system produced by the GNU Project supporting various programming languages. GCC is a key component of the GNU toolchain...

 with the BSD-licenced LLVM/Clang
Clang
Clang is a compiler front end for the C, C++, Objective-C, and Objective-C++ programming languages. It uses the Low Level Virtual Machine as its back end, and Clang has been part of LLVM releases since LLVM 2.6....

 compiler. ClangBSD became self-hosting on April 16, 2010, an important landmark for further independent development.

Logo

For many years FreeBSD's logo was the generic BSD daemon
BSD Daemon
The BSD daemon, nicknamed Beastie, is the generic mascot of BSD operating systems.-Overview:The BSD daemon is named after a software daemon, a computer program found on Unix-like operating systems, which through a play on words takes the cartoon shape of a mythical demon. The BSD daemon's nickname...

, also called Beastie, a slurred phonetic pronunciation of BSD. First appearing in 1976 on UNIX T-shirts purchased by Bell Labs
Bell Labs
Bell Laboratories is the research and development subsidiary of the French-owned Alcatel-Lucent and previously of the American Telephone & Telegraph Company , half-owned through its Western Electric manufacturing subsidiary.Bell Laboratories operates its...

, the more popular versions of the BSD daemon were drawn by animation director John Lasseter
John Lasseter
John Alan Lasseter is an American animator, director and the chief creative officer at Pixar and Walt Disney Animation Studios. He is also currently the Principal Creative Advisor for Walt Disney Imagineering....

 beginning in 1984. Several FreeBSD-specific versions were later drawn by Tatsumi Hosokawa. Through the years Beastie became both beloved and criticized as perhaps inappropriate for corporate and mass market exposure. Moreover it was not unique to FreeBSD. In lithographic terms, the Lasseter graphic is not line art
Line art
Line art is any image that consists of distinct straight and curved lines placed against a background, without gradations in shade or hue to represent two-dimensional or three-dimensional objects...

 and often requires a screened, four colour photo offset printing process for faithful reproduction on physical surfaces such as paper. Moreover, the BSD daemon was thought to be too graphically detailed for smooth size scaling and aesthetically over dependent upon multiple colour gradations, making it hard to reliably reproduce as a simple, standardized logo in only two or three colours, much less in monochrome. Because of these worries, a competition was held and a new logo designed by Anton K. Gural, still echoing the BSD daemon, was released on October 8, 2005. Meanwhile Lasseter's much known take on the BSD daemon carries forth as the official mascot of the FreeBSD Project.

Derivatives

There are a number of software distributions based on FreeBSD including:
  • PC-BSD
    PC-BSD
    PC-BSD is a Unix-like, desktop-oriented operating system based on FreeBSD. It aims to be easy to install by using a graphical installation program, and easy and ready-to-use immediately by providing KDE SC as the pre-installed graphical user interface. PC-BSD provides official binary nVidia and...

     (aimed at home users and workstations)
  • DesktopBSD
    DesktopBSD
    DesktopBSD is a Unix-derivative, desktop-oriented operating system based on FreeBSD. Its goal is to combine the stability of FreeBSD with the ease-of-use of KDE, which is the default graphical user interface.- History and development :...

     (aimed at home users and workstations)
  • FreeSBIE
    FreeSBIE
    FreeSBIE is a live CD, an operating system that is able to load directly from a bootable CD with no installation process or hard disk. It is based on the FreeBSD operating system. Its name is a pun on frisbee. Currently, FreeSBIE uses Xfce and Fluxbox....

     (live CD
    Live CD
    A live CD, live DVD, or live disc is a CD or DVD containing a bootable computer operating system. Live CDs are unique in that they have the ability to run a complete, modern operating system on a computer lacking mutable secondary storage, such as a hard disk drive...

    )
  • Frenzy (live CD
    Live CD
    A live CD, live DVD, or live disc is a CD or DVD containing a bootable computer operating system. Live CDs are unique in that they have the ability to run a complete, modern operating system on a computer lacking mutable secondary storage, such as a hard disk drive...

    )
  • GhostBSD
    GhostBSD
    GhostBSD is a free Unix-like operating system based on FreeBSD and used as a live CD and a hard disk install. The Developers Eric Turgeon and Nahuel Sanchez founded this software-project in 2010 after they met in the official FreeBSD Forum. They both agreed on the GNOME-desktop environment.-...

     (Gnome-based live CD)
  • m0n0wall
    M0n0wall
    m0n0wall is an embedded firewall distribution of FreeBSD, one of the BSD operating system descendants. It provides a small image which can be put on Compact Flash cards as well as on CDROMs and hard disks. It runs on a number of embedded platforms and generic PCs...

     (firewall)
  • pfSense
    PfSense
    pfSense is an open source firewall/router distribution based on FreeBSD. pfSense is meant to be installed on a personal computer and is noted for its reliability and offering features often only found in expensive commercial firewalls. It can be configured and upgraded through a web-based...

     (firewall)
  • FreeNAS
    FreeNAS
    FreeNAS is a free network-attached storage server, supporting: CIFS , FTP, NFS, rsync, AFP protocols, iSCSI, S.M.A.R.T., local user authentication, and software RAID , with a web-based configuration interface. FreeNAS takes less than 64 MB once installed on CompactFlash, hard drive or USB flash...

     (for network attached storage)
  • AuthServ (for network servers & storage)


All these distributions have no or only minor changes when compared with the original FreeBSD base system. The main difference to the original FreeBSD is that they come with pre-installed and pre-configured software for specific use cases. This can be compared with Linux
Linux
Linux is a Unix-like computer operating system assembled under the model of free and open source software development and distribution. The defining component of any Linux system is the Linux kernel, an operating system kernel first released October 5, 1991 by Linus Torvalds...

 distributions, which are all binary compatible because they use the same kernel and also use the same basic tools, compilers and libraries, while coming with different applications, configurations and branding.

Besides these distributions there is DragonFly BSD
DragonFly BSD
DragonFly BSD is a free Unix-like operating system created as a fork of FreeBSD 4.8. Matthew Dillon, an Amiga developer in the late 1980s and early 1990s and a FreeBSD developer between 1994 and 2003, began work on DragonFly BSD in June 2003 and announced it on the FreeBSD mailing lists on July...

, a fork from FreeBSD 4.8 aiming for a different multiprocessor synchronization strategy than the one chosen for FreeBSD 5 and development of some microkernel
Microkernel
In computer science, a microkernel is the near-minimum amount of software that can provide the mechanisms needed to implement an operating system . These mechanisms include low-level address space management, thread management, and inter-process communication...

 features. It does not aim to stay compatible with FreeBSD and has huge differences in the kernel and basic userland.

A wide variety of products are directly or indirectly based on FreeBSD. Examples of embedded devices based on FreeBSD include:
  • Citrix Netscalers
  • F5 Networks
    F5 Networks
    F5 Networks, Inc. is a networking appliances company. It is headquartered in Seattle, Washington and has development and marketing offices worldwide. It originally manufactured and sold some of the very first load balancing products...

    's 3DNS version 3 global traffic manager and EDGE-FX version 1 web cache (NB These are now end of life with 3DNS functionality being moved to the Linux based BIGIP Platform)
  • Ironport
    IronPort
    IronPort Systems, Inc., headquartered in San Bruno, California, was a company that designed and sold products and services that protect enterprises against Internet threats. It was best known for IronPort AntiSpam, the SenderBase email reputation service, and email security appliances...

     network security appliances
  • Junos
    Junos
    Juniper Junos is the software or the network operating system used in Juniper Networks hardware systems. It is an operating system that is used in Juniper's routing, switching and security devices. Juniper offers a Software Development Kit to partners and customers to allow additional customization...

     network operating system by Juniper Networks
    Juniper Networks
    Juniper Networks is an information technology and computer networking products multinational company, founded in 1996. It is head quartered in Sunnyvale, California, USA. The company designs and sells high-performance Internet Protocol network products and services...

     used in their routers, switches and security devices
  • KACE Networks
    KACE Networks
    Dell KACE specializes in delivering appliance-based computer systems management solutions which allow organizations to manage IT assets. They also provide software for security, application virtualization, and systems management products...

    's KBOX 1000 & 2000 Series Appliances and the Virtual KBOX Appliance
  • nCircle's
    NCircle Entertainment
    NCircle Entertainment is an entertainment content distributor that specializes in children's programming.NCircle Entertainment is a division of Alliance Entertainment Corporation , which is the largest single source of home entertainment....

     IP360
  • NetApp's Data ONTAP GX (only as a loader for proprietary kernel-space module of ONTAP GX and 8.x)
  • Netasq
    Netasq
    Founded in 1998, Netasq is an information security company based in France. It has designed and markets Unified Threat Management solutions which combine network and application firewall with embedded anti-virus, anti-spam, VPN and content filtering functionality with an integrated real-time...

     security appliances
  • Nokia
    Nokia
    Nokia Corporation is a Finnish multinational communications corporation that is headquartered in Keilaniemi, Espoo, a city neighbouring Finland's capital Helsinki...

    's firewall operating system
    Nokia IPSO
    Check Point IPSO is the operating system for the 'Check Point firewall' appliance and other security devices, based on FreeBSD, with numerous hardening features applied.....

  • Panasas
    Panasas
    Panasas, Inc., is a private, multinational computer storage company based in Sunnyvale, California. It specializes in high-performance scale-out network-attached storage optimized for Linux clusters.- History :...

    's and Isilon Systems
    Isilon Systems
    Isilon Systems, a division of EMC, is headquartered in Seattle, Washington, USA and sells clustered storage systems and software for digital content and other unstructured data, which includes but is not limited to video, audio, digital images, computer models, PDF files, scanned information, and...

    's cluster storage operating systems
  • The PlayStation 3
    PlayStation 3
    The is the third home video game console produced by Sony Computer Entertainment and the successor to the PlayStation 2 as part of the PlayStation series. The PlayStation 3 competes with Microsoft's Xbox 360 and Nintendo's Wii as part of the seventh generation of video game consoles...

     video game console.
  • Sophos
    Sophos
    Sophos is a developer and vendor of security software and hardware, including anti-virus, anti-spyware, anti-spam, network access control, encryption software and data loss prevention for desktops, servers, email systems and other network gateways....

    's Email Appliance
  • St. Bernard Software
    St. Bernard Software
    St. Bernard Software, Inc., is a computer security company based out of San Diego, California. It specializes in internet protection and web filtering.-Awards:* SC Magazine 5 Star Rating for iPrism 30h Web Filter, April 2008...

     iPrism web filtering appliances
  • Panasonic
    Panasonic
    Panasonic is an international brand name for Japanese electric products manufacturer Panasonic Corporation, which was formerly known as Matsushita Electric Industrial Co., Ltd...

    's 2010 TV models (PDP
    Plasma display
    A plasma display panel is a type of flat panel display common to large TV displays or larger. They are called "plasma" displays because the technology utilizes small cells containing electrically charged ionized gases, or what are in essence chambers more commonly known as fluorescent...

     and LCD)
  • Blue Coat
    Blue Coat Systems
    Blue Coat Systems Inc. is a network security and network management company based in Sunnyvale, California, United States.It identifies itself as an application delivery network specialist...

    's ProxySG WAN acceleration appliance is partially derived from FreeBSD


Other operating systems such as Linux
Linux
Linux is a Unix-like computer operating system assembled under the model of free and open source software development and distribution. The defining component of any Linux system is the Linux kernel, an operating system kernel first released October 5, 1991 by Linus Torvalds...

 and the RTOS
Real-time computing
In computer science, real-time computing , or reactive computing, is the study of hardware and software systems that are subject to a "real-time constraint"— e.g. operational deadlines from event to system response. Real-time programs must guarantee response within strict time constraints...

 VxWorks
VxWorks
VxWorks is a real-time operating system developed as proprietary software by Wind River Systems of Alameda, California, USA. First released in 1987, VxWorks is designed for use in embedded systems.- History :...

 contain code that originated in FreeBSD. Debian
Debian
Debian is a computer operating system composed of software packages released as free and open source software primarily under the GNU General Public License along with other free software licenses. Debian GNU/Linux, which includes the GNU OS tools and Linux kernel, is a popular and influential...

, known primarily for using the Linux kernel, also maintains GNU/kFreeBSD, combining the GNU
GNU
GNU is a Unix-like computer operating system developed by the GNU project, ultimately aiming to be a "complete Unix-compatible software system"...

 userspace and C library
GNU C Library
The GNU C Library, commonly known as glibc, is the C standard library released by the GNU Project. Originally written by the Free Software Foundation for the GNU operating system, the library's development has been overseen by a committee since 2001, with Ulrich Drepper from Red Hat as the lead...

 with the FreeBSD kernel. Darwin
Darwin (operating system)
Darwin is an open source POSIX-compliant computer operating system released by Apple Inc. in 2000. It is composed of code developed by Apple, as well as code derived from NeXTSTEP, BSD, and other free software projects....

, the core of Apple Mac OS X
Mac OS X
Mac OS X is a series of Unix-based operating systems and graphical user interfaces developed, marketed, and sold by Apple Inc. Since 2002, has been included with all new Macintosh computer systems...

, borrows FreeBSD’s virtual file system, network stack, and components of its userspace. The OpenDarwin project (now defunct), a spin-off of Apple’s Darwin operating system, also included substantial FreeBSD code. Thanks to the permissive FreeBSD License, much of FreeBSD now also forms the basis of Apple Mac OS X and Mac OS X Server
Mac OS X Server
Mac OS X Server is a Unix server operating system from Apple Inc. The server edition of Mac OS X is architecturally identical to its desktop counterpart, except that it includes work group management and administration software tools...

.

sysinstall

The sysinstall
Sysinstall
Sysinstall, also known as sysinstall, is the graphical FreeBSD system installation and configuration tool. It was written in C by Jordan Hubbard, is curses based and first appeared in FreeBSD 2.0....

 utility is the installation application provided by the FreeBSD Project. It uses a text user interface
Text user interface
TUI short for: Text User Interface or Textual User Interface , is a retronym that was coined sometime after the invention of graphical user interfaces, to distinguish them from text-based user interfaces...

, and is divided into a number of menus and screens that can be used to configure and control the installation process. It can also be used to install Ports and Packages as an alternative to the command-line interface
Command-line interface
A command-line interface is a mechanism for interacting with a computer operating system or software by typing commands to perform specific tasks...

. As of FreeBSD 9, sysinstall has been replaced by a new installer.

finstall

The finstall utility aims to create a user-friendly graphical installer for FreeBSD & FreeBSD-derived systems, however development of finstall has stalled.

bsdinstall

The bsdinstall utility is a "a lightweight replacement for sysinstall", and is intended to replace the sysinstall utility in FreeBSD 9.0. bsdinstall is intended to be scriptable and extendable, with no dependencies outside the base system.

FreeBSD 2

2.0-RELEASE was announced on November 22, 1994. The final release of FreeBSD 2, 2.2.8-RELEASE, was announced on November 29, 1998. FreeBSD 2.0 was the first FreeBSD to be claimed legally free of AT&T UNIX code with approval of Novell. It was the first version to be widely used at the beginnings of the spread of Internet servers.

FreeBSD 3

FreeBSD 3.0-RELEASE was announced on October 16, 1998. The final release, 3.5-RELEASE, was announced on June 24, 2000. FreeBSD 3.0 was the first branch able to support symmetric multiprocessing
Symmetric multiprocessing
In computing, symmetric multiprocessing involves a multiprocessor computer hardware architecture where two or more identical processors are connected to a single shared main memory and are controlled by a single OS instance. Most common multiprocessor systems today use an SMP architecture...

 (SMP) systems, using a Giant lock
Giant lock
In operating systems, a giant lock, also known as a big-lock or kernel-lock, is a lock which may be used in the kernel to provide the concurrency control required by symmetric multiprocessing systems....

. USB support was first introduced with FreeBSD 3.1, and the first Gigabit
Gigabit
The gigabit is a multiple of the unit bit for digital information or computer storage. The prefix giga is defined in the International System of Units as a multiplier of 109 , and therefore...

 network cards were supported in 3.2-RELEASE.

FreeBSD 4

4.0-RELEASE appeared in March 2000 and the last 4-STABLE branch release was 4.11 in January 2005 supported until January 31, 2007. FreeBSD 4 was lauded for its stability and was a favorite operating system for ISPs and web hosting providers
Web hosting service
A web hosting service is a type of Internet hosting service that allows individuals and organizations to make their own website accessible via the World Wide Web. Web hosts are companies that provide space on a server they own or lease for use by their clients as well as providing Internet...

 during the first dot-com bubble
Dot-com bubble
The dot-com bubble was a speculative bubble covering roughly 1995–2000 during which stock markets in industrialized nations saw their equity value rise rapidly from growth in the more...

, and is widely regarded as one of the most stable and high performance operating systems of the whole Unix lineage. Among the new features of FreeBSD 4, kqueue(2)
Kqueue
Kqueue is a scalable event notification interface introduced in FreeBSD 4.1, also supported in NetBSD, OpenBSD, DragonflyBSD, and Mac OS X. It's the foundation of Apple's Grand Central Dispatch....

 was introduced (which is now part of other major BSD systems).

FreeBSD 5

After almost three years of development, the first 5.0-RELEASE in January 2003 was widely anticipated, featuring support for advanced multiprocessor and application threading, and for the UltraSPARC
UltraSPARC
The UltraSPARC is a microprocessor developed by Sun Microsystems who is now a part of Oracle Corporation and fabricated by Texas Instruments that implements the SPARC V9 instruction set architecture . It was introduced in mid-1995. It was the first microprocessor from Sun Microsystems to implement...

 and IA-64 platforms. The first 5-STABLE release was 5.3 (5.0 through 5.2.1 were cut from -CURRENT). The last release from the 5-STABLE branch was 5.5 in May 2006.

The largest architectural development in FreeBSD 5 was a major change in the low-level kernel locking mechanisms to enable better symmetric multi-processor (SMP) support. This released much of the kernel from the MP lock, which is sometimes called the Giant lock
Giant lock
In operating systems, a giant lock, also known as a big-lock or kernel-lock, is a lock which may be used in the kernel to provide the concurrency control required by symmetric multiprocessing systems....

. More than one process could now execute in kernel mode at the same time. Other major changes included an M:N native threading implementation called Kernel Scheduled Entities
Kernel Scheduled Entities
Kernel Scheduled Entities, or KSE, is a kernel-supported threading system found in FreeBSD, which allows a single process to have multiple kernel-level threads....

. In principle this is similar to Scheduler Activations
Scheduler activations
Scheduler Activations is a threading mechanism that, when implemented in an operating system's process scheduler, provides kernel-level thread functionality with user-level thread flexibility and performance...

. Starting with FreeBSD 5.3, KSE was the default threading implementation until it was replaced with a 1:1 implementation in FreeBSD 7.0.

FreeBSD 5 also significantly changed the block I/O layer by implementing the GEOM
GEOM
GEOM is the main storage framework for the FreeBSD operating system. It is available in FreeBSD 5.0 and higher and provides a standardized way to access storage layers. GEOM is modular and allows for geom modules to connect to the framework. For example, the geom_mirror module will provide RAID1 or...

 modular disk I/O request transformation framework contributed by Poul-Henning Kamp
Poul-Henning Kamp
Poul-Henning Kamp is a Danish FreeBSD developer, responsible for implementation of the widely used MD5 password hash algorithm, a vast quantity of systems code, including the FreeBSD GEOM storage layer, GBDE cryptographic storage transform, part of the UFS2 file system implementation, FreeBSD...

. GEOM enables the simple creation of many kinds of functionality, such as mirroring (gmirror) and encryption (GBDE
GBDE
GBDE, standing for GEOM Based Disk Encryption, is a block device-layer disk encryption system written for FreeBSD, initially introduced in version 5.0. It is based on the GEOM disk framework. GBDE was designed and implemented by Poul-Henning Kamp and Network Associates Inc...

 and GELI
Geli (software)
geli is a block device-layer disk encryption system written for FreeBSD, introduced in version 6.0. It utilises the GEOM disk framework. It was designed and implemented by Pawel Jakub Dawidek.- Design details :...

). This work was supported through sponsorship by DARPA.

While the early versions from the 5.x were not much more than developer previews, with pronounced instability, the 5.4 and 5.5 releases of FreeBSD confirmed the technologies introduced in the FreeBSD 5.x branch had a future in highly stable and high-performing releases.

FreeBSD 6

FreeBSD 6.0 was released on November 4, 2005. The final FreeBSD 6 release was 6.4, on November 11, 2008. These versions continue work on SMP and threading optimization along with more work on advanced 802.11
IEEE 802.11
IEEE 802.11 is a set of standards for implementing wireless local area network computer communication in the 2.4, 3.6 and 5 GHz frequency bands. They are created and maintained by the IEEE LAN/MAN Standards Committee . The base version of the standard IEEE 802.11-2007 has had subsequent...

 functionality, TrustedBSD security event auditing, significant network stack performance enhancements, a fully preemptive kernel and support for hardware performance counters (HWPMC). The main accomplishments of these releases include removal of the Giant lock from VFS
Virtual file system
A virtual file system or virtual filesystem switch is an abstraction layer on top of a more concrete file system. The purpose of a VFS is to allow client applications to access different types of concrete file systems in a uniform way...

, implementation of a better-performing optional libthr library with 1:1 threading and the addition of a Basic Security Module (BSM) audit implementation called OpenBSM
OpenBSM
OpenBSM is an open source implementation of Sun's Basic Security Module Audit API and file format. BSM, which is a system used for auditing, describes a set of system call and library interfaces for managing audit records as well as a token stream file format that permits extensible and...

, which was created by the TrustedBSD Project (based on the BSM implementation found in Apple's open source Darwin
Darwin (operating system)
Darwin is an open source POSIX-compliant computer operating system released by Apple Inc. in 2000. It is composed of code developed by Apple, as well as code derived from NeXTSTEP, BSD, and other free software projects....

) and released under a BSD-style license
BSD licenses
BSD licenses are a family of permissive free software licenses. The original license was used for the Berkeley Software Distribution , a Unix-like operating system after which it is named....

.

FreeBSD 7

FreeBSD 7.0 was released on 27 February 2008. The most recent and final FreeBSD 7 release was 7.4, on February 24, 2011. New features include SCTP, UFS
Unix File System
The Unix file system is a file system used by many Unix and Unix-like operating systems. It is also called the Berkeley Fast File System, the BSD Fast File System or FFS...

 journaling
Journaling file system
A journaling file system is a file system that keeps track of the changes that will be made in a journal before committing them to the main file system...

, an experimental port of Sun
Sun Microsystems
Sun Microsystems, Inc. was a company that sold :computers, computer components, :computer software, and :information technology services. Sun was founded on February 24, 1982...

's ZFS
ZFS
In computing, ZFS is a combined file system and logical volume manager designed by Sun Microsystems. The features of ZFS include data integrity verification against data corruption modes , support for high storage capacities, integration of the concepts of filesystem and volume management,...

 file system, GCC4
GNU Compiler Collection
The GNU Compiler Collection is a compiler system produced by the GNU Project supporting various programming languages. GCC is a key component of the GNU toolchain...

, improved support for the ARM
ARM architecture
ARM is a 32-bit reduced instruction set computer instruction set architecture developed by ARM Holdings. It was named the Advanced RISC Machine, and before that, the Acorn RISC Machine. The ARM architecture is the most widely used 32-bit ISA in numbers produced...

 architecture, jemalloc (a memory allocator
Malloc
C dynamic memory allocation refers to performing dynamic memory allocation in the C via a group of functions in the C standard library, namely malloc, realloc, calloc and free....

 optimized for parallel computation, which was ported to Firefox 3
Mozilla Firefox 3
Mozilla Firefox 3.0 is a version of the Firefox web browser released on June 17, 2008 by the Mozilla Corporation.Firefox 3.0 uses version 1.9 of the Gecko layout engine for displaying web pages. This version fixes many bugs, improves standard compliance, and implements many new web APIs compared to...

), and major updates and optimizations relating to network, audio, and SMP
Symmetric multiprocessing
In computing, symmetric multiprocessing involves a multiprocessor computer hardware architecture where two or more identical processors are connected to a single shared main memory and are controlled by a single OS instance. Most common multiprocessor systems today use an SMP architecture...

 performance. Benchmarks have shown significant speed improvements over previous FreeBSD releases as well as Linux. The new ULE scheduler
ULE scheduler
ULE is the default scheduler for the FreeBSD operating system for the i386 and AMD64 architectures. It was introduced in FreeBSD version 5, but it was disabled by default for a time in favor of the traditional BSD scheduler until it reached maturity. The BSD scheduler does not make full use of...

 has seen much improvement but a decision was made to ship the 7.0 release with the older 4BSD scheduler, leaving ULE as a kernel compile-time tunable. In FreeBSD 7.1 ULE was the default for the i386 and AMD64 architectures.

Starting from version 7.1, DTrace
DTrace
DTrace is a comprehensive dynamic tracing framework created by Sun Microsystems for troubleshooting kernel and application problems on production systems in real time...

 was also integrated, and FreeBSD 7.2 brought support for multi-IPv4/IPv6 jails
FreeBSD Jail
The FreeBSD jail mechanism is an implementation of operating system-level virtualization that allows administrators to partition a FreeBSD-based computer system into several independent mini-systems called jails....

.

Code supporting the DEC Alpha
DEC Alpha
Alpha, originally known as Alpha AXP, is a 64-bit reduced instruction set computer instruction set architecture developed by Digital Equipment Corporation , designed to replace the 32-bit VAX complex instruction set computer ISA and its implementations. Alpha was implemented in microprocessors...

 architecture (supported since FreeBSD 4.0) was removed in FreeBSD 7.0.

FreeBSD 8

FreeBSD 8.0 was formally released on November 25, 2009. FreeBSD 8.2 is the latest stable release of FreeBSD, having been branched
Branching (software)
Branching, in revision control and software configuration management, is the duplication of an object under revision control so that modifications can happen in parallel along both branches....

 from the trunk in December 2010. It features superpages, Xen
Xen
Xen is a virtual-machine monitor providing services that allow multiple computer operating systems to execute on the same computer hardware concurrently....

 DomU support, network stack virtualization, stack-smashing protection
Stack-smashing protection
Buffer overflow protection refers to various techniques used during software development to enhance the security of executable programs by detecting buffer overflows on stack-allocated variables as they occur and preventing them from becoming serious security vulnerabilities...

, TTY layer rewrite, much improved ZFS
ZFS
In computing, ZFS is a combined file system and logical volume manager designed by Sun Microsystems. The features of ZFS include data integrity verification against data corruption modes , support for high storage capacities, integration of the concepts of filesystem and volume management,...

 support, a new USB stack with USB 3.0 and xHCI support added in FreeBSD 8.2, multicast
Multicast
In computer networking, multicast is the delivery of a message or information to a group of destination computers simultaneously in a single transmission from the source creating copies automatically in other network elements, such as routers, only when the topology of the network requires...

 updates including IGMPv3
Internet Group Management Protocol
The Internet Group Management Protocol is a communications protocol used by hosts and adjacent routers on IP networks to establish multicast group memberships....

, and rewritten NFS client/server introducing NFSv4, and AES
AES instruction set
Advanced Encryption Standard Instruction Set is an extension to the x86 instruction set architecture for microprocessors from Intel and AMD proposed by Intel in March 2008...

 acceleration on supported Intel CPUs (added in FreeBSD 8.2). Inclusion of improved device mmap extensions enables implementation of a 64-bit Nvidia display driver for the x86-64 platform. FreeBSD 8.2 was formally released on February 24, 2011.

FreeBSD 9

, "bleeding edge" development occurs on -CURRENT, the trunk
Trunk (software)
In the field of software development, trunk refers to the unnamed branch of a file tree under revision control. The trunk is usually meant to be the base of a project on which development progresses. If developers are working exclusively on the trunk, it always contains the latest cutting-edge...

 version of the operating system, which will result in a future version named FreeBSD 9. Until FreeBSD 8.0 was released, the trunk was updated with only conservative changes.

Timeline

The timeline shows that the span of a single release generation of FreeBSD lasts around 5 years. Since the FreeBSD project makes effort for binary backward (and limited forward) compatibility within the same release generation, this allows users 5+ years of support, with trivial-to-easy upgrading within the release generation.

See also

  • BAPP
    BAPP
    The acronym BAPP refers to a set of open-source software programs commonly used together to run dynamic web sites or servers:*BSD, family of operating systems;*Apache, the web server;...

     - BSD + Apache + PostgreSQL + Perl/PHP/Python
  • BSD descendants
  • Commercial products based on FreeBSD
    Commercial products based on FreeBSD
    There are a number of commercial products based on FreeBSD. Information about these products and the version of FreeBSD they are based on is often difficult to come by, since this fact is not widely publicised.- Examples :...

  • Comparison of BSD operating systems
    Comparison of BSD operating systems
    There are a number of Unix-like operating systems based on or descended from the Berkeley Software Distribution 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...

  • Comparison of operating systems
    Comparison of operating systems
    These tables compare general and technical information for a number of widely used and currently available operating systems.Because of the large number and variety of available Linux distributions, they are all grouped under a single entry; see comparison of Linux distributions for a detailed...

  • Comparison of operating system kernels
  • Darwin (operating system)
    Darwin (operating system)
    Darwin is an open source POSIX-compliant computer operating system released by Apple Inc. in 2000. It is composed of code developed by Apple, as well as code derived from NeXTSTEP, BSD, and other free software projects....

     - a UNIX-like
    Unix-like
    A Unix-like operating system is one that behaves in a manner similar to a Unix system, while not necessarily conforming to or being certified to any version of the Single UNIX Specification....

     computer operating system released by Apple Inc and based largely on BSD.
  • DragonFly BSD
    DragonFly BSD
    DragonFly BSD is a free Unix-like operating system created as a fork of FreeBSD 4.8. Matthew Dillon, an Amiga developer in the late 1980s and early 1990s and a FreeBSD developer between 1994 and 2003, began work on DragonFly BSD in June 2003 and announced it on the FreeBSD mailing lists on July...

    , a fork of FreeBSD.
  • FreeBSD Documentation License
    FreeBSD Documentation License
    The FreeBSD Documentation License is the license that covers most of the documentation for the FreeBSD operating system.The license is very similar to the 2-clause Simplified BSD License used by the rest of FreeBSD, however, it makes the meanings of "source code" and "compile" less ambiguous in the...

  • FreeBSD Jail
    FreeBSD Jail
    The FreeBSD jail mechanism is an implementation of operating system-level virtualization that allows administrators to partition a FreeBSD-based computer system into several independent mini-systems called jails....

  • FreeBSD Ports
    FreeBSD Ports
    The FreeBSD Ports collection is a package management system for the FreeBSD operating system, providing an easy and consistent way of installing software packages. As of October 2011, there are over 22,700 ports available in the collection...

  • GEOM
    GEOM
    GEOM is the main storage framework for the FreeBSD operating system. It is available in FreeBSD 5.0 and higher and provides a standardized way to access storage layers. GEOM is modular and allows for geom modules to connect to the framework. For example, the geom_mirror module will provide RAID1 or...

  • Jordan Hubbard
    Jordan Hubbard
    Jordan K. Hubbard is a long-time open source developer, authoring software like the Ardent Window Manager and various other open source tools and libraries before finally co-founding the FreeBSD project. He started the FreeBSD project in 1993 with Nate Williams and Rodney W. Grimes, also creating...

  • Marshall Kirk McKusick
    Marshall Kirk McKusick
    Marshall Kirk McKusick is a computer scientist, known for his extensive work on BSD, from the 1980s to FreeBSD in the present day. He was president of the USENIX Association from 1990 to 1992 and again from 2002 to 2004, and still serves on the board. He is also on the editorial board of...

  • NetBSD
    NetBSD
    NetBSD is a freely available open source version of the Berkeley Software Distribution Unix operating system. It was the second open source BSD descendant to be formally released, after 386BSD, and continues to be actively developed. The NetBSD project is primarily focused on high quality design,...

    , another major freely licensed, open-source BSD derivative.
  • OpenBSD
    OpenBSD
    OpenBSD is a Unix-like computer operating system descended from Berkeley Software Distribution , a Unix derivative developed at the University of California, Berkeley. It was forked from NetBSD by project leader Theo de Raadt in late 1995...

    , another major freely licensed, open-source BSD derivative (forked from NetBSD).
  • Poul-Henning Kamp
    Poul-Henning Kamp
    Poul-Henning Kamp is a Danish FreeBSD developer, responsible for implementation of the widely used MD5 password hash algorithm, a vast quantity of systems code, including the FreeBSD GEOM storage layer, GBDE cryptographic storage transform, part of the UFS2 file system implementation, FreeBSD...

  • Robert Watson
  • Security-focused operating system
  • ULE scheduler
    ULE scheduler
    ULE is the default scheduler for the FreeBSD operating system for the i386 and AMD64 architectures. It was introduced in FreeBSD version 5, but it was disabled by default for a time in favor of the traditional BSD scheduler until it reached maturity. The BSD scheduler does not make full use of...


External links

The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK