PHYS(2) — Unix Programmer’s Manual
NAME
phys − allow a process to access physical addresses (2BSD)
SYNOPSIS
phys(segreg, size, physaddr)
unsigned int segreg, size, physaddr;
DESCRIPTION
The argument segreg specifies a process virtual (data-space) address range of 8K bytes starting at virtual address segreg×8K bytes. This address range is mapped into physical address physaddr×64 bytes. Only the first size×64 bytes of this mapping is addressable. If size is zero, any previous mapping of this virtual address range is nullified. For example, the call
phys(7, 1, 0177775);
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.
This call may only be executed by the super-user.
ERRORS
[EPERM] The process’s effective user ID is not the super-user.
[EINVAL] Segreg is less than 0 or greater than 7.
[EINVAL] Size is less than 0 or greater than 128.
SEE ALSO
PDP-11 segmentation hardware
BUGS
On systems with ENABLE/34(tm) memory mapping boards, phys cannot be used to map in the I/O page.
This system call is very dangerous. It is not considered a permanent part of the system.
Phys is unique to the PDP-11 and 2BSD; its use is discouraged.
2nd Berkeley Distribution — January 22, 1987