<!--
{
  "availability" : [
    "DriverKit: -"
  ],
  "documentType" : "symbol",
  "framework" : "SCSIControllerDriverKit",
  "identifier" : "/documentation/SCSIControllerDriverKit/SCSIUserParallelTask",
  "metadataVersion" : "0.1.0",
  "role" : "Structure",
  "symbol" : {
    "kind" : "Structure",
    "modules" : [
      "SCSIControllerDriverKit"
    ],
    "preciseIdentifier" : "c:@S@SCSIUserParallelTask"
  },
  "title" : "SCSIUserParallelTask"
}
-->

# SCSIUserParallelTask

The properties of a parallel task to perform.

```
typedef struct SCSIUserParallelTask { ... } SCSIUserParallelTask;
```

## Topics

### Task Properties

[`version`](/documentation/SCSIControllerDriverKit/SCSIUserParallelTask/version)

The version of the parallel task structure currently in use.

[`SCSIUserParallelTaskVersion`](/documentation/SCSIControllerDriverKit/SCSIUserParallelTaskVersion)

Constants that represent versions of the user parallel task structure.

[`fTargetID`](/documentation/SCSIControllerDriverKit/SCSIUserParallelTask/fTargetID)

An identifier that represents a SCSI target device.

[`fSCSIParallelFeatureRequest`](/documentation/SCSIControllerDriverKit/SCSIUserParallelTask/fSCSIParallelFeatureRequest)

An array of features of the SCSI parallel interface to negotiate.

[`SCSIParallelFeatureRequest`](/documentation/SCSIControllerDriverKit/SCSIParallelFeatureRequest)

An enumeration of feature negotiation behaviors.

[`fSCSIParallelFeatureRequestCount`](/documentation/SCSIControllerDriverKit/SCSIUserParallelTask/fSCSIParallelFeatureRequestCount)

The number of features to negotiate.

[`fControllerTaskIdentifier`](/documentation/SCSIControllerDriverKit/SCSIUserParallelTask/fControllerTaskIdentifier)

A unique identifier for a task.

[`fRequestedTransferCount`](/documentation/SCSIControllerDriverKit/SCSIUserParallelTask/fRequestedTransferCount)

The requested data transfer count for the request’s data.

[`fBufferIOVMAddr`](/documentation/SCSIControllerDriverKit/SCSIUserParallelTask/fBufferIOVMAddr)

The start address of the generated physical segment of the data buffer.

[`fTaskAttribute`](/documentation/SCSIControllerDriverKit/SCSIUserParallelTask/fTaskAttribute)

The SCSI task attribute of the task.

[`fTaskTagIdentifier`](/documentation/SCSIControllerDriverKit/SCSIUserParallelTask/fTaskTagIdentifier)

A 64-bit number that represents a unique task identifier.

[`fLogicalUnitBytes`](/documentation/SCSIControllerDriverKit/SCSIUserParallelTask/fLogicalUnitBytes)

The request’s logical unit bytes.

[`fCommandDescriptorBlock`](/documentation/SCSIControllerDriverKit/SCSIUserParallelTask/fCommandDescriptorBlock)

The task’s SCSI command descriptor block.

[`fCommandSize`](/documentation/SCSIControllerDriverKit/SCSIUserParallelTask/fCommandSize)

The size of the SCSI command descriptor block in bytes.

[`fTransferDirection`](/documentation/SCSIControllerDriverKit/SCSIUserParallelTask/fTransferDirection)

The direction of data transfer for this task.

[`reserved`](/documentation/SCSIControllerDriverKit/SCSIUserParallelTask/reserved)

An unused field reserved for future use.



---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)