2.9BSD/usr/man/man2/phys.2

Compare this file to the similar file:
Show the results in this format:

.TH PHYS 2
.UC
.SH NAME
phys \- allow a process to access physical addresses
.SH SYNOPSIS
.B phys(segreg, size, physadr)
.SH DESCRIPTION
The argument
.I segreg
specifies a process virtual (data-space) address
range of 8K bytes starting
at virtual address
.IR segreg \(mu8K
bytes.
This address range is mapped into
physical address
.IR physadr \(mu64
bytes.
Only the first
.IR size \(mu64
bytes of this mapping is addressable.
If
.I size
is zero,
any previous mapping of this
virtual address range is nullified.
For example,
the call
.PP
	phys(7, 1, 0177775);
.PP
will map virtual addresses 0160000-0160077 into
physical addresses 017777500-017777577.
In particular,
virtual address 0160060 is the PDP-11 console
located at physical address 017777560.
.PP
This call may only be executed by the super-user.
.SH ERRORS
.I Phys
will fail and the segmentation registers be unaffected if:
.TP 20
[EPERM]
The process's effective user ID is not the super-user.
.TP 20
[EINVAL]
.I Segreg
is less than 0 or greater than 7.
.TP 20
[EINVAL]
.I Size
is less than 0 or greater than 128.
.SH "SEE ALSO"
PDP-11 segmentation hardware
.SH BUGS
.PP
This system call is obviously very machine
dependent and very dangerous.
This system call is not considered
a permanent part of the system.
.PP
On systems with ENABLE/34(tm) memory mapping boards,
\fIphys\fP cannot be used to map in the I/O page.
.SH ASSEMBLER
(phys = 52.)
.br
.B sys phys; segreg; size; physadr