Skip site navigation (1) Skip section navigation (2)

About FreeBSD's Technological Advances

FreeBSD offers many unique features.

No matter what the application, you want your system's resources performing at their full potential. FreeBSD's focus on performance, networking, and storage, combined with easy system administration and excellent documentation to allow you to do what you want.

A complete operating system based on 4.4BSD.

FreeBSD's distinguished roots derive from the BSD software releases from the Computer Systems Research Group at the University of California, Berkeley. Over fifteen years of work have been put into enhancing FreeBSD, adding industry-leading scalability, network performance, management tools, file systems, and security features. As a result, FreeBSD may be found across the Internet, in the operating system of core router products, running root name servers, hosting major web sites, and as the foundation for widely used desktop operating systems. This is only possible because of the diverse and world-wide membership of the volunteer FreeBSD Project.

FreeBSD 9.0, brings many new features and performance enhancements with a special focus on desktop support and security features.

  • Capsicum Capability Mode: Capsicum is a set of features for sandboxing support, using a capability model in which the capabilities are file descriptors. Two new kernel options CAPABILITIES and CAPABILITY_MODE have been added to the GENERIC kernel.
  • Hhook: (Helper Hook) and khelp(9) (Kernel Helpers) KPIs have been implemented. These are a kind of superset of pfil(9) framework for more general use in the kernel. The hhook(9) KPI provides a way for kernel subsystems to export hook points that khelp(9) modules can hook to provide enhanced or new functionality to the kernel. The khelp(9) KPI provides a framework for managing khelp(9) modules, which indirectly use the hhook(9) KPI to register their hook functions with hook points of interest within the kernel. These allow a structured way to dynamically extend the kernel at runtime in an ABI preserving manner.
  • Accounting API: has been implemented. It can keep per-process, per-jail, and per-loginclass resource accounting information. Note that this is not built nor installed by default. To build and install them, specify options RACCT in the kernel configuration file and rebuild the base system as described in the FreeBSD Handbook
  • Resource-limiting API: has been implemented. It works in conjunction with the RACCT resource accounting implementation and takes user-configurable actions based on the set of rules it maintains and the current resource usage. The rctl(8) utility has been added to manage the rules in userland. Note that this is not built nor installed by default.
  • Usb: subsystem now supports USB packet filter. This allows to capture packets which go through each USB host controller. The implementation is almost based on bpf(4) code. The userland program usbdump(8) has been added.
  • Infiniband support:, OFED (OpenFabrics Enterprise Distribution) version 1.5.3 has been imported into the base system.
  • TCP/IP network: stack now supports the mod_cc(9) pluggable congestion control framework. This allows TCP congestion control algorithms to be implemented as dynamically loadable kernel modules. The following kernel modules are available cc_chd(4) for the CAIA-Hamilton-Delay algorithm, cc_cubic(4) for the CUBIC algorithm, cc_hd(4) for the Hamilton-Delay algorithm, cc_htcp(4) for the H-TCP algorithm, cc_newreno(4) for the NewReno algorithm, and cc_vegas(4) for the Vegas algorithm. The default algorithm can be set by a new sysctl(8) variable net. inet. tcp. cc. algorithm.
  • SU+J: FreeBSD Fast File System now supports soft updates with journaling. It introduces an intent log into a softupdates-enabled file system which eliminates the need for background fsck(8) even on unclean shutdowns.

FreeBSD 8.x brings many new features and performance enhancements. With special focus on a new USB stack, FreeBSD-8.x shipped with experimental support for NFSv4. As well as a new TTY layer. Which improves scalability and resources handling in SMP enabled systems.

  • Netisr framework: has been reimplemented for parallel threading support. This is a kernel network dispatch interface which allows device drivers (and other packet sources) to direct packets to protocols for directly dispatched or deferred processing. The new implementation supports up to one netisr thread per CPU, and several benchmarks on SMP machines show substantial performance improvement over the previous version.
  • Linux emulation: layer has been updated to version 2. 6. 16 and the default Linux infrastructure port is now emulators/linux_base-f10 (Fedora 10)
  • Network Virtualization: Container named vimage has been implemented, extending the FreeBSD kernel to maintain multiple independent instances of networking state. vimage facilities can be used independently to create fully virtualized network topologies, and jail(8) can directly take advantage of a fully virtualized network stack.