aboutsummaryrefslogtreecommitdiff
path: root/unix/os/doc/zfiosf.hlp
diff options
context:
space:
mode:
authorJoe Hunkeler <jhunkeler@gmail.com>2015-08-11 16:51:37 -0400
committerJoe Hunkeler <jhunkeler@gmail.com>2015-08-11 16:51:37 -0400
commit40e5a5811c6ffce9b0974e93cdd927cbcf60c157 (patch)
tree4464880c571602d54f6ae114729bf62a89518057 /unix/os/doc/zfiosf.hlp
downloadiraf-osx-40e5a5811c6ffce9b0974e93cdd927cbcf60c157.tar.gz
Repatch (from linux) of OSX IRAF
Diffstat (limited to 'unix/os/doc/zfiosf.hlp')
-rw-r--r--unix/os/doc/zfiosf.hlp51
1 files changed, 51 insertions, 0 deletions
diff --git a/unix/os/doc/zfiosf.hlp b/unix/os/doc/zfiosf.hlp
new file mode 100644
index 00000000..e618031c
--- /dev/null
+++ b/unix/os/doc/zfiosf.hlp
@@ -0,0 +1,51 @@
+.help zfiosf May84 "System Interface"
+.ih
+NAME
+zfiosf -- static file driver
+.ih
+SYNOPSIS
+.nf
+zopnsf (osfn, mode, chan) # open static file
+zclssf (chan, status) # close static file
+zardsf (chan, buf, maxbytes, loffset) # asynchronous read
+zawrsf (chan, buf, nbytes, loffset) # asynchronous write
+zawtsf (chan, status) # wait for transfer
+zsttsf (chan, param, lvalue) # get file/device status
+
+packed char osfn[]
+char buf[]
+int mode, chan, maxbytes, nbytes, param, status
+long loffset, lvalue
+.fi
+.ih
+DESCRIPTION
+The static file driver is used to randomly access binary files which do not
+change in size once created, hence the term static. Except where noted
+herein, the specifications of the static file driver are equivalent to those
+of the ordinary random access binary file driver.
+
+A static binary file is created by the kernel primitive \fBzfaloc\fR,
+hence \fBzopnsf\fR cannot be used to create a new file (NEW_FILE mode is not
+supported). The asynchronous read and write primitives behave conventionally
+except that writing at EOF or overwriting EOF is not permitted.
+.ih
+NOTES
+The static file driver should provide the lowest possible level of binary
+file i/o for maximum efficiency. Since the file size is known at file creation
+time it is often possible to allocate a contiguous file. Given a contiguous or
+nearly contiguous file which does not change in size it is sometimes possible
+to bypass the host files system once the file has been created, i.e., to
+map the \fBzfiosf\fR primitives directly into calls to the disk driver on the
+host machine.
+
+On a virtual memory machine it may also be possible to map the static file
+into virtual memory, i.e., defer i/o until the file data is actually used.
+If a virtual memory interface is implemented \fBzardsf\fR will remap pages
+of memory, \fBzawrsf\fR will update pages of memory, \fBzawtsf\fR will do
+nothing but return status, and \fBzclssf\fR will update and unmap any
+mapped pages and close the file. See the reference manual for further
+discussion of static file implementation strategies.
+.ih
+SEE ALSO
+zfiobf, manual pages for the binary file driver
+.endhelp