Submitted by: Emily Boyd (emilyboyd at emilyboyd dot com) Sponsored by: Google Summer of Code 2005
		
			
				
	
	
		
			166 lines
		
	
	
	
		
			7.6 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			166 lines
		
	
	
	
		
			7.6 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
| <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" [
 | |
| <!ENTITY date "$FreeBSD: www/en/features.sgml,v 1.26 2005/07/16 06:26:38 rushani Exp $">
 | |
| <!ENTITY title "About FreeBSD's Technological Advances">
 | |
| <!ENTITY % navincludes SYSTEM "includes.navabout.sgml"> %navincludes;
 | |
| <!ENTITY % includes SYSTEM "includes.sgml"> %includes;
 | |
| ]>
 | |
| 
 | |
| <html>
 | |
|     &header;
 | |
|     
 | |
|     <h1>FreeBSD offers many advanced features.</h1>
 | |
|     
 | |
|       <p>No matter what the application, you want your system's resources
 | |
| 	performing at their full potential.  FreeBSD's advanced features
 | |
| 	enable you to do just that.</p>
 | |
| 
 | |
|     <h2>A complete operating system based on 4.4BSD.</h2>
 | |
| 
 | |
|       <p>FreeBSD's distinguished roots derive from the latest <b>BSD</b>
 | |
| 	software releases from the Computer Systems Research Group at the
 | |
| 	University of California, Berkeley.  The book <i>The Design and
 | |
| 	  Implementation of 4.4BSD Operating System</i>, written by the 4.4BSD
 | |
| 	system architects, thus describes much of FreeBSD's core functionality
 | |
| 	in detail.</p>
 | |
| 
 | |
|       <p>Drawing on the skills and experience of a diverse and world-wide
 | |
| 	group of volunteer developers, the FreeBSD Project has worked to
 | |
| 	extend the feature set of the 4.4BSD operating system in many ways,
 | |
| 	striving constantly to make each new release of the OS more stable,
 | |
| 	faster and containing new functionality driven by user requests.</p>
 | |
| 
 | |
|     <h2>FreeBSD provides higher performance,
 | |
| 	greater compatibility with other operating systems and less system
 | |
| 	administration.</h2>
 | |
| 
 | |
|       <p>FreeBSD's developers attacked some of the more difficult problems in
 | |
| 	operating systems design to give you these advanced features:</p>
 | |
|       
 | |
|       <ul>
 | |
| 	<li><b>A merged virtual memory and filesystem buffer cache</b>
 | |
| 	  continuously tunes the amount of memory used for programs and the
 | |
| 	  disk cache.  As a result, programs receive both excellent memory
 | |
| 	    management and high performance disk access, and the system
 | |
| 	    administrator is freed from the task of tuning cache sizes.</li>
 | |
| 	
 | |
| 	<li><b>Compatibility modules</b> enable programs for other operating
 | |
| 	  systems to run on FreeBSD, including programs for Linux, SCO UNIX,
 | |
| 	  and System V Release 4.</li>
 | |
| 	  
 | |
| 	<li><b>Soft Updates</b> allows improved filesystem
 | |
| 	  performance without sacrificing safety and reliability.
 | |
| 	  It analyzes meta-data filesystem operations to avoid having
 | |
| 	  to perform all of those operations synchronously.
 | |
| 	  Instead, it maintains internal state about pending meta-data
 | |
| 	  operations and uses this information to cache meta-data,
 | |
| 	  rewrite meta-data operations to combine subsequent
 | |
| 	  operations on the same files, and reorder meta-data
 | |
| 	  operations so that they may be processed more efficiently.
 | |
| 	  Features such as background filesystem checking and
 | |
| 	  file system snapshots are built on the consistency
 | |
| 	  and performance foundations of soft updates.</li>
 | |
| 
 | |
| 	<li><b>File system snapshots</b>, permitting administrators to take
 | |
| 	  atomic file system snapshots for backup purposes using the free
 | |
| 	  space in the file system, as well as facilitating <b>background
 | |
| 	  fsck</b>, which allows the system to reach multiuser mode without
 | |
| 	  waiting on file system cleanup operations following power outages.
 | |
| 	  </li>
 | |
| 
 | |
| 	<li>Support for <b>IP Security (IPsec)</b> allows improved security in
 | |
| 	  networks, and support for the next-generation Internet Protocol,
 | |
| 	  IPv6.  The FreeBSD IPsec implementation includes support for a
 | |
| 	  broad range of <b>accelerated crypto hardware</b>.</li>
 | |
| 
 | |
| 	<li><b>Out of the box support for IPv6</b> via the KAME IPv6 stack
 | |
| 	  allows FreeBSD to be seamlessly integrated into next generation
 | |
| 	  networking environments.  FreeBSD even ships with many applications
 | |
| 	  extended to support IPv6!</li>
 | |
| 
 | |
| 	<li><b>Multi-threaded SMP architecture</b> capable of executing the
 | |
| 	  kernel in parallel on multiple processors, and with <b>kernel
 | |
