System Trap -- Read a sequence of bytes from a specific device into my address space.
kern_return_t device_read_overwrite
(mach_port_t device,
dev_mode_t mode,
recnum_t recnum,
io_buf_len_t bytes_wanted,
io_buf_pointer_t data,
mach_msg_type_number_t data_count);
kern_return_t device_read_overwrite_request
(mach_port_t device,
mach_port_t reply_port,
dev_mode_t mode,
recnum_t recnum,
io_buf_len_t bytes_wanted,
io_buf_pointer_t data);
kern_return_t ds_device_read_reply_overwrite
(mach_port_t reply_port,
kern_return_t return_code,
io_buf_len_t data_count);
The device_read_overwrite system trap reads a sequence of bytes from a device object directly into the caller's address space. The meaning of recnum as well as the specific operation performed is device dependent.
The device_read_overwrite_request and device_read_reply_overwrite calls may be removed from the interface in favor of new asynchronous support.
Only generic errors apply.
Functions: device_read, device_read_inband, device_reply_server.