xref: /csrg-svn/share/man/man4/man4.tahoe/mem.4 (revision 47673)
1*47673Scael.\" Copyright (c) 1986, 1991 Regents of the University of California.
2*47673Scael.\" All rights reserved.
330149Smckusick.\"
4*47673Scael.\" %sccs.include.redist.man%
530149Smckusick.\"
6*47673Scael.\"     @(#)mem.4	6.3 (Berkeley) 03/27/91
7*47673Scael.\"
8*47673Scael.Dd
9*47673Scael.Dt MEM 4 tahoe
10*47673Scael.Os
11*47673Scael.Sh NAME
12*47673Scael.Nm mem ,
13*47673Scael.Nm kmem ,
14*47673Scael.Nm vmem
15*47673Scael.Nd main memory
16*47673Scael.Sh DESCRIPTION
17*47673ScaelThe special file
18*47673Scael.Nm /dev/mem
19*47673Scaelis an interface to the physical memory of the computer.
20*47673ScaelByte offsets in this file are interpreted as physical memory addresses.
21*47673ScaelReading and writing this file is equivalent to reading and writing
22*47673Scaelmemory itself.
23*47673ScaelOnly offsets within the bounds of
24*47673Scael.Nm /dev/mem
25*47673Scaelare allowed.
26*47673Scael.Pp
27*47673ScaelKernel virtual memory is accessed through the interface
28*47673Scael.Nm /dev/kmem
29*47673Scaelin the same manner as
30*47673Scael.Nm /dev/mem .
31*47673ScaelOnly kernel virtual addresses that are currently mapped to memory are allowed.
32*47673Scael.Pp
3330149SmckusickThe file
34*47673Scael.Nm /dev/vmem
35*47673Scaelallows access to the mapped portion of the
36*47673Scael.Tn VERSAbus
37*47673Scael.Tn I/O
38*47673Scaelspace.  On the Tahoe the upper megabyte
3931722Ssamof the physical address space is accessible through
4031722Ssamthis file (0xfff00000 through 0xffffffff).
4131722SsamAccesses to the upper 64 kilobytes of
42*47673Scaelthe
43*47673Scael.Tn I/O
44*47673Scaelspace result in
45*47673Scael.Tn VERSAbus
46*47673Scaeltransfers with a
4731722Ssam16-bit address (the offset in this region) and a
48*47673Scael.Dq No non-privileged short Tn I/O
49*47673Scael.Tn VERSAbus
50*47673Scaeladdress modifier.
5131722SsamAccesses to the remainder of the mapped region,
52*47673Scaelresult in
53*47673Scael.Tn VERSAbus
54*47673Scaeltransfers with a 24-bit address
55*47673Scaeland a ``non-privileged standard''
56*47673Scael.Tn VERSAbus
57*47673Scaeladdress
5831722Ssammodifier.  This region is actually part of the region
5931722Ssambetween 0xfeff0000 and 0xffff0000
60*47673Scaelwhich generates
61*47673Scael.Tn VERSAbus
62*47673Scaeltransfers with a 24-bit address.
63*47673ScaelAccesses to the remainder of the one gigabyte
64*47673Scael.Tn I/O
65*47673Scaelspace
6631722Ssamgenerate transfers that utilize a 32-bit address with
6731722Ssama ``non-privileged extended'' address modifier.  Any
6831722Ssam32-bit address generated by a cpu access to this part
69*47673Scaelof the
70*47673Scael.Tn I/O
71*47673Scaelspace have the upper two bits zero; thus,
7231722Ssamfor example, an access to physical address 0xfe000000
7331722Ssamcauses the address 0x3e000000 to be supplied in the
74*47673Scaelresultant
75*47673Scael.Tn VERSAbus
76*47673Scaelread/write cycle.
77*47673Scael.Pp
7831722SsamOn the Tahoe, the
79*47673Scaelbase address for the
80*47673Scaelper-process data of the current process
81*47673Scaelis virtual address 0xbffff000.
82*47673Scael.Sh FILES
83*47673Scael.Bl -tag -width Pa -compact
84*47673Scael.It Pa /dev/mem
85*47673Scael.It Pa /dev/kmem
86*47673Scael.It Pa /dev/vmm
87*47673Scael.El
88*47673Scael.Sh HISTORY
89*47673ScaelThe
90*47673Scael.Nm mem ,
91*47673Scael.Nm kmem
92*47673Scaelfiles appeared in
93*47673Scael.At v6 .
94*47673ScaelThe file
95*47673Scael.Nm vmem
96*47673Scaelappeared in
97*47673Scael.Bx 4.3 tahoe .
98*47673Scael.Sh BUGS
9930149SmckusickMemory files are accessed one byte
10030149Smckusickat a time, an inappropiate method for some
10130149Smckusickdevice registers.
102