| 	  preemption</b>, allowing high priority kernel tasks to preempt
 | |
| 	  other kernel activity, reducing latency.  This includes a
 | |
| 	  <b>multi-threaded network stack</b> and a <b>multi-threaded
 | |
| 	  virtual memory subsystem</b>.  With FreeBSD 6.x, support for a
 | |
| 	  fully parallel VFS allows the UFS file system to run on multiple
 | |
| 	  processors simultaneously, permitting load sharing of
 | |
| 	  CPU-intensive I/O optimization.</li>
 | |
| 
 | |
| 	<li><b>M:N application threading via pthreads</b> permitting threads
 | |
| 	  to execute on multiple CPUs in a scaleable manner, mapping many user
 | |
| 	  threads onto a small number of <b>Kernel Schedulable Entities</b>.
 | |
| 	  By adopting the <b>Scheduler Activation</b> model, the threading
 | |
| 	  approach can be adapted to the specific requirements of a broad
 | |
| 	  range of applications.</li>
 | |
| 
 | |
| 	<li><b>Netgraph pluggable network stack</b> allows developers to
 | |
| 	  dynamically and easily extend the network stack through clean
 | |
| 	  layered network abstractions.  Netgraph nodes can implement a broad
 | |
| 	  range of new network services, including encapsulation, tunneling,
 | |
| 	  encryption, and performance adaptation.  As a result, rapid
 | |
| 	  prototyping and production deployment of enhanced network services
 | |
| 	  can be performed far more easily and with fewer bugs.</li>
 | |
| 
 | |
| 	<li><b>TrustedBSD MAC Framework extensible kernel security</b>,
 | |
| 	  which allows developers to customize the operating system security
 | |
| 	  model for specific environments, from creating hardening policies
 | |
| 	  to deploying mandatory labeled confidentiality of integrity
 | |
| 	  policies.  Sample seucrity policies include <b>Multi-Level
 | |
| 	  Security (MLS)</b>, and <b>Biba Integrity Protection</b>.  Third
 | |
| 	  party modules include <b>SEBSD</b>, a FLASK-based implementation
 | |
| 	  of <b>Type Enforcement</b>.</li>
 | |
| 
 | |
| 	<li><b>GEOM pluggable storage layer</b>, which permits new storage
 | |
| 	  services to be quickly developed and cleanly integrated into the
 | |
| 	  FreeBSD storage subsystem.  GEOM provides a consistent and
 | |
| 	  coherent model for discovering and layering storage services,
 | |
| 	  making it possible to layer services such as RAID and volume
 | |
| 	  management easily.</li>
 | |
| 
 | |
| 	<li>FreeBSD's <b>GEOM-Based Disk Encryption (GBDE)</b>, provides
 | |
| 	  strong cryptographic protection using the GEOM Framework, and can
 | |
| 	  protect file systems, swap devices, and other use of storage
 | |
| 	  media.</li>
 | |
| 
 | |
| 	<li><b>Kernel Queues</b> allow programs to respond more efficiently
 | |
| 	  to a variety of asynchronous events including file and socket IO,
 | |
| 	  improving application and system performance.</li>
 | |
| 
 | |
| 	<li><b>Accept Filters</b> allow connection-intensive applications,
 | |
| 	  such as web servers, to cleanly push part of their functionality into
 | |
| 	  the operating system kernel, improving performance.</li>
 | |
|       </ul>
 | |
| 
 | |
|     <h2>FreeBSD provides many security features
 | |
|       to protect networks and servers.</h2>
 | |
| 
 | |
|       <p>The FreeBSD developers are as concerned about security as they are
 | |
| 	about performance and stability.  FreeBSD includes kernel support for
 | |
| 	<b>stateful IP firewalling</b>, as well as other services, such as
 | |
| 	<b>IP proxy gateways</b>, <b>access control lists</b>, <b>mandatory
 | |
| 	access control</b>, <b>jail-based virtual hosting</b>, and
 | |
| 	<b>cryptographically protected storage</b>.  These features can be
 | |
| 	used to support highly secure hosting of mutually untrusting
 | |
| 	customers or consumers, the strong partitioning of network segments,
 | |
| 	and the construction of secure pipelines for information scrubbing
 | |
| 	and information flow control.</p>
 | |
| 
 | |
|       <p>FreeBSD also includes support for encryption software, secure
 | |
| 	shells, Kerberos authentication, "virtual servers" created using
 | |
| 	jails, chroot-ing services to restrict application access to the
 | |
| 	file system, Secure RPC facilities, and access lists for services
 | |
| 	that support TCP wrappers.</p>
 | |
| 
 | |
|       &footer;
 | |
|   </body>
 | |
| </html>
 | |
| 
 | |
| <!-- 
 | |
|      Local Variables:
 | |
|      mode: sgml
 | |
|      sgml-indent-data: t
 | |
|      sgml-omittag: nil
 | |
|      sgml-always-quote-attributes: t
 | |
|      End:
 | |
| -->
 |