All Topics  
NetBSD

 

   Email Print
   Bookmark   Link






 

NetBSD



 
 
NetBSD is a freely redistributable, open source
Open source

Open source is an approach to design, development, and distribution offering practical accessibility to a product's source . Some consider open source as one of various possible design approaches, while others consider it a critical Strategy element of their business operations....
 version of the Unix
Unix

Unix is a computer operating system originally developed in 1969 by a group of American Telephone & Telegraph employees at Bell Labs, including Ken Thompson , Dennis Ritchie, Douglas McIlroy, and Joe Ossanna....
-derivative Berkeley Software Distribution
Berkeley Software Distribution

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

A computer is a machine that manipulates Data according to a list of Code .The first devices that resemble modern computers date to the mid-20th century , although the computer concept and various machines similar to computers existed earlier....
 operating system
Operating system

An operating system is an interface between hardware and applications; it is responsible for the management and coordination of activities and the sharing of the limited resources of the computer....
. It was the second open source BSD descendant to be formally released, after 386BSD
386BSD

386BSD, sometimes called "JOLIX", was a Free software Berkeley Software Distribution Unix operating system first released in 1992. It ran on PC compatible computer systems based on the Intel 80386 microprocessor....
, and continues to be actively developed. Noted for its portability
Porting

In computer science, porting is the process of adapting software so that an executable Computer program can be created for a computing environment that is different from the one for which it was originally designed ....
 and quality of design and implementation, it is often used in embedded systems and as a starting point for the porting of other operating systems to new computer architecture
Computer architecture

Computer architecture in computer engineering is the conceptual design and fundamental operational structure of a computer system. It is a blueprint and functional description of requirements and design implementations for the various parts of a computer, focusing largely on the way by which the central processing unit performs internally an...
s.

History
NetBSD was originally derived from the 4.3BSD release from 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....
 of the University of California, Berkeley
University of California, Berkeley

The University of California, Berkeley is a public university research university located in Berkeley, California, California, United States. The oldest of the ten major campuses affiliated with the University of California, Berkeley offers some 300 undergraduate and graduate degree programs in a wide range of disciplines....
, via the Networking/2 and 386BSD
386BSD

386BSD, sometimes called "JOLIX", was a Free software Berkeley Software Distribution Unix operating system first released in 1992. It ran on PC compatible computer systems based on the Intel 80386 microprocessor....
 releases.






Discussion
Ask a question about 'NetBSD'
Start a new discussion about 'NetBSD'
Answer questions from other users
Full Discussion Forum



Encyclopedia


NetBSD is a freely redistributable, open source
Open source

Open source is an approach to design, development, and distribution offering practical accessibility to a product's source . Some consider open source as one of various possible design approaches, while others consider it a critical Strategy element of their business operations....
 version of the Unix
Unix

Unix is a computer operating system originally developed in 1969 by a group of American Telephone & Telegraph employees at Bell Labs, including Ken Thompson , Dennis Ritchie, Douglas McIlroy, and Joe Ossanna....
-derivative Berkeley Software Distribution
Berkeley Software Distribution

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

A computer is a machine that manipulates Data according to a list of Code .The first devices that resemble modern computers date to the mid-20th century , although the computer concept and various machines similar to computers existed earlier....
 operating system
Operating system

An operating system is an interface between hardware and applications; it is responsible for the management and coordination of activities and the sharing of the limited resources of the computer....
. It was the second open source BSD descendant to be formally released, after 386BSD
386BSD

386BSD, sometimes called "JOLIX", was a Free software Berkeley Software Distribution Unix operating system first released in 1992. It ran on PC compatible computer systems based on the Intel 80386 microprocessor....
, and continues to be actively developed. Noted for its portability
Porting

In computer science, porting is the process of adapting software so that an executable Computer program can be created for a computing environment that is different from the one for which it was originally designed ....
 and quality of design and implementation, it is often used in embedded systems and as a starting point for the porting of other operating systems to new computer architecture
Computer architecture

Computer architecture in computer engineering is the conceptual design and fundamental operational structure of a computer system. It is a blueprint and functional description of requirements and design implementations for the various parts of a computer, focusing largely on the way by which the central processing unit performs internally an...
s.

History


NetBSD was originally derived from the 4.3BSD release from 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....
 of the University of California, Berkeley
University of California, Berkeley

The University of California, Berkeley is a public university research university located in Berkeley, California, California, United States. The oldest of the ten major campuses affiliated with the University of California, Berkeley offers some 300 undergraduate and graduate degree programs in a wide range of disciplines....
, via the Networking/2 and 386BSD
386BSD

386BSD, sometimes called "JOLIX", was a Free software Berkeley Software Distribution Unix operating system first released in 1992. It ran on PC compatible computer systems based on the Intel 80386 microprocessor....
 releases. The project began as a result of frustration within the 386BSD developer community with the pace and direction of the operating system's development. The four founders of the NetBSD project, Chris Demetriou, Theo de Raadt
Theo de Raadt

Theo de Raadt, , born May 19, 1968 in Pretoria, South Africa, is a software engineer who lives in Calgary, Alberta, Canada. He is the founder and leader of the OpenBSD and OpenSSH projects, and was a founding member of the NetBSD project....
, Adam Glass and Charles Hannum, felt that a more open development model would be beneficial to the project; one which was centered on portable, clean, correct code. Their aim was to produce a unified, multi-platform, production-quality, BSD-based operating system. The name "NetBSD" was suggested by de Raadt, based on the importance and growth of networks
Internet

