README for XFree86 4.4.0 on OpenBSD : Kernel Support for X
Previous: Running X
Next: Rebuilding the XFree86 Distribution

## 7. Kernel Support for X

To make sure X support is enabled under OpenBSD, the following line must be in your config file in `/sys/arch/i386/conf`:

> `option APERTURE`

### 7.1. Console drivers

The server supports wscons, the standard OpenBSD/i386 console driver.

The pcvt console driver which was the default up to OpenBSD 2.8, is also supported on those releases.

### 7.2. Aperture Driver

By default OpenBSD includes the BSD 4.4 kernel security feature that disables access to the `/dev/mem` device when in multi-user mode. But the XFree86 server requires linear access to the display memory in most cases.

OpenBSD requires the aperture driver to be enabled for all X servers, because the aperture driver also controls access to the I/O ports of the video boards.

To enable the aperture driver, once included in the kernel, set

> `

>     machdep.allowaperture=2

> `

in `/etc/sysctl.conf`. See the xf86(4) manual page for details.

Another (less recommended) way to enable linear memory and I/O ports access is to disable the kernel security feature by initializing `securelevel` to -1 in `/etc/rc.securelevel`.

> Caveat: the aperture driver only allows one access at a time (so that the system is in the same security state once X is launched). This means that if you run multiple servers on multiple virtual terminals, only the first one will have linear memory access. Set `securelevel` to -1 if you need more that one X server at a time.

### 7.3. MIT-SHM

OpenBSD supports System V shared memory. If XFree86 detects this support in your kernel, it will support the MIT-SHM extension.

README for XFree86 4.4.0 on OpenBSD : Kernel Support for X
Previous: Running X
Next: Rebuilding the XFree86 Distribution