Interoperability with other systems
Good design and correct implementation are only part of the story. NetBSD
is also highly interoperable with other systems.
NetBSD provides a binary emulation system, which permits directly running
binaries for other
UNIX-like operating systems,
including FreeBSD, HP-UX, Interactive UNIX, Linux, OSF/1, SCO UNIX, SunOS,
System V Release 4, Solaris and Ultrix on the same CPU type.
For example, any NetBSD/m68k based platform can run SunOS
binaries for
Sun 3 and 3x systems (but not SunOS binaries for SPARC or UltraSPARC
systems), while NetBSD/sparc can run SunOS and
Solaris binaries for SPARC systems.
Note
For dynamically linked binaries, the
dynamic linker and libraries from the emulated operating system
are usually required.
In addition, the emulators/wine
package
and emulators/doscmd
package
permit running of Windows and MS-DOS applications, and the Linux version of
Executor can be used to run MacOS
applications.
Although NetBSD releases are not currently certified, we attempt to be
compatible with established standards:
-
POSIX -
The Portable Operating Systems Interface from IEEE has
quickly become the standard for minimum operating services, and is often
specified as a requirement for computer systems. [This group of
standards is not available on the web.]
-
XPG/SUS -
The Single UNIX
Specification (an extended and now
independently maintained subset of the X/Open Portability Guide) specifies
a number of basic facilities not defined by POSIX. We do not currently
implement the STREAMS interface.
We also follow some de facto standards:
-
BSD -
Due to our strong Berkeley heritage, we try to remain
source compatible with traditional BSD systems as well.
-
Linux -
We provide an easy-to-use emulator for programs using the Linux OSS audio
system, making many of them substantially easier to port.
Also see:
more information on standards conformance.
In addition to the native 64-bit FFS file system, NetBSD can read file
systems from other operating systems, including:
-
FFS -
ffs (the Berkeley “fast file system”) is compatible
with the native file system on SunOS, Solaris, Ultrix, Digital
UNIX, System V Release 4, and many other systems based on BSD or
System V.
-
EXT2FS -
ext2fs is the native file system currently used by Linux.
-
MSDOSFS -
msdosfs is compatible with the traditional MS-DOS file system, used by
MS-DOS, Windows 95, Windows 98 and Windows NT. It also supports long
file names, as implemented in Windows 95.
-
CD9660 -
cd9660 implements the ISO 9660 file system, used on most CD-ROMs. It
includes support for long file names and UNIX-style permissions, using
the de facto standard “Rock Ridge” extensions.
-
ADOSFS -
adosfs is compatible with AmigaDOS file systems.
NetBSD supports a large number of network protocols. Some of them are:
-
TCP/IP -
NetBSD ships with a world class TCP/IP implementation (also
used in many TCP/IP research
projects), designed to interoperate with any other system that
speaks TCP/IP.
-
SMTP -
This is the standard mail transfer protocol on the Internet.
-
NFS -
This is the usual protocol used by UNIX-like file servers.
-
Appletalk -
Combined with native kernel support for Appletalk, the
net/netatalk
package provides
excellent file and print sharing service to Macintosh systems
running MacOS.
-
SMB (Microsoft networking) -
Using the
net/samba
package,
NetBSD can be used to provide file and print sharing services to systems
running MS-DOS, Windows 95, Windows 98, Windows NT and Windows 2000.