The Internet is a global network of interconnected computers, enabling users to share information along multiple channels. Typically, a computer that connects to the Internet can access information from a vast array of available server and other computers by moving information from them to the computer's local memory....
 such as the Internet
Internet

The Internet is a global network of interconnected computers, enabling users to share information along multiple channels. Typically, a computer that connects to the Internet can access information from a vast array of available server and other computers by moving information from them to the computer's local memory....
 at that time, and distributed, collaborative nature of its development.

The NetBSD source code repository was established on March 21, 1993 and the first official release, NetBSD 0.8, was made in April, 1993. This was derived from 386BSD 0.1 plus the version 0.2.2 unofficial patchkit, with several programs from the Net/2 release missing from 386BSD re-integrated, and various other improvements. The first multi-platform release, NetBSD 1.0, was made in October 1994. Later the same year, for disputed reasons, one of the founders, Theo de Raadt, was forced out of the project. He later founded a new project, 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....
, from a forked version of NetBSD 1.0 near the end of 1995. In 1998, NetBSD 1.3 introduced the pkgsrc
Pkgsrc

pkgsrc is a package management system for Unix-like operating systems. It was forked from the FreeBSD ports collection in 1997 as the primary package management system for NetBSD....
 packages collection.

The current stable release of NetBSD is version 4.0.1 (October 14, 2008).

Symmetric multiprocessing


NetBSD has had support for SMP
Symmetric multiprocessing

In computing, symmetric multiprocessing or SMP involves a multiprocessor computer-architecture where two or more identical processors can connect to a single shared main memory....
 since the NetBSD 2.0 release in 2004, which was initially implemented using the giant lock
Giant lock

In operating systems, giant lock, which is also known as big-lock or kernel-lock, is a Lock which may be used to implement a concurrency control in the kernel, which is needed for Symmetric multiprocessing support....
 approach. During the development cycle of the NetBSD 5 release, major work was done to improve SMP support; most of the kernel subsystems were modified to be MP safe and use the fine-grained locking approach. New synchronization primitives
Synchronization (computer science)

In computer science, synchronization refers to one of two distinct but related concepts: synchronization of process , and synchronization of data....
 were implemented and scheduler activations
Scheduler activations

Scheduler Activations is a thread ing mechanism that, when implemented in an operating system's process Scheduling , provides kernel-level thread functionality with user-level thread flexibility and performance....
 was replaced with a 1:1 threading model in February 2007. A scalable M2 thread scheduler was implemented, though the old 4.4BSD scheduler is still provided as an option. Threaded software interrupts
Interrupt

In computing, an interrupt is an asynchronous communication signal from hardware indicating the need for attention or a synchronous event in software indicating the need for a change in execution....
 were implemented to improve synchronization. The virtual memory
Virtual memory

Virtual memory is a computer system technique which gives an application program the impression that it has contiguous working memory , while in fact it may be physically fragmented and may even overflow on to disk storage....
 system, memory allocator
Slab allocation

Slab allocation is a memory management mechanism intended for more efficient memory allocation and to eliminate memory Fragmentation to a large extent....
 and trap handling
Trap (computing)

In computing and operating systems, a trap is a type of synchronization interrupt typically caused by an exception handling condition in a user process ....
 were made MP safe. The file system framework, including the 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....
 and major file system
File system

In computing, a file system is a method for store and organize computer files and the data they contain to make it easy to find and access them....
s were modified to be MP safe. Since April, 2008 the only subsystems running with a giant lock are the network protocols
Protocol (computing)

In computer science, a protocol is a convention or standard that controls or enables the connection, communication, and data transfer between computing endpoints....
 and most 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.

Security


NetBSD provides various features in the security area. The framework (or Kauth) is a subsystem managing all authorization requests inside the kernel, and used as system-wide security policy. It allows external modules to plug-in the authorization process. NetBSD also incorporates exploit mitigation features, ASLR, MPROTECT and Segvguard from PaX
Pax

Pax may refer to:* the Latin language word for peace, used in phrases such as Pax Romana ; also, its personification, Pax , goddess of peace in Roman mythology...
 project, and GCC
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....
 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 Call_stack-allocated variables as they occur and preventing them from becoming serious computer security vulnerabilities....
 (SSP, or also known as ProPolice) compiler extensions. The Verified Executables
Veriexec

Veriexec is a file-signing scheme for the NetBSD operating system.It introduces a special device node through which a digital signature list can be loaded into the kernel ....
 (or Veriexec) is an in-kernel file integrity subsystem in NetBSD. It allows the user to set the digital fingerprints (hashes) of files in the system to monitor by the Veriexec, and prevent the execution of them. For example, one can allow Perl
Perl

In computer programming, Perl is a high-level programming language, List of programming languages by category, Interpreter , dynamic programming language....
 to run only scripts that match the fingerprints. The cryptographic device driver (CGD) provides functionality which allows using the disks or partitions (including CDs and DVDs) for encrypted storage in NetBSD.

Portability


NetBSD has been ported to a large number of 32-
32-bit

The range of integer values that can be stored in 32 bits is 0 through 4,294,967,295 or -2,147,483,648 through 2,147,483,647 using two's complement encoding....
 and 64-bit
64-bit

64-bit CPUs have existed in supercomputers since the 1960s and in RISC-based computer workstation and Server s since the early 1990s. In 2003 they were introduced to the mainstream personal computer arena, in the form of the x86-64 and 64-bit PowerPC processor architectures....
 architecture
Computer architecture

