Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ io_burst(3I) — HP-UX ANSI C A.09.00

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

dup(2)

creat(2)

fcntl(2)

open(2)

read(2)

write(2)

gpio_get_status(3I)

gpio_set_ctl(3I)

hpib_io(3I)

hpib_send_cmd(3I)

io_reset(3I)

io_burst(3I)  —  Series 300, 400 Only

NAME

io_burst() − perform low-overhead I/O on an HP-IB/GPIO channel

SYNOPSIS

#include <dvio.h>

int io_burst(int eid, int flag);

DESCRIPTION

io_burst() is used to perform low-overhead burst transfers on the specified HP-IB, or GPIO interface.  eid is the entity identifier for an open HP-IB or GPIO device file returned by a previous call to open(), dup(), creat(), or fcntl() with an FDUPD command option.  flag is an integer which, if non-zero, enables burst mode or, if zero, disables it. 

In burst mode, memory-mapped I/O address space assigned to the interface card select code is mapped directly into user space such that data can be transferred directly between user memory and the interface card, eliminating the need for kernel calls and the associated overhead.  Burst mode affects only read(), write(), gpio_get_status(), gpio_set_ctl(), hpib_io(), and hpib_send_cmd() calls.  All other operations are unaffected.  When burst mode is enabled, the interface is locked so that no other process can access it until burst mode is disabled.  When burst mode is disabled, the interface is reset (see io_reset(3I)). 

RETURN VALUE

io_burst() returns zero if successful or −1 if an error is detected. 

ERRORS

io_burst() fails under any of the following circumstances and sets errno (see errno(2)) to one of the following values:

[EBADF] eid does not refer to an open file. 

[ENOTTY] eid does not refer to an HP-IB or GPIO device special file. 

[EIO] A timeout occurred during the call to ioburst() (Series 300/400 only). 

WARNINGS

Enabling burst mode locks the interface from all other processes,
so it should never be used with any interface that supports a system disk or swap device.

Timeouts for read(), write(), gpio_get_status(), gpio_set_ctl(), hpib_io(), and hpib_send_cmd() do not work while in burst mode, but these commands can be interrupted by signals. 

AUTHOR

io_burst() was developed by HP. 

SEE ALSO

dup(2), creat(2), fcntl(2), open(2), read(2), write(2), gpio_get_status(3I), gpio_set_ctl(3I), hpib_io(3I), hpib_send_cmd(3I), io_reset(3I). 

Hewlett-Packard Company  —  HP-UX Release 9.0: August 1992

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026