Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 29 Nov 1997 20:36:32 -0800 (PST)
From:      John Dyson <dyson@FreeBSD.ORG>
To:        cvs-committers@FreeBSD.ORG, cvs-all@FreeBSD.ORG, cvs-sys@FreeBSD.ORG
Subject:   cvs commit: src/sys/kern vfs_aio.c
Message-ID:  <199711300436.UAA27916@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help
dyson       1997/11/29 20:36:32 PST

  Modified files:
    sys/kern             vfs_aio.c 
  Log:
  Finish up the vast majority of the AIO/LIO functionality.  Proper signal
  support was missing in the previous version of the AIO code.  More
  tunables added, and very efficient support for VCHR files has been added.
  Kernel threads are not used for VCHR files, all work for such files is
  done for the requesting process directly.  Some attempt has been made to
  charge the requesting process for resource utilization, but more work
  is needed.  aio_fsync is still missing (but the original fsync system
  call can be used for now.)  aio_cancel is essentially a noop, but that
  is okay per POSIX.  More aio_cancel functionality can be added later,
  if it is found to be needed.
  
  The functions implemented include:
  	aio_read, aio_write, lio_listio, aio_error, aio_return,
  	aio_cancel, aio_suspend.
  
  The code has been implemented to support the POSIX spec 1003.1b
  (formerly known as POSIX 1003.4 spec) features of the above.  The
  async I/O features are truly async, with the VCHR mode of operation
  being essentially the same as physio (for appropriate files) for
  maximum efficiency.  This code also supports the signal capability,
  is highly tunable, allowing management of resource usage, and
  has been written to allow a per process usage quota.
  
  Both the O'Reilly POSIX.4 book and the actual POSIX 1003.1b document
  were the reference specs used.  Any filedescriptor can be used with
  these new system calls.  I know of no exceptions where these
  system calls will not work.  (TTY's will also probably work.)
  
  Revision  Changes    Path
  1.14      +552 -106  src/sys/kern/vfs_aio.c



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199711300436.UAA27916>