Computer architecture in computer engineering is the conceptual design and fundamental operational structure of a computer system. It is a blueprint and functional description of requirements and design implementations for the various parts of a computer, focusing largely on the way by which the central processing unit performs internally an...
s, from VAX
VAX

VAX was an instruction set architecture developed by Digital Equipment Corporation in the mid-1970s. A 32-bit complex instruction set computer ISA, it was designed to extend or replace DEC's various Programmed Data Processor ISAs....
 minicomputers to Pocket PC
Pocket PC

A Pocket PC, abbreviated P/PC or PPC, is a hardware specification for a handheld-sized computer that runs the Microsoft Windows Mobile operating system....
 PDA
Personal digital assistant

A personal digital assistant is a handheld computer, also known as a palmtop computer. Newer PDAs also have both color screens and audio capabilities, enabling them to be used as mobile phones, , web browsers, or portable media players....
s. The NetBSD motto is "Of course it runs NetBSD." As of 2007, NetBSD supports 54+ hardware platforms (comprising around 17 different processor architectures). Although the Linux 2.6 kernel includes support for more processor architectures, NetBSD supports more platforms than any single Linux distribution
Linux distribution

A Linux distribution is a member of the family of Unix-like software distributions built on top of the Linux kernel. Such distributions consist of a large collection of software applications such as word processors, spreadsheets, media players and database applications....
. The kernel and userland
Userland

Userland refers to an application software space that is external to the kernel and is protected by privilege separation. More specifically, it can refer to the set of library provided by the operating system for performing input/output or otherwise interacting with the kernel and is often used interchangeably with user space in this contex...
 for these platforms are all built from a central unified source-code tree managed by CVS
Concurrent Versions System

In the field of software development, the Concurrent Versions System , also known as the Concurrent Versioning System, is a free software revision control system....
. Currently, unlike other kernels such as µClinux, the NetBSD kernel requires the presence of an MMU
Memory management unit

A memory management unit , sometimes called paged memory management unit , is a computer hardware component responsible for handling accesses to computer memory requested by the central processing unit ....
 in any given target architecture.

Because of the centralized source code management, and portable design, feature additions (which are not hardware specific) can benefit all platforms immediately, with little or no re-porting required.

NetBSD’s portability is due to a number of interfaces for bus space and DMA. Using this portability layer, 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 are somewhat isolated from the hardware platform. This allows a single driver to be easily used on several platforms by hiding details of exactly how the driver talks to the hardware and dramatically reduces the amount of work needed to port it to a new architecture.

This enables, for instance, a driver for a specific PCI
Peripheral Component Interconnect

The PCI Local Bus , or Conventional PCI, is a computer bus for attaching computer hardware in a computer. These devices can take either the form of an integrated circuit fitted onto the motherboard itself, called a planar device in the PCI specification or an expansion card that fits into a socket....
 card to work whether that card is in a PCI slot on an IA-32
IA-32

IA-32 , often generically called x86 or x86-32, is the instruction set architecture of Intel's most commercially successful microprocessors....
, Alpha
DEC Alpha

Alpha, originally known as Alpha AXP, was 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....
, PowerPC
PowerPC

PowerPC is a RISC instruction set architecture created by the 1991 Apple Inc.?IBM?Motorola alliance, known as AIM alliance. Originally intended for personal computers, PowerPC CPUs have since become popular embedded system and high-performance processors....
, SPARC
SPARC

SPARC is a Reduced Instruction Set Computer microprocessor instruction set Computer architecture originally designed in 1985 by Sun Microsystems....
, or other architecture with a PCI bus. Also, a single driver for a specific device can operate via several different buses (eg. ISA
Industry Standard Architecture

Industry Standard Architecture was a computer bus standard for IBM compatible computers....
, PCI, PC card
PC card

In computing, PC Card is the form factor of a peripheral interface designed for laptop computers. The PC Card standard were defined and developed by a group of industry-leading companies called the Personal Computer Memory Card International Association ....
, etc).

In comparison, Linux
Linux

Linux is a generic term referring to Unix-like computer operating systems based on the Linux kernel. Their development is one of the most prominent examples of free and open source software collaboration; typically all the underlying source code can be used, freely modified, and redistributed by anyone under the terms of the GNU GPL license...
 device driver code often needs to be reworked for every new architecture. As a consequence, in recent porting efforts by NetBSD and Linux developers, NetBSD has taken much less time to port to new hardware.

This platform independence aids the development of embedded systems, particularly since NetBSD 1.6, when the entire toolchain of compiler
Compiler

A compiler is a computer program that transforms source code written in a programming language into another computer language . The most common reason for wanting to transform source code is to create an executable program....
s, assembler
Assembly language

An assembly language is a low-level language for programming computers. It implements a symbolic representation of the numeric machine codes and other constants needed to program a particular CPU architecture....
s, linker
Linker

In computer science, a linker or link editor is a computer program that takes one ormore object file generated by a compiler and combines them into a single executable program....
s, and other tools fully supported cross-compiling
Cross compiler

A cross compiler is a compiler capable of creating executable code for a platform other than the one on which the compiler is run. Cross compiler programming tools are used to generate executables for embedded system or multiple platforms....
. The NetBSD cross-compiling framework allows a complete NetBSD system for an architecture to be built from another system of different architecture (usually faster or with more hardware resources), even on different operating system since the framework supports most POSIX
POSIX

POSIX or "Portable Operating System Interface" is the collective name of a family of related standardizations specified by the Institute of Electrical and Electronics Engineers to define the application programming interface , along with shell and utilities interfaces for software compatible with variants of the Unix operating system, altho...
-compliant systems. Several embedded systems using NetBSD have required no additional software development other than toolchain and target rehost.

