PHYS(2) UNIX Programmer's Manual PHYS(2) NAME phys - allow a process to access physical addresses (2BSD) SYNOPSIS phys(segreg, size, physaddr) unsigned int segreg, size, physaddr; DESCRIPTION The argument _s_e_g_r_e_g specifies a process virtual (data-space) address range of 8K bytes starting at virtual address _s_e_g_r_e_gx8K bytes. This address range is mapped into physical address _p_h_y_s_a_d_d_rx64 bytes. Only the first _s_i_z_ex64 bytes of this mapping is addressable. If _s_i_z_e 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] _S_e_g_r_e_g is less than 0 or greater than 7. [EINVAL] _S_i_z_e is less than 0 or greater than 128. SEE ALSO PDP-11 segmentation hardware BUGS On systems with ENABLE/34(tm) memory mapping boards, _p_h_y_s 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. _P_h_y_s is unique to the PDP-11 and 2BSD; its use is discouraged. Printed 11/26/99 January 22, 1987 1