Spec-Zone .ru
спецификации, руководства, описания, API

Библиотека разработчика Mac

Разработчик

Ссылка IOSCSIProtocolInterface.h

Опции
Развертывание Target:

На этой странице

Ссылка IOSCSIProtocolInterface.h

Этот файл содержит определения для класса IOSCSIProtocolInterface, Функции Протокола SCSI, использованные этим интерфейсом и дополнительными константами, используемыми этим интерфейсом.

Включенные заголовки

  • <IOKit/storage/IOStorageDeviceCharacteristics.h>

  • <TargetConditionals.h>

  • <kern/thread.h>

  • <IOKit/IOLib.h>

  • <IOKit/IOService.h>

  • <IOKit/IOCommandGate.h>

  • <IOKit/IOWorkLoop.h>

  • <IOKit/scsi/SCSITask.h>

Типы данных

Посмотрите раздел Overview выше для документации уровня заголовка.

  • Объявление

    Objective C

    typedef UInt32 SCSIProtocolFeature;

    Обсуждение

    Определение типа для SCSIProtocolFeature, 32-разрядного количества.

    Оператор импорта

    Objective C

    #include <IOSCSIProtocolInterface.h>;

    Доступность

    Доступный в OS X v10.0 и позже.

  • Объявление

    Objective C

    typedef UInt32 SCSIProtocolPowerState;

    Обсуждение

    Определение типа для SCSIProtocolPowerState, 32-разрядного количества.

    Оператор импорта

    Objective C

    #include <IOSCSIProtocolInterface.h>;

    Доступность

    Доступный в OS X v10.6 и позже.

Константы

Посмотрите раздел Overview выше для документации уровня заголовка.

  • Объявление

    Objective C

    #define kCFBundleIdentifierKey "CFBundleIdentifier" #define kIOPropertyAutonomousSpinDownKey "Autonomous Spin Down" #define kIOPropertyDoNotPreventMediumRemovalKey "Do Not Prevent Medium Removal" #define kIOPropertyEjectRequireStartStopUnitKey "Eject Requires START_STOP_UNIT" #define kIOPropertyReadTimeOutDurationKey "Read Time Out Duration" #define kIOPropertyRetryCountKey "Retry Count" #define kIOPropertySCSIDeviceCharacteristicsKey "SCSI Device Characteristics" #define kIOPropertySCSIInquiryLengthKey "Inquiry Length" #define kIOPropertySCSIManualEjectKey "Manual Eject" #define kIOPropertyWriteTimeOutDurationKey "Write Time Out Duration" #define kIOSCSIArchitectureBundleIdentifierKey "com.apple.iokit.IOSCSIArchitectureModelFamily"

    Константы

    • kCFBundleIdentifierKey

      kCFBundleIdentifierKey

      Ключ Property для CFBundleIdentifier.

      Доступный в OS X v10.6 и позже.

    • kIOPropertyAutonomousSpinDownKey

      kIOPropertyAutonomousSpinDownKey

      Этот ключ используется, чтобы указать, что устройство, как известно, имеет свою собственную внутреннюю логику для вращения бездействующего диска вниз. Этот ключ используется для маркировки устройства, которые плохо реагируют на наши усилия вручную вращаться вниз или вращать устройство, когда это уже находится в требуемом состоянии.

      Доступный в OS X v10.6 и позже.

    • kIOPropertyDoNotPreventMediumRemovalKey

      kIOPropertyDoNotPreventMediumRemovalKey

      Этот ключ используется, чтобы указать, что устройство или не требует или отвечает хорошо на PREVENT_ALLOW_MEDIUM_REMOVAL. Это свойство указывает, что PREVENT_ALLOW_MEDIUM_REMOVAL не должен использоваться с указанным устройством.

      Доступный в OS X v10.9 и позже.

    • kIOPropertyEjectRequireStartStopUnitKey

      kIOPropertyEjectRequireStartStopUnitKey

      Этот ключ используется, чтобы указать, что, в то время как устройство, возможно, привело REMOVAL PREVENT_ALLOW_MEDIUM к сбою, это все еще требует, чтобы START_STOP_UNIT извлек/разгрузил носители.

      Доступный в OS X v10.6 и позже.

    • kIOPropertyReadTimeOutDurationKey

      kIOPropertyReadTimeOutDurationKey

      Этот ключ используется для определения Времени чтения для определенного устройства. Это свойство переопределяет все значения по умолчанию протокола. Это свойство является значением в миллисекундах.

      Доступный в OS X v10.2 и позже.

    • kIOPropertyRetryCountKey

      kIOPropertyRetryCountKey

      Этот ключ используется для определения числа повторений Чтения-записи для определенного устройства. Это свойство переопределяет все значения по умолчанию протокола. Значение является UInt32, соответствующим числу повторений.

      Доступный в OS X v10.5 и позже.

    • kIOPropertySCSIDeviceCharacteristicsKey

      kIOPropertySCSIDeviceCharacteristicsKey

      Этот ключ используется для определения Характеристик устройства SCSI для определенного устройства. Это - ключ для словаря, содержащего ключи характеристик. Эти ключи только определяются между Протокольным уровнем SCSI и SCSI Уровень Applicaiton. Некоторые свойства могут быть скопированы от этого словаря до более универсальных Характеристик устройства или словарей Характеристик Протокола.

      Доступный в OS X v10.1 и позже.

    • kIOPropertySCSIInquiryLengthKey

      kIOPropertySCSIInquiryLengthKey

      Этот ключ используется для определения длины INQUIRY по умолчанию для выпуска к устройству. Значение является UInt32, соответствующим числу байтов для запроса в команде INQUIRY.

      Доступный в OS X v10.1 и позже.

    • kIOPropertySCSIManualEjectKey

      kIOPropertySCSIManualEjectKey

      Этот ключ используется, чтобы указать, что устройство, как известно, является ручным выбрасываемым устройством хранения данных. Это свойство переопределяет все проверки драйвера на определение этой возможности. Это свойство является строкой, несмотря на то, что, если оно существует, это должна всегда быть истина.

      Доступный в OS X v10.1 и позже.

    • kIOPropertyWriteTimeOutDurationKey

      kIOPropertyWriteTimeOutDurationKey

      Этот ключ используется для определения Времени записи для определенного устройства. Это свойство переопределяет все значения по умолчанию протокола. Это свойство является значением в миллисекундах.

      Доступный в OS X v10.2 и позже.

    • kIOSCSIArchitectureBundleIdentifierKey

      kIOSCSIArchitectureBundleIdentifierKey

      Идентификатор IOSCSIArchitectureModelFamily CFBundle.

      Доступный в OS X v10.6 и позже.

  • Объявление

    Objective C

    enum { /*! */ kSCSIProtocolFeature_ACA = 1, /*! */ kSCSIProtocolFeature_CPUInDiskMode = 2, /*! */ kSCSIProtocolFeature_ProtocolSpecificPolling = 3, /*! */ kSCSIProtocolFeature_ProtocolSpecificSleepCommand = 4, /*! */ kSCSIProtocolFeature_GetMaximumLogicalUnitNumber = 5, /*! */ kSCSIProtocolFeature_MaximumReadBlockTransferCount = 6, /*! */ kSCSIProtocolFeature_MaximumWriteBlockTransferCount = 7, /*! */ kSCSIProtocolFeature_MaximumReadTransferByteCount = 8, /*! */ kSCSIProtocolFeature_MaximumWriteTransferByteCount = 9, /*! */ kSCSIProtocolFeature_SubmitDefaultInquiryData = 10, /*! */ kSCSIProtocolFeature_ProtocolAlwaysReportsAutosenseData = 11, /*! */ kSCSIProtocolFeature_ProtocolSpecificPowerOff = 12, /*! */ kSCSIProtocolFeature_ProtocolSpecificPowerControl = 13, /*! */ kSCSIProtocolFeature_ProtocolSpecificAsyncNotification = 14, /*! */ kSCSIProtocolFeature_HierarchicalLogicalUnits = 15, /*! */ kSCSIProtocolFeature_MultiPathing = 16 };

    Константы

    • kSCSIProtocolFeature_ACA

      kSCSIProtocolFeature_ACA

      Еще используемый.

      Доступный в OS X v10.0 и позже.

    • kSCSIProtocolFeature_CPUInDiskMode

      kSCSIProtocolFeature_CPUInDiskMode

      Используемый, чтобы определить, поддерживает ли Драйвер SCSI Protocol Services CPU, который находится в режиме целевого диска.

      Доступный в OS X v10.0 и позже.

    • kSCSIProtocolFeature_ProtocolSpecificPolling

      kSCSIProtocolFeature_ProtocolSpecificPolling

      Используемый, чтобы определить, поддерживает ли Драйвер SCSI Protocol Services протокол определенный опрос относительно носителей. Это используется для низкой мощности, опрашивающей в частности относительно устройств ATAPI на шинах ATA

      Доступный в OS X v10.6 и позже.

    • kSCSIProtocolFeature_ProtocolSpecificSleepCommand

      kSCSIProtocolFeature_ProtocolSpecificSleepCommand

      Используемый, чтобы определить, поддерживает ли Драйвер SCSI Protocol Services протокол определенные команды сна к диску. Это используется для дисков сна в частности устройства ATAPI на шинах ATA.

      Доступный в OS X v10.6 и позже.

    • kSCSIProtocolFeature_GetMaximumLogicalUnitNumber

      kSCSIProtocolFeature_GetMaximumLogicalUnitNumber

      Если Драйвер SCSI Protocol Services будет поддерживать логические единицы, то он сообщит о максимальном адресуемом ID, который он поддерживает в указателе UInt32, передающемся в как serviceValue. Если только один модуль поддерживается, драйвер должен возвратить false для этого запроса.

      Доступный в OS X v10.6 и позже.

    • kSCSIProtocolFeature_MaximumReadBlockTransferCount

      kSCSIProtocolFeature_MaximumReadBlockTransferCount

      Если Драйвер SCSI Protocol Services будет иметь максимальное количество блоков, которые могут быть переданы в запросе чтения, то он возвратит true к этому запросу и возвратит блочное количество в указателе UInt32, передающемся в как serviceValue.

      Доступный в OS X v10.6 и позже.

    • kSCSIProtocolFeature_MaximumWriteBlockTransferCount

      kSCSIProtocolFeature_MaximumWriteBlockTransferCount

      Если Драйвер SCSI Protocol Services будет иметь максимальное количество блоков, которые могут быть переданы в запросе записи, то он возвратит true к этому запросу и возвратит блочное количество в указателе UInt32, передающемся в как serviceValue.

      Доступный в OS X v10.6 и позже.

    • kSCSIProtocolFeature_MaximumReadTransferByteCount

      kSCSIProtocolFeature_MaximumReadTransferByteCount

      Если Драйвер SCSI Protocol Services будет иметь максимальное количество байта, которое может быть передано в запросе чтения, то он возвратит true к этому запросу и возвратит количество байта в указателе UInt64, передающемся в как serviceValue.

      Доступный в OS X v10.6 и позже.

    • kSCSIProtocolFeature_MaximumWriteTransferByteCount

      kSCSIProtocolFeature_MaximumWriteTransferByteCount

      Если Драйвер SCSI Protocol Services будет иметь максимальное количество байта, которое может быть передано в запросе записи, то он возвратит true к этому запросу и возвратит количество байта в указателе UInt64, передающемся в как serviceValue.

      Доступный в OS X v10.6 и позже.

    • kSCSIProtocolFeature_SubmitDefaultInquiryData

      kSCSIProtocolFeature_SubmitDefaultInquiryData

      Если Драйверу SCSI Protocol Services будет нужна дополнительная информация для установки каких-либо настроек согласования от стандартных данных INQUIRY, то это вызовут для установки этого соответственно. serviceValue укажет на буфер SCSICmd_INQUIRY_StandardData. Размер буфера зависит от словаря Характеристик устройства SCSI для устройства или шины. Если не будет никакого kIOPropertySCSIInquiryLengthKey набора значений в словаре или если он не будет существовать, то размер данных будет размером полной суммы Запроса, полученного от устройства.

      Доступный в OS X v10.6 и позже.

    • kSCSIProtocolFeature_ProtocolAlwaysReportsAutosenseData

      kSCSIProtocolFeature_ProtocolAlwaysReportsAutosenseData

      Если Драйвер SCSI Protocol Services всегда сообщает доступный, распознают данные автоматически, когда kSCSITaskStatus_CHECK_CONDITION установлен, то протокольный уровень должен возвратить true. Например, транспортные драйверы FireWire должны ответить истина на это.

      Доступный в OS X v10.6 и позже.

    • kSCSIProtocolFeature_ProtocolSpecificPowerOff

      kSCSIProtocolFeature_ProtocolSpecificPowerOff

      Если поддержки Драйвера SCSI Protocol Services, удаляющие питание к диску, то протокольный уровень должен возвратить true. Это используется для агрессивного управления питанием, в частности для устройств ATAPI на шинах ATA.

      Доступный в OS X v10.6 и позже.

    • kSCSIProtocolFeature_ProtocolSpecificPowerControl

      kSCSIProtocolFeature_ProtocolSpecificPowerControl

      Используемый, чтобы определить, если поддержки Драйвера SCSI Protocol Services, переключающие питание на диск на и прочь. Это используется для агрессивного управления питанием, в частности для устройств SATAPI на шинах AHCI.

      Доступный в OS X v10.6 и позже.

    • kSCSIProtocolFeature_ProtocolSpecificAsyncNotification

      kSCSIProtocolFeature_ProtocolSpecificAsyncNotification

      Используемый, чтобы определить, поддерживает ли Драйвер SCSI Protocol Services асинхронные уведомления от диска. Это используется для предотвращения опроса относительно носителей, в частности относительно устройств SATAPI на шинах AHCI.

      Доступный в OS X v10.6 и позже.

    • kSCSIProtocolFeature_HierarchicalLogicalUnits

      kSCSIProtocolFeature_HierarchicalLogicalUnits

      kSCSIProtocolFeature_HierarchicalLogicalUnits: Если уровень SCSI Protocol Services поддерживает иерархические логические единицы, то уровень служб протокола должен сообщить об истине и использовать IOSCSIProtocolServices:: GetLogicalUnitBytes () для получения полных 8 байтов информации о ЛУНЕ.

      Доступный в OS X v10.7 и позже.

    • kSCSIProtocolFeature_MultiPathing

      kSCSIProtocolFeature_MultiPathing

      kSCSIProtocolFeature_MultiPathing: Если уровень SCSI Protocol Services поддерживает мультисоединение каналом, то уровень служб протокола должен сообщить об истине. Это используется для поддержки разнообразных путей к логической единице путем создания объекта IOSCSIMultipathedLogicalUnit.

      Доступный в OS X v10.7 и позже.

    Обсуждение

    Список Функций Протокола SCSI в настоящее время поддерживается.

  • Объявление

    Objective C

    enum { kSCSIProtocolNotification_DeviceRemoved = 0x69000010, kSCSIProtocolNotification_VerifyDeviceState = 0x69000020, kSCSIServicesNotification_ExclusivityChanged = 0x69000030 };

    Константы

    • kSCSIProtocolNotification_DeviceRemoved

      kSCSIProtocolNotification_DeviceRemoved

      Личное сообщение отправило между поставщиком услуг протокола SCSI и драйвером прикладного уровня SCSI для указания удаления устройства.

      Доступный в OS X v10.0 и позже.

    • kSCSIProtocolNotification_VerifyDeviceState

      kSCSIProtocolNotification_VerifyDeviceState

      Личное сообщение, отправленное между поставщиком услуг протокола SCSI и драйвером прикладного уровня SCSI для указания состояния устройства, возможно, изменилось, и состояние устройства должно быть повторно проверено драйвером Прикладного уровня SCSI. Примером был бы сброс шины, очищающий состояние блокировки лотка устройства ATAPI.

      Доступный в OS X v10.0 и позже.

    • kSCSIServicesNotification_ExclusivityChanged

      kSCSIServicesNotification_ExclusivityChanged

      Когда изменение в состоянии эксклюзивности происходит, сообщение отправило. Обычно в ответ на получение/выпуск эксклюзивного доступа к устройству через пользовательский клиент.

      Доступный в OS X v10.6 и позже.

    Обсуждение

    Сообщение оценивает за Уведомления Устройства Интерфейса протоколов SCSI.

  • Объявление

    Objective C

    enum { /*! */ kSCSIProtocolPowerStateOff = 0, /*! */ kSCSIProtocolPowerStateOn = 1 };

    Константы

    • kSCSIProtocolPowerStateOff

      kSCSIProtocolPowerStateOff

      От состояния электропитания.

      Доступный в OS X v10.6 и позже.

    • kSCSIProtocolPowerStateOn

      kSCSIProtocolPowerStateOn

      На состоянии электропитания.

      Доступный в OS X v10.6 и позже.

    Обсуждение

    Список Состояний электропитания Протокола SCSI.