GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages


Manual Reference Pages  -  LINUX (4)

NAME

linux - Linux ABI support

CONTENTS

Synopsis
Description
Files
See Also
History

SYNOPSIS

To compile support for this ABI into an i386 kernel place the following line in your kernel configuration file:


.Cd options COMPAT_LINUX

for an amd64 kernel use:



.Cd options COMPAT_LINUX32

Alternatively, to load the ABI as a module at boot time, place the following line in loader.conf(5):

linux_load="YES"

DESCRIPTION

The linux module provides limited Linux ABI (application binary interface) compatibility for userland applications. The module provides the following significant facilities:
  • An image activator for correctly branded elf(5) executable images
  • Special signal handling for activated images
  • Linux to native system call translation

It is important to note that the Linux ABI support it not provided through an emulator. Rather, a true (albeit limited) ABI implementation is provided.

The following sysctl(8) tunable variables are available:
compat.linux.osname Linux kernel operating system name.
compat.linux.osrelease Linux kernel operating system release. Changing this to something else is discouraged on non-development systems, because it may change the way Linux programs work. Recent versions of GNU libc are known to use different syscalls depending on the value of this sysctl.
compat.linux.oss_version
  Linux Open Sound System version.

The linux module can be linked into the kernel statically with the COMPAT_LINUX kernel configuration option or loaded as required. The following command will load the module if it is neither linked into the kernel nor already loaded as a module:

if ! kldstat -v | grep -E ’linux(aout|elf)’ > /dev/null; then
        kldload linux > /dev/null 2>&1
fi

Note that dynamically linked Linux executables will require a suitable environment in /compat/linux. Specifically, the Linux run-time linker’s hints files should be correctly initialized. For this reason, it is common to execute the following commands to prepare the system to correctly run Linux executables:

if [ -x /compat/linux/sbin/ldconfig ]; then
        /compat/linux/sbin/ldconfig -r /compat/linux
fi

For information on loading the linux kernel loadable module automatically on system startup, see rc.conf(5). This information applies regardless of whether the linux module is statically linked into the kernel or loaded as a module.

FILES

/compat/linux minimal Linux run-time environment
/compat/linux/proc
  limited Linux process file system
/compat/linux/sys limited Linux system file system

SEE ALSO

brandelf(1), elf(5), linprocfs(5), linsysfs(5)

HISTORY

Linux ABI support first appeared in
.Fx 2.1 .
Search for    or go to Top of page |  Section 4 |  Main Index


Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with manServer 1.07.