In 2005, as a demonstration of NetBSD's portability and suitability for embedded applications, Technologic Systems, a vendor of embedded systems hardware, designed and demonstrated a NetBSD-powered kitchen toaster
Toaster

A toaster is a small electric kitchen appliance designed to toast multiple types of bread products. A typical modern two-slice toaster draws anywhere between 600 and 1200 Watt and makes toast in 1 to 3 minutes....
.

Commercial ports to embedded platforms, including the AMD Geode LX800, Freescale PowerQUICC
PowerQUICC

PowerQUICC is the name for several Power Architecture based microcontrollers from Freescale Semiconductor. They are built around one or more PowerPC cores and the QUICC Engine which is a separate RISC core specialized in such tasks such as Input/output, communications, Asynchronous Transfer Mode, security acceleration, Computer networki...
 processors, Marvell Orion, AMCC
Applied Micro Circuits Corporation

Applied Micro Circuits Corporation is a fabless semiconductor company designing Computer networking and Embedded processor Power Architecture , Optical communication#Optical fiber communication and Computer storage solutions....
 405 family of PowerPC processors, Intel XScale IOP and IXP series, are available from and supported by Wasabi Systems.

Uses


NetBSD's clean design, high performance and scalability, support for many architectures suits the operating system for use in the embedded devices and servers, especially networking, industries.

A commercial real-time operating system
Real-time operating system

A Real-Time Operating System is a Computer multitasking operating system intended for real-time computing applications. Such applications include embedded systems , industrial robots, spacecraft, industrial control , and scientific research equipment....
, QNX
QNX

QNX is a commercial Unix-like real-time operating system, aimed primarily at the embedded systems market. On September 12, 2007, the source of the QNX kernel was released for non-commercial use....
, uses a network stack which is based on NetBSD code , and provides various drivers ported from NetBSD.

Force10 Networks
Force10

Force10 Networks, formerly nCore Networks, is an United States company which develops and markets high density 10 gigabit Ethernet and 100 gigabit Ethernet Ethernet Computer network to a variety of corporate, educational, and governmental enterprises....
 uses NetBSD as the underlying operating system that powers FTOS (the Force10 Operating System), which is used in high scalability switch/routers. Force10 also made a donation to the NetBSD Foundation in 2007 to help further research and the open development community.

Wasabi Systems provides a commercial Wasabi Certified® BSD product based on NetBSD with proprietary enterprise features and extensions, which are focused on embedded, server and storage applications.

NetBSD was used in NASA
NASA

The National Aeronautics and Space Administration is an agency of the Federal government of the United States, responsible for the nation's public list of space agencies....
's SAMS-II Project of measuring the microgravity environment on the International Space Station
International Space Station

The International Space Station is a research facility Assembly of the International Space Station in outer space. On-orbit construction of the station began in 1998, and is scheduled to be complete by 2011, with operations continuing until around 2015....
, and for investigations of TCP
Transmission Control Protocol

The Transmission Control Protocol is one of the core protocols of the Internet Protocol Suite. TCP is so central that the entire suite is often referred to as "TCP/IP"....
 for use in satellite
Satellite

In the context of spaceflight, a satellite is an Physical body which has been placed into orbit by human endeavor. Such objects are sometimes called artificial satellites to distinguish them from natural satellites such as the Moon....
 networks.

In 2004, SUNET
SUNET

SUNET is the Swedish University Computer Network. SUNET provides high-speed Internet access to academic institutions in Sweden. The current incarnation of the network, OptoSunet, provides 40 Gigabit/s links between the cities hosting universities....
 used NetBSD to set the Internet2
Internet2

Internet2 is a non-profit consortiumthat develops and deploys advanced high-performance Computer network applications and technologies for education, research, and the next-generation public Internet....
 Land Speed Record. NetBSD was chosen "due to the scalability of the TCP code".

The operating system of the T-Mobile Sidekick LX 2009 smartphone
Smartphone

A smartphone is a mobile phone offering advanced capabilities beyond a typical mobile phone, often with personal computer-like functionality. There is no industry standard definition of a smartphone....
 is expected to be based on NetBSD.

Licensing


All of the NetBSD kernel and most of the core userland source code is released under the terms of the BSD License
BSD licenses

BSD licenses represent a family of permissive free software licence. The original was used for the Berkeley Software Distribution , a Unix-like operating system for which the license is named....
 (two, three, and four-clause variants). This essentially allows everyone to use, modify, redistribute or sell it as they wish, as long as they do not remove the copyright notice and license text (the four-clause variants also include terms relating to publicity material). Thus, the development of products based on NetBSD is possible without having to make modifications to the source code public. In contrast, the GPL
GNU General Public License

The GNU General Public License is a widely used free software license, originally written by Richard Stallman for the GNU project. The GPL is the most popular and well-known example of the type of strong copyleft license that requires derived works to be available under the same copyleft....
 stipulates that changes to source code of a product must be released to the product recipient when products derived from those changes are released.

On June 20, 2008, the NetBSD Foundation announced a transition to the two clause BSD license, citing concerns with UCB support of clause 3 and industry applicability of clause 4.

NetBSD also includes the GNU
GNU

GNU is a computer operating system composed entirely of free software. Its name is a recursive acronym for GNU's Not Unix; it was chosen because its design is Unix-like, but differs from Unix by being free software and containing no Unix code....
 development tools and other packages, which are covered by the GPL and other open source licenses.

