MEM(4) | Device Drivers Manual (hppa) | MEM(4)

# NAME

`mem`, `kmem` — memory files and memory controller

# SYNOPSIS

`mem* at mainbus0 flags 0x0000`

# 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.

Even with sufficient file system permissions, these devices can only be opened when the securelevel(7) is insecure or when the kern.allowkmem sysctl(2) variable is set.

# FILES

/dev/mem
/dev/kmem

# SEE ALSO

securelevel(7)

# CAVEATS

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

In this case, a different initialization strategy can be achieved by setting flags to 0x0001 (see boot_config(8) for details).

January 12, 2018 | Debian