Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10.2 11/03/84 (WLS Mods); site astrovax.UUCP Path: utzoo!watmath!clyde!burl!ulysses!allegra!princeton!astrovax!wls From: wls@astrovax.UUCP (William L. Sebok) Newsgroups: net.unix Subject: Re: Asynchronous I/O on UNIX? Message-ID: <692@astrovax.UUCP> Date: Mon, 2-Dec-85 16:21:34 EST Article-I.D.: astrovax.692 Posted: Mon Dec 2 16:21:34 1985 Date-Received: Tue, 3-Dec-85 20:15:09 EST References: <248@well.UUCP> <241@ll-xn.ARPA> <604@unisoft.UUCP> Reply-To: wls@astrovax.UUCP (William L. Sebok) Organization: Princeton Univ. Astrophysics Lines: 17 In article <604@unisoft.UUCP> paul@unisoft.UUCP (n) writes: > The major problem in implementation under Unix is the concept of IO >context, with Unix an IO's context (u_base, u_count, u_offset) are in a >processes 'udot' if you are going to be doing multiple IO's you need to be >able to send this information to the device with the queued IO (you also have >to send the process ID, the completion routine's virtual address and the >parameter you are going to give to the completion routine). I noticed that in the transition from the 4.1 BSD to the 4.2 BSD kernel, references in the i/o drivers to u.u_base, u.u_count, u.u_offset are replaced by references to members of a uio structure. This was the only change (that I remember) that I had to make in some locally written drivers I ported. I wondered and still wonder if this change means that support of asynchronous i/o is in the works in BSD. -- Bill Sebok Princeton University, Astrophysics {allegra,akgua,cbosgd,decvax,ihnp4,noao,philabs,princeton,vax135}!astrovax!wls