MEM(4) GENIX Programmer's Manual MEM(4)
NAME
mem, kmem - main memory
DESCRIPTION
Mem is a special file that is an image of the main memory of the
computer. It may be used, for example, to examine (and even to
patch) the system.
Byte addresses in mem are interpreted as physical memory addresses.
References to non-existent locations cause errors to be returned.
Examining and patching device registers is likely to lead to unex-
pected results when read-only or write-only bits are present.
The file kmem is the same as mem except that kernel virtual memory
rather than physical memory is accessed.
On PDP11s, the I/O page begins at location 0160000 of kmem and per-
process data for the current process begins at 0140000. On a VAX
11/780 the I/O space begins at physical address 20000000(16); on an
11/750 I/O space addresses are of the form fxxxxx(16); on all VAXes
per-process data for the current process is at virtual 7ffff000(16).
On the NS16000, both the device registers and the per-process data
for the current process are kept in virtual addresses in kmem as
specified in the file /usr/include/sys/devvm.h.
FILES
/dev/mem
/dev/kmem
/usr/include/sys/devvm.h
BUGS
On PDP11s and VAXes, memory files are accessed one byte at a time.
On the NS16000, memory files are accessed with a combination of
byte, word, and doubleword transfers, depending on the byte count
and addresses specified in the read or write call. This is an inap-
propiate method for some device registers.
Printed 11/16/83 1