1*c54f35caSApple OSS Distributions<h2>device_read_async</h2> 2*c54f35caSApple OSS Distributions<hr> 3*c54f35caSApple OSS Distributions<p> 4*c54f35caSApple OSS Distributions<strong>System Trap</strong> - Read a sequence of bytes from a device object. 5*c54f35caSApple OSS Distributions<h3>SYNOPSIS</h3> 6*c54f35caSApple OSS Distributions<pre> 7*c54f35caSApple OSS Distributions<strong>kern_return_t device_read_async</strong> 8*c54f35caSApple OSS Distributions <strong>(mach_port_t</strong> <var>device</var>, 9*c54f35caSApple OSS Distributions <strong>mach_port_t</strong> <var>queue</var>, 10*c54f35caSApple OSS Distributions <strong>mach_port_t</strong> <var>request_id</var>, 11*c54f35caSApple OSS Distributions <strong>dev_mode_t</strong> <var>mode</var>, 12*c54f35caSApple OSS Distributions <strong>recnum_t</strong> <var>recnum</var>, 13*c54f35caSApple OSS Distributions <strong>io_buf_len_t</strong> <var>bytes_wanted</var><strong>);</strong> 14*c54f35caSApple OSS Distributions</pre> 15*c54f35caSApple OSS Distributions<h3>PARAMETERS</h3> 16*c54f35caSApple OSS Distributions<dl> 17*c54f35caSApple OSS Distributions<p> 18*c54f35caSApple OSS Distributions<dt> <var>device</var> 19*c54f35caSApple OSS Distributions<dd> 20*c54f35caSApple OSS Distributions[in device send right] A device port to the device to be read. 21*c54f35caSApple OSS Distributions<p> 22*c54f35caSApple OSS Distributions<dt> <var>queue</var> 23*c54f35caSApple OSS Distributions<dd> 24*c54f35caSApple OSS Distributions[in io_done queue send right] The port returned from 25*c54f35caSApple OSS Distributionsio_done_queue_create. 26*c54f35caSApple OSS Distributions<p> 27*c54f35caSApple OSS Distributions<dt> <var>request_id</var> 28*c54f35caSApple OSS Distributions<dd> 29*c54f35caSApple OSS Distributions[in send right] An unique request identifier that will be passed back as 30*c54f35caSApple OSS Distributionspart of the io_done_result structure. 31*c54f35caSApple OSS Distributions<p> 32*c54f35caSApple OSS Distributions<dt> <var>mode</var> 33*c54f35caSApple OSS Distributions<dd> 34*c54f35caSApple OSS Distributions[in scalar] I/O mode value. Meaningful options are: 35*c54f35caSApple OSS Distributions<p> 36*c54f35caSApple OSS Distributions <dl> 37*c54f35caSApple OSS Distributions<dt> <strong>D_NOWAIT</strong> 38*c54f35caSApple OSS Distributions<dd> 39*c54f35caSApple OSS DistributionsDo not wait if data is unavailable. 40*c54f35caSApple OSS Distributions </dl> 41*c54f35caSApple OSS Distributions<p> 42*c54f35caSApple OSS Distributions<dt> <var>recnum</var> 43*c54f35caSApple OSS Distributions<dd> 44*c54f35caSApple OSS Distributions[in scalar] Record number to be read. 45*c54f35caSApple OSS Distributions<p> 46*c54f35caSApple OSS Distributions<dt> <var>bytes_wanted</var> 47*c54f35caSApple OSS Distributions<dd> 48*c54f35caSApple OSS Distributions[in scalar] Size of data transfer. 49*c54f35caSApple OSS Distributions</dl> 50*c54f35caSApple OSS Distributions<h3>DESCRIPTION</h3> 51*c54f35caSApple OSS Distributions<p> 52*c54f35caSApple OSS DistributionsThe <strong>device_read_async</strong> interface enqueues a read operation for a 53*c54f35caSApple OSS Distributionssequence of bytes from a device object. The meaning of recnum as well 54*c54f35caSApple OSS Distributionsas the specific operation performed is device dependent. 55*c54f35caSApple OSS Distributions<h3>RETURN VALUES</h3> 56*c54f35caSApple OSS Distributions<dl> 57*c54f35caSApple OSS Distributions<strong>device_read_async</strong> returns only invalid parameter errors. 58*c54f35caSApple OSS Distributions<dd> 59*c54f35caSApple OSS Distributions</dl> 60*c54f35caSApple OSS Distributions<h3>RELATED INFORMATION</h3> 61*c54f35caSApple OSS Distributions<p> 62*c54f35caSApple OSS DistributionsFunctions: 63*c54f35caSApple OSS Distributions<a href="device_read_async_inband.html"><strong>device_read_async_inband</strong></a>, 64*c54f35caSApple OSS Distributions<a href="DR_overwrite_async.html"><strong>device_read_overwrite_async</strong></a>, 65*c54f35caSApple OSS Distributions<a href="device_write_async.html"><strong>device_write_async</strong></a>, 66*c54f35caSApple OSS Distributions<a href="device_write_async_inband.html"><strong>device_write_async_inband</strong></a>, 67*c54f35caSApple OSS Distributions<a href="io_done_queue_create.html"><strong>io_done_queue_create</strong></a>. 68