HP-UX Reference (11i v3 07/02) - 7 Device (Special) Files, 9 General Information, Index (vol 10)
f
framebuf(7) framebuf(7)
GCID Provide a device identification number. The parameter is defined as
int *arg;.
The information returned when using this command is a subset of the information
provided by
GCDESCRIBE , and is provided here for backward compatibility only.
GCON, GCOFF Turn graphics on or off. These operations are valid for devices whose
CRT_GRAPHICS_ON_OFF bit is set in the
crt_attributes
field of the
crt_frame_buffer_t
data structure returned by the GCDESCRIBE command.
Otherwise, these commands have no effect.
GCAON, GCAOFF Turn alpha on or off. These operations are valid for devices whose
CRT_ALPHA_ON_OFF bit is set in the
crt_attributes
field of the
crt_frame_buffer_t
data structure returned by the GCDESCRIBE
command.
Otherwise, these commands have no effect.
GCMAP Make the frame-buffer memory, graphics control, and other device regions accessible
to the user process making the call. Only processes that request this can directly
access frame-buffer memory and control registers. After a successful
GCMAP call, the
fields
crt_frame_base
and crt_control_base
in the
crt_frame_buffer_t
data structure (returned by a subsequent GCDESCRIBE
ioctl()
call), hold the valid addresses of these two regions of the frame buffer. If,
for a specific device, more than two regions are to be mapped to the user’s address
space, the base addresses of up to CRT_MAX_REGIONS extra device regions will be
placed in the array crt_region in successive order. Only the regions pertinent to
a specific frame buffer are mapped. Irrelevant region fields in the
crt_frame_buffer_t
data structure are set to 0. Use of the arg parameter is
implementation dependent (see DEPENDENCIES below). The base addresses for
frame-buffer regions are always page aligned.
GCUNMAP Cause access to the frame-buffer memory, graphics control, and possibly other device
regions to be removed from the requesting process. The parameter arg is ignored and
should be set to
0. Any attempt to access these memory regions after a successful
GCUNMAP call results in a memory fault and sends the signal SIGSEGV to the pro-
cess.
GCLOCK Provide for exclusive use of the frame-buffer device by cooperating processes. The cal-
ling process either locks the device and continues or is blocked. Blocking in this case
means that the call returns only when the frame buffer is available or when the call is
interrupted by a signal. If the call is interrupted, it returns an error and errno is
set to [EINTR]. Waiting occurs if another process has previously locked this frame
buffer using the
GCLOCK command and has not executed a GCUNLOCK command yet.
The GCLOCK command does not prevent other non-cooperating processes from writ-
ing to the frame buffer; thus, GCLOCK is an advisory lock only. The parameter arg is
ignored and should be set to
0.
This call prevents the Internal Terminal Emulator (ITE) from corrupting the state of
the graphics hardware (see termio(7)). On some systems, as long as the frame buffer
is locked with a GCLOCK command, the ITE does not output text to it (see DEPEN-
DENCIES below). Any attempt to lock the device more than once by the same pro-
cess fails, and causes
errno to be set to [EBUSY].
GCLOCK_NOWAIT Provide for exclusive use of the frame-buffer device by cooperating processes. This
request has the same effect on the frame-buffer device as does the GCLOCK request.
However, this call does not wait for the frame buffer to be released by other processes.
If the frame-buffer device is locked, the process is not blocked; instead, the system call
returns an error and causes errno to be set to [EAGAIN]. The parameter arg is
ignored and should be set to 0.
GCLOCK_BLOCKSIG
Provide for exclusive use of the frame-buffer device by cooperating processes while
blocking all incoming signals for the calling process that otherwise might have been
caught. This call is a superset of the GCLOCK call. The parameter arg is ignored and
should be set to 0. When the display is acquired for exclusive use (and thus locked),
all signals sent to the process that otherwise would have been caught by the process
"at the time of the" GCLOCK call are withheld (blocked) until GCUNLOCK is
requested. Any attempt to modify the signal mask of the process (see sigsetmask(2))
before a GCUNLOCK request is made will not have any effect on these blocked signals.
HP-UX 11i Version 3: February 2007 − 2 − Hewlett-Packard Company 45