Compatibility with other operating systems


At the source code level, NetBSD is very nearly entirely compliant with POSIX
POSIX

POSIX or "Portable Operating System Interface" is the collective name of a family of related standardizations specified by the Institute of Electrical and Electronics Engineers to define the application programming interface , along with shell and utilities interfaces for software compatible with variants of the Unix operating system, altho...
.1 (IEEE 1003.1-1990) standard and mostly compliant with POSIX.2 (IEEE 1003.2-1992).

NetBSD also provides system call
System call

In computing, a system call is the mechanism used by an application program to request service from the kernel based on the Monolithic_kernel or to system servers on operating systems based on the microkernel-structure....
-level binary compatibility on the appropriate processor architectures with several UNIX-derived and UNIX-like operating systems, including Linux
Linux

Linux is a generic term referring to Unix-like computer operating systems based on the Linux kernel. Their development is one of the most prominent examples of free and open source software collaboration; typically all the underlying source code can be used, freely modified, and redistributed by anyone under the terms of the GNU GPL license...
, other BSD variants like FreeBSD
FreeBSD

FreeBSD is a Unix-like free software operating system descended from AT&T Unix via the Berkeley Software Distribution branch through the 386BSD and Berkeley Software Distribution#4.4BSD and descendants operating systems....
, Apple's 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, FreeBSD, and other free software projects....
, Solaris
Solaris Operating System

Solaris is a Unix-based operating system introduced by Sun Microsystems in 1992 as the successor to SunOS.Solaris is known for its scalability, especially on SPARC systems, and for originating many innovative features such as DTrace and ZFS....
, HP-UX
HP-UX

HP-UX 11i is Hewlett-Packard's proprietary software implementation of the Unix operating system, based on UNIX System V . It runs on the HP 9000 PA-RISC-based range of central processing unit and HP Integrity Intel's Itanium-based systems, and was also available for later Apollo/Domain systems....
, SunOS
SunOS

SunOS is a version of the Unix operating system developed by Sun Microsystems for their workstation and server computer systems. The SunOS name is usually only used to refer to versions 1.0 to 4.1.4 of SunOS....
 4 and SCO UNIX. This allows NetBSD users to run many applications that are only distributed in binary form for other operating systems, usually with no significant loss of performance.

A variety of "foreign" disk filesystem formats are also supported in NetBSD, including FAT
File Allocation Table

File Allocation Table or FAT is a computer file system architecture now widely used on most computer systems and most memory cards, such as those used with digital cameras....
, NTFS
NTFS

NTFS is the standard file system of Windows NT, including its later versions Windows 2000, Windows XP, Windows Server 2003, Windows Server 2008, Windows Vista, and Windows 7....
, Linux ext2fs, Mac OS X
Mac OS X

Mac OS X is a line of computer operating systems developed, marketed, and sold by Apple Inc., and since 2002 has been included with all new Macintosh computer systems....
 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 University of California, Berkeley Fast File System, the Berkeley Software Distribution Fast File System or FFS....
, RISC OS
RISC OS

RISC OS is a computer operating system which was originally developed by Acorn Computers Ltd in Cambridge, England for their ARM architecture based computers....
 FileCore/ADFS and AmigaOS
AmigaOS

AmigaOS is the default native operating system of the Amiga personal computer. It was developed first by Commodore International, and initially introduced in 1985 with the Amiga 1000....
 Fast File System
Amiga Fast File System

The Amiga Fast File System is a file system used on the Amiga personal computer. The Amiga Old File System was too slow to keep up with hard drives....
.

Releases


The following table lists major NetBSD releases and notable features in them. List is in descending order and does not include minor or patch releases.

Major releases Release date Notable features and changes
4.0December 19, 2007Added support for slab allocator, iSCSI
ISCSI

In computing, iSCSI is Internet SCSI , an Internet Protocol -based storage networking standard for linking data storage facilities. By carrying SCSI commands over IP networks, iSCSI is used to facilitate data transfers over intranets and to manage storage over long distances....
 target, CARP
Common Address Redundancy Protocol

The Common Address Redundancy Protocol or CARP is a protocol which allows multiple hosts on the same local network to share a set of IP addresses....
, tmpfs
TMPFS

tmpfs is a common name for a temporary file storage facility on manyUnix-like operating systems. It is intended to appear as a mounted file system, but one which uses virtual memory instead of a persistent storage device....
, Xen 3. Kernel Authorization framework, Veriexec and other security extensions.
3.0December 23, 2005Support for Xen 2.0 was added. Support for filesystems > 2 terabyte
Terabyte

A terabyte is a measurement term for computer storage. The value of a terabyte based upon a decimal radix is defined as one 1000000000000 bytes, or 1000 gigabytes....
s added. Pluggable Authentication Modules
Pluggable Authentication Modules

Pluggable authentication modules or PAM are a mechanism to integrate multiple low-level authentication schemes into a high-level application programming interface , which allows programs that rely on authentication to be written independently of the underlying authentication scheme....
 added. OpenBSD Packet Filter was integrated as an alternative to IPFilter. UFS directory hash
Dirhash

Dirhash is a feature of FreeBSD that improves the speed of finding files in a directory. Rather than finding a file in a directory using a linear search algorithm, FreeBSD uses a hash table....
 support.
2.0December 09, 2004Addition of native POSIX threads and SMP support on i386 and other platforms. AMD64 architecture added. Support for UFS2 and SMBFS, addition of kqueue.
1.6September 14, 2002Unified Buffer Cache (UBC) was introduced, which unifies the filesystem and virtual memory caches of file data. Zero-copy
Zero-copy

"Zero-copy" describes computer operations in which the Central processing unit does not perform the task of copying data from one RAM area to another....
 support for TCP and UDP transmit path. Ten new platforms supported. New implementation of cross-building (build.sh) infrastructure.
1.5December 06, 2000IPv6
IPv6

Internet Protocol version 6 is the next-generation Internet layer protocol for packet -switched internetworking and the Internet. IPv4 is the dominant Internet Protocol version, and was the first to receive widespread use....
 and IPsec
IPsec

Internet Protocol Security is a Protocol suite for securing Internet Protocol communications by authentication and encryption each packet #Example: IP packets of a data stream....
 were added to the network stack. OpenSSL
OpenSSL

OpenSSL is an open source implementation of the Transport Layer Security protocols. The core library implements the basic cryptography functions and provides various utility functions....
 and OpenSSH
OpenSSH

OpenSSH is a set of computer programs providing encryption communication sessions over a computer network using the Secure Shell protocol. It was created as an open source alternative to the proprietary Secure Shell software suite offered by SSH Communications Security....
 imported. New implementation of rc.d system start-up mechanism. Start of migration to ELF
Executable and Linkable Format

In computing, the Executable and Linking Format is a common standard file format for executables, object code, shared libraries, and core dumps....
-format binaries. A ktruss for kernel tracing was added. Six new platforms supported, including SPARC64
SPARC64

SPARC64 is a microprocessor developed by HAL Computer Systems and fabricated by Fujitsu. It implements the SPARC instruction set architecture , the first microprocessor to do so....
. Added FFS
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 University of California, Berkeley Fast File System, the Berkeley Software Distribution Fast File System or FFS....
 soft updates
Soft updates

In computer file systems, soft updates are an approach to maintaining disk integrity after a crash or power outage. They are an alternative to journaling file systems....
 and support for NTFS
NTFS

NTFS is the standard file system of Windows NT, including its later versions Windows 2000, Windows XP, Windows Server 2003, Windows Server 2008, Windows Vista, and Windows 7....
.
1.4May 12, 1999UVM, a rewritten virtual memory
Virtual memory

Virtual memory is a computer system technique which gives an application program the impression that it has contiguous working memory , while in fact it may be physically fragmented and may even overflow on to disk storage....
 subsystem, was introduced. Added RAIDframe, a software RAID
RAID

RAID is an acronym first defined by David A. Patterson , Garth A. Gibson and Randy Katz at the University of California, Berkeley in 1987 to describe a Redundant Array of Inexpensive Disks, a technology that allowed computer users to achieve mainframe-class storage reliability from low-cost and less reliable PC-class disk-drive componen...
 implementation, and imported IPFilter
IPFilter

IPFilter is an open source software package that provides firewall services and network address translation for many UNIX-like operating systems....
. Completion of the integration of all remaining 4.4BSD Lite-2 kernel improvements. Ports to Power Macintosh
Power Macintosh

Power Macintosh, later Power Mac, is a line of Apple Macintosh workstation-class personal computers based on various models of PowerPC microprocessors that was developed, marketed, and supported by Apple Inc....
 and NeXTcube
NeXTcube

The NeXTcube was a high-end workstation computer developed, manufactured and sold by NeXT from 1990 until 1993. It superseded the original NeXT Computer workstation and was housed in a similar cube-shaped magnesium enclosure....
/station
NeXTstation

NeXTstation was a high-end workstation developed, manufactured and sold by NeXT from 1990 until 1993. It ran the NeXTSTEP operating system. The NeXTstation was released as a more affordable alternative to the NeXTcube at about US $4,995 or about half the price....
 systems added. Added full USB support.
1.3March 09, 1998XFree86
XFree86

XFree86 is an implementation of the X Window System. It was originally written for Unix-like operating systems on IBM PC compatibles and is now available for many other operating systems and platforms....
 source tree has been made a supported part of the distribution. Support for ISA Plug and Play
ISA Plug and Play

The term Legacy Plug and Play, also shortened to PnP, describes a series of specifications and Microsoft Windows features geared towards operating system configuration of devices....
, PCMCIA, ATAPI and APM
Advanced Power Management

Advanced Power Management is an Application programming interface developed by Intel and Microsoft which enables an operating system running an IBM-compatible personal computer to work with the BIOS to achieve power management....
 added. ext2fs and FAT32 filesystems added. The pkgsrc
Pkgsrc

pkgsrc is a package management system for Unix-like operating systems. It was forked from the FreeBSD ports collection in 1997 as the primary package management system for NetBSD....
 packages collection system was introduced.
1.2October 04, 1996Support for NFSv3, SCSI
SCSI

Small Computer System Interface, or SCSI , is a set of standards for physically connecting and transferring data between computers and peripheral devices....
 scanner and medium changer devices added. NTP
Network Time Protocol

The Network Time Protocol is a protocol for clock synchronization of computer systems over packet-switched, variable-Latency data networks. NTP uses User Datagram Protocol on TCP and UDP port 123 as its transport layer....
 phase-locked loop
Phase-locked loop

A phase-locked loop or phase lock loop is a control system that generates a Signal that has a fixed relation to the phase of a "reference" signal....
 added in kernel. Ports for ARM
ARM architecture

The ARM architecture is a 32-bit RISC central processing unit architecture developed by ARM Limited that is widely used in embedded system designs....
 and Sharp X68k systems added.
1.1November 26, 1995Ports for DEC Alpha
DEC Alpha

Alpha, originally known as Alpha AXP, was 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....
, Atari TT/Falcon030 and MVME68k systems added. Binary emulation facility added. Generic audio subsystem introduced.
1.0October 26, 1994The first multi-platform release, supporting the PC, HP 9000
HP 9000

HP 9000 is the name for a line of workstation and server computer systems produced by the Hewlett-Packard company. The HP 9000 brand was introduced in 1984 to encompass several existing technical workstations models previously launched in the early 1980s....
 Series 300, Amiga
Amiga

The Amiga is a family of personal computers originally developed by Amiga Corporation. Development on the Amiga began in 1982 with Jay Miner as the principal hardware designer....
, 68k
68k

The Motorola 680x0/m68k/68k/68K is a family of 32-bit Complex instruction set computer microprocessor central processing unit chips and was the primary competition for the Intel x86 family of chips in personal computers of the 1980s and early 1990s....
 Macintosh, Sun-4c
SPARCstation

The SPARCstation, SPARCserver and SPARCcenter product lines were a series of SPARC-based computer workstations and server s in desktop, deskside and rack-based form factor developed and sold by Sun Microsystems...
 series and the PC532
PC532

The PC532 was a "home-brew" microcomputer design created by George Scolaro and Dave Rand in 1989-1990, based around the National Semiconductor NS32532 microprocessor ....
. Also in this release, the legally encumbered Net/2-derived source code was replaced with equivalent code from 4.4BSD-lite, in accordance with the USL v BSDi lawsuit settlement. Addition of shared libraries and Kerberos
Kerberos

Kerberos may refer to:* the hound of Hades, also known as Cerberus* Kerberos saga, a science fiction series by Mamoru Oshii* Kerberos , a computer security protocol...
 5.
0.9August 20, 1993Contained many enhancements and bug fixes. This was still a PC-platform-only release, although by this time work was underway to add support for other architectures. Support for loadable kernel modules (LKM).
0.8April 20, 1993The first official release, derived from 386BSD
386BSD

386BSD, sometimes called "JOLIX", was a Free software Berkeley Software Distribution Unix operating system first released in 1992. It ran on PC compatible computer systems based on the Intel 80386 microprocessor....
 0.1 plus the version 0.2.2 unofficial patchkit, with several programs from the Net/2 release missing from 386BSD re-integrated, and various other improvements.


Until 2004, NetBSD 1.x releases were made at roughly annual intervals, with minor "patch" releases in between. From release 2.0 onwards, each major NetBSD release corresponds to an incremented major version number, i.e. the major releases following 2.0 are 3.0, 4.0 and so on. The previous minor releases are now divided into two categories: x.y "stable" maintenance releases and x.y.z releases containing only security and critical fixes.

The pkgsrc packages collection


NetBSD features pkgsrc
Pkgsrc

pkgsrc is a package management system for Unix-like operating systems. It was forked from the FreeBSD ports collection in 1997 as the primary package management system for NetBSD....
 (short for "package source"), a framework for building third-party application software
Application software

Application software is any tool that functions and is operated by means of a computer, with the purpose of supporting or improving the software user 's work....
 packages that will install almost "automagically". The pkgsrc collection consists of more than 8100 packages as of . Building packages such as KDE
KDE

KDE is a free software project based around its flagship product, a desktop environment for Unix-like systems. The goal of the project is to provide basic desktop functions and applications for daily needs as well as tools and documentation for developers to write stand-alone applications for the system....
, GNOME
Gnome

A gnome is a mythical creature characterized by its extremely small size and wiktionary:subterranean lifestyle. The word gnome is derived from the New Latin gnomus....
, the Apache server or Perl
Perl

In computer programming, Perl is a high-level programming language, List of programming languages by category, Interpreter , dynamic programming language....
 is performed simply by typing make install in the appropriate directory. This will fetch the source code, unpack, patch, configure, build and install the package such that it can be removed again later. An alternative to compiling from source is to use a precompiled binary package. Either way, any prerequisites/dependencies will be installed automatically by the package system, with no need for manual intervention.

Following its mantra
Mantra

A mantra can be defined as a sound, syllable, word, or group of words that are considered capable of creating transformation. Their use and type varies according to the school and philosophy associated with the mantra....
 of portability
Porting

In computer science, porting is the process of adapting software so that an executable Computer program can be created for a computing environment that is different from the one for which it was originally designed ....
, pkgsrc has been made portable not only across the hardware platforms that run NetBSD, but also — with the help of an autoconf
Autoconf

GNU Autoconf is a tool for producing shell scripts that automatically configure C/C++ software source code packages to adapt to many kinds of UNIX-like systems....
-based bootstrap system — on 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 systems, such as Linux
Linux

Linux is a generic term referring to Unix-like computer operating systems based on the Linux kernel. Their development is one of the most prominent examples of free and open source software collaboration; typically all the underlying source code can be used, freely modified, and redistributed by anyone under the terms of the GNU GPL license...
, other BSD variants like FreeBSD
FreeBSD

FreeBSD is a Unix-like free software operating system descended from AT&T Unix via the Berkeley Software Distribution branch through the 386BSD and Berkeley Software Distribution#4.4BSD and descendants operating systems....
 and 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....
, Solaris
Solaris Operating System

Solaris is a Unix-based operating system introduced by Sun Microsystems in 1992 as the successor to SunOS.Solaris is known for its scalability, especially on SPARC systems, and for originating many innovative features such as DTrace and ZFS....
, 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, FreeBSD, and other free software projects....
/Mac OS X
Mac OS X

Mac OS X is a line of computer operating systems developed, marketed, and sold by Apple Inc., and since 2002 has been included with all new Macintosh computer systems....
, IRIX
IRIX

IRIX is a computer operating system developed by Silicon Graphics, Inc. to run natively on their 32- and 64-bit MIPS architecture workstations and servers....
, Interix
Interix

Interix is the name of an optional, full-featured POSIX and Unix environment subsystem for Microsoft's Windows NT-based operating systems. It is a component of the Microsoft Windows Services for UNIX release 3.0 and 3.5 ....
 and others. pkgsrc
Pkgsrc

pkgsrc is a package management system for Unix-like operating systems. It was forked from the FreeBSD ports collection in 1997 as the primary package management system for NetBSD....
 has also been adopted as the official package system for DragonFly BSD
DragonFly BSD

DragonFly BSD is a Free software Unix-like operating system created as a fork of FreeBSD 4.8. Matthew Dillon , a FreeBSD and Amiga developer since 1994, began work on DragonFly BSD in June 2003 and announced it on the FreeBSD mailing lists on July 16, 2003....
 ().

Logo


The NetBSD "flag" logo, designed by Grant Bissett, was introduced in 2004 and is an abstraction of their , designed by Shawn Mueller in 1994. This was based on the famous World War II
World War II

World War II, or the Second World War , was a global military conflict which involved a Participants in World War II, including all of the great powers, organised into two opposing military alliances: the Allies of World War II and the Axis powers....
 photograph Raising the Flag on Iwo Jima
Raising the Flag on Iwo Jima

Raising the Flag on Iwo Jima is a historic photograph taken on February 23, 1945, by Joe Rosenthal. It depicts five United States Marine Corps and a United States Navy Hospital Corpsman raising the flag of the United States atop Mount Suribachi during the Battle of Iwo Jima in World War II....
, which some perceived as culturally insensitive and inappropriate for an international project. Even so, the primary reason for the change was actually the complexity of the drawing making it unsuitable for use as logo.

Governance structure


is the legal entity that owns the intellectual property and trademarks associated with NetBSD, and has obtained 501(c)3
501(c)

501 is a provision of the United States Internal Revenue Code , listing 26 types of non-profit organizations Tax exemption from some Taxation in the United States Income tax in the United States....
 non-profit organisation status with respect to U.S. taxation. The members of the foundation are who have CVS commit access. The NetBSD Foundation has a Board of Directors, elected by the voting of members for two years.

Hosting


Hosting for the project is provided primarily by the Internet Systems Consortium
Internet Systems Consortium

Internet Systems Consortium, Inc., also known as ISC, is a Delaware-registered, 501 public charity Not-for-profit corporation which Succession Internet Software Consortium, Inc., the original ISC....
 Inc, the Luleå University of Technology
Luleå University of Technology

Lule? University of Technology or Lule? tekniska universitet is Scandinavia's northernmost university of technology. It has four campuses, located in Lule? , Kiruna , Skellefte? and Pite? ....
, Columbia University
Columbia University

Columbia University in the City of New York , is a private university in the United States and a member of the Ivy League. Columbia's main campus lies in the Morningside Heights, Manhattan neighborhood in the borough of Manhattan, in New York City....
, and Western Washington University
Western Washington University

Western Washington University is one of six public university, university of higher education in the U.S. state of Washington. It is located in Bellingham, Washington and offers bachelor degree and master degree degrees....
. Mirrors for the project are spread around the world and provided by volunteers and supporters of the project.

See also


  • 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....
  • 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.Due to 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....
  • Debian GNU/NetBSD
    GNU variants

    GNU variants is a term used by the Free Software Foundation and others to refer to operating systems which use application software and library from GNU, but use a Kernel other than GNU Hurd....
  • DragonFly BSD
    DragonFly BSD

    DragonFly BSD is a Free software Unix-like operating system created as a fork of FreeBSD 4.8. Matthew Dillon , a FreeBSD and Amiga developer since 1994, began work on DragonFly BSD in June 2003 and announced it on the FreeBSD mailing lists on July 16, 2003....
  • FreeBSD
    FreeBSD

    FreeBSD is a Unix-like free software operating system descended from AT&T Unix via the Berkeley Software Distribution branch through the 386BSD and Berkeley Software Distribution#4.4BSD and descendants operating systems....
  • MirOS BSD
    MirOS BSD

    MirOS BSD is a free operating system, which started as a fork of OpenBSD 3.1 in August 2002. It is intended to maintain the security of OpenBSD - from which it frequently synchronises code updates - with better support for European localisation....
  • 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....
  • 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 as the default, pre-installed graphical user interface....


External links

  • a NetBSD based Live CD
  • Binary packages from pkgsrc bulk builds at [ftp://ftp.netbsd.org/pub/NetBSD/packages], and [ftp://ftp.gw.com/pub/packages/NetBSD/]
  • [irc://irc.freenode.net/netbsd #netbsd] on freenode
  • NetBSD shell account
    Shell account

    A shell account is a personal account that gives a user access to a Unix shell on a remote server, usually accessed through Secure Shell . A shell account can be used for many different purposes because many different programs can be run on the shell....
     at and
  • **
  • International Space Station
    International Space Station

    The International Space Station is a research facility Assembly of the International Space Station in outer space. On-orbit construction of the station began in 1998, and is scheduled to be complete by 2011, with operations continuing until around 2015....
      and
  • by Hubert Feyrer