MEM(4)

NAME
mem, kmem - memory files and memory controller

SYNOPSIS
mem* at mainbus0

DESCRIPTION
The mem driver controls and restricts access to the systems memory by the hardware buses and the processor.

It also provides an interface to userland through the special files /dev/mem and /dev/kmem. Physical memory is accessed through /dev/mem, while kernel virtual memory is accessed through /dev/kmem. Access to kernel virtual addresses not currently mapped to memory will fail. On hppa, the physical memory range is always contiguous and starts at address 0; kernel virtual memory begins at address 0 as well.

The writeability of the /dev/mem and /dev/kmem special files are controlled by the system securelevel in addition to the filesystem permissions.

FILES
/dev/mem
/dev/kmem

HISTORY
The mem driver originates from OpenBSD. It was ported to NetBSD 1.6 by Matthew Fredette.

BUGS
On some systems featuring a “Viper” memory controller, NetBSD may not configure bus arbitration correctly, causing the boot process to freeze during either mem or cpu(4) device probe.