mem(4) – alpha memory files
mem(4) – amd64 memory files
mem(4) – hppa memory files and memory controller
mem(4) – i386 memory files
mem(4) – landisk memory files
mem(4) – loongson memory files
mem(4) – luna88k memory files
mem(4) – macppc memory files
mem(4) – sparc64 memory files
MEM(4) Device Drivers Manual (i386) MEM(4)

mem, kmemmemory files

The special file /dev/mem is an interface to the physical memory of the computer. Byte offsets in this file are interpreted as physical memory addresses. Reading and writing this file is equivalent to reading and writing memory itself. Only offsets within the bounds of /dev/mem are allowed.

Kernel virtual memory is accessed through the interface /dev/kmem in the same manner as /dev/mem. Only kernel virtual addresses that are currently mapped to memory are allowed.

On ISA the I/O memory space begins at physical address 0x000a0000 and runs to 0x00100000. The per-process data size for the current process is UPAGES long, and ends at virtual address 0xfe000000.

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.


mtrr(4), securelevel(7)

The /dev/mem and /dev/kmem files appeared in Version 6 AT&T UNIX.

January 12, 2018 OpenBSD 7.5