Поделиться через


Модель данных MB

Модель драйвера MB использует модель данных, которая состоит из набора объектов, определенных как абстракции функций мб устройства. Каждый объект идентифицируется уникальным идентификатором объекта (OID) и определяется набором соответствующих атрибутов. Набор атрибутов организован в структуру данных. Для управления устройством служба MB и драйвер мини-порта MB обмениваются идентификаторами OID и связанными с ними структурами данных на основе запросов OID и указаний, предоставляемых спецификацией интерфейса сетевого драйвера (NDIS).

В модели драйвера MB для запросов OID используются только операции задания и запроса . Модель драйвера MB не использует операции с методами . Для указания модели драйвера MB используются уведомления о событиях и транзакциях для указания изменений состояния в объектах устройства в МБ. Уведомления о транзакциях также сигналит о завершении асинхронной транзакции.

В следующих таблицах перечислены идентификаторы OID и указания состояния, определенные для драйверов мини-порта MB, а также связанные структуры данных. Драйверы мини-порта MB должны реализовывать все обязательные общие идентификаторы OID, необходимые спецификации NDIS 6.20. Список общих OID для NDIS 6.x см. в разделе Общие операционные OID.

Кроме того, драйверы mb miniport должны реализовывать OID_GEN_PHYSICAL_MEDIUM даже если спецификация NDIS описывает их как необязательные для реализации.

Синтаксис и семантика идентификаторов OID MB, перечисленных в следующей таблице, описаны в разделе Оперативная семантика МБ.

WWAN-Specific OID

OID и соответствующая структура данных Set, Windows 7 Set, Windows 8 Запрос, Windows 7 Запрос, Windows 8 GSM/CDMA
OID_WWAN_DRIVER_CAPS использует NDIS_WWAN_DRIVER_CAPS Не поддерживается Не поддерживается S S GSM, CDMA
OID_WWAN_DEVICE_CAPS не имеет соответствующей структуры Не поддерживается Не поддерживается Объект Объект GSM, CDMA
OID_WWAN_READY_INFO не имеет соответствующей структуры Не поддерживается. Не поддерживается Объект Объект GSM, CDMA
OID_WWAN_SERVICE_ACTIVATION† использует NDIS_WWAN_SERVICE_ACTIVATION Объект Объект Не поддерживается Не поддерживается GSM, CDMA
OID_WWAN_RADIO_STATE использует NDIS_WWAN_SET_RADIO_STATE Объект Объект Объект Объект GSM, CDMA
OID_WWAN_PIN использует NDIS_WWAN_SET_PIN A Не поддерживается A Не поддерживается GSM, CDMA
OID_WWAN_PIN_LIST не имеет соответствующей структуры Не поддерживается Не поддерживается Объект Объект GSM, CDMA
OID_WWAN_PIN_EX использует NDIS_WWAN_SET_PIN_EX Не поддерживается A Не поддерживается A GSM, CDMA
OID_WWAN_HOME_PROVIDER не имеет соответствующей структуры Не поддерживается Не поддерживается Объект Объект GSM, CDMA
OID_WWAN_PREFERRED_PROVIDERS† использует NDIS_WWAN_SET_PREFERRED_PROVIDERS Объект Объект Объект Объект Только ДЛЯ GSM
OID_WWAN_VISIBLE_PROVIDERS не имеет соответствующей структуры Не поддерживается Не поддерживается Объект Объект GSM
OID_WWAN_REGISTER_STATE использует NDIS_WWAN_SET_REGISTER_STATE Объект Объект Объект Объект CDMA
OID_WWAN_SIGNAL_STATE использует NDIS_WWAN_SET_SIGNAL_INDICATION Объект Объект Объект Объект GSM, CDMA
OID_WWAN_PACKET_SERVICE использует NDIS_WWAN_SET_PACKET_SERVICE Объект Объект Объект Объект GSM, CDMA
OID_WWAN_PROVISIONED_CONTEXTS†† использует NDIS_WWAN_SET_PROVISIONED_CONTEXT Объект Объект Объект Объект GSM, CDMA
OID_WWAN_CONNECT использует NDIS_WWAN_SET_CONTEXT_STATE Объект Объект Объект Объект GSM, CDMA
OID_WWAN_SMS_CONFIGURATION использует NDIS_WWAN_SET_SMS_CONFIGURATION Объект Объект Объект Объект GSM, CDMA
OID_WWAN_SMS_READ использует NDIS_WWAN_SMS_READ Не поддерживается Объект Объект Объект GSM, CDMA
OID_WWAN_SMS_SEND использует NDIS_WWAN_SMS_SEND Объект Объект Не поддерживается Не поддерживается GSM, CDMA
OID_WWAN_SMS_DELETE использует NDIS_WWAN_SMS_DELETE Объект Объект Не поддерживается Не поддерживается GSM, CDMA
OID_WWAN_SMS_STATUS использует NDIS_WWAN_SMS_STATUS Не поддерживается Не поддерживается Объект Объект GSM, CDMA
OID_WWAN_VENDOR_SPECIFIC† использует определяемую поставщиком структуру Объект Объект Не поддерживается Не поддерживается GSM, CDMA
OID_WWAN_DEVICE_SERVICES не имеет соответствующей структуры Не поддерживается Не поддерживается Не поддерживается A GSM, CDMA
OID_WWAN_SUBSCRIBE_DEVICE_SERVICE_EVENTS использует NDIS_WWAN_SUBSCRIBE_DEVICE_SERVICE_EVENTS Не поддерживается A Не поддерживается Не поддерживается GSM, CDMA
OID_WWAN_AUTH_CHALLENGE использует NDIS_WWAN_AUTH_CHALLENGE Не поддерживается Не поддерживается Не поддерживается A GSM, CDMA
OID_WWAN_USSD использует NDIS_WWAN_USSD_REQUEST Не поддерживается A Не поддерживается Не поддерживается GSM
OID_WWAN_DEVICE_SERVICE_COMMAND использует NDIS_WWAN_DEVICE_SERVICE_COMMAND Не поддерживается A Не поддерживается A GSM, CDMA

Примечание

Следующие примечания относятся к предыдущей таблице: † представляет необязательные идентификаторы OID, которые могут поддерживать драйверы мини-портов. Драйверы минипорта, которые не поддерживают необязательные идентификаторы OID, не должны возвращать их в OID_GEN_SUPPORTED_LIST.

†† представляет драйверы минипорта, поддерживающие устройства на основе СТАНДАРТА GSM, которые могут при необходимости поддерживать операции установки OID_WWAN_PROVISIONED_CONTEXTS и запросов. Драйверы мини-портов, поддерживающие устройства на основе CDMA, могут при необходимости поддерживать OID_WWAN_PROVISIONED_CONTEXTS операции запросов для устройств на основе CDMA, которые сообщают о простом IP-адресе (WWAN_CTRL_CAPS_CDMA_SIMPLE_IP).

Драйверы минипорта должны поддерживать все необязательные идентификаторы OID. Служба MB может игнорировать любой драйвер минипорта, который не сообщает обо всех обязательных идентификаторах OID.

"A" и "S" в столбцах Операции set и Query в предыдущей таблице отражают характер транзакции для выполнения запроса OID: "A" означает асинхронную транзакцию, а "S" — синхронную.

Структуры данных в предыдущей таблице соответствуют идентификаторам операций задания и возвращают данные для OID синхронных операций запроса.

Следующие идентификаторы OID используют общую структуру данных списка переменной длины, которая называется WWAN_LIST_HEADER в соответствующих структурах данных:

  • OID_WWAN_READY_INFO
  • OID_WWAN_PREFERRED_PROVIDERS
  • OID_WWAN_VISIBLE_PROVIDERS
  • OID_WWAN_PROVISIONED_CONTEXTS
  • OID_WWAN_SMS_READ

WWAN-Specific индикации, соответствующие структуры данных и редакции ОС

Индикация и соответствующая структура данных

Редакция Windows 7

Редакция Windows 8

NDIS_STATUS_WWAN_DEVICE_CAPS

использует NDIS_WWAN_DEVICE_CAPS

NDIS_WWAN_DEVICE_CAPS_REVISION_1

NDIS_WWAN_DEVICE_CAPS_REVISION_2

NDIS_STATUS_WWAN_READY_INFO

использует NDIS_WWAN_READY_INFO

NDIS_WWAN_READY_INFO_REVISION_1

NDIS_WWAN_READY_INFO_REVISION_1

NDIS_STATUS_WWAN_RADIO_STATE

использует NDIS_WWAN_RADIO_STATE

NDIS_WWAN_RADIO_STATE_REVISION_1

NDIS_WWAN_RADIO_STATE_REVISION_1

NDIS_STATUS_WWAN_PIN_INFO

использует NDIS_WWAN_PIN_INFO

NDIS_WWAN_PIN_INFO_REVISION_1

NDIS_WWAN_PIN_INFO_REVISION_1

NDIS_STATUS_WWAN_PIN_LIST

использует NDIS_WWAN_PIN_LIST

NDIS_WWAN_PIN_LIST_REVISION_1

NDIS_WWAN_PIN_LIST_REVISION_1

NDIS_STATUS_WWAN_SERVICE_ACTIVATION

использует NDIS_WWAN_SERVICE_ACTIVATION_STATUS

NDIS_WWAN_SERVICE_ACTIVATION_STATUS_REVISION_1

NDIS_WWAN_SERVICE_ACTIVATION_STATUS_REVISION_1

NDIS_STATUS_WWAN_HOME_PROVIDER

использует NDIS_WWAN_HOME_PROVIDER

NDIS_WWAN_HOME_PROVIDER_REVISION_1

NDIS_WWAN_HOME_PROVIDER_REVISION_1

NDIS_STATUS_WWAN_PREFERRED_PROVIDERS

использует NDIS_WWAN_PREFERRED_PROVIDERS

NDIS_WWAN_PREFERRED_PROVIDERS_REVISION_1

NDIS_WWAN_PREFERRED_PROVIDERS_REVISION_1

NDIS_STATUS_WWAN_VISIBLE_PROVIDERS

использует NDIS_WWAN_VISIBLE_PROVIDERS

NDIS_WWAN_VISIBLE_PROVIDERS_REVISION_1

NDIS_WWAN_VISIBLE_PROVIDERS_REVISION_1

NDIS_STATUS_WWAN_REGISTER_STATE

использует NDIS_WWAN_REGISTRATION_STATE

NDIS_WWAN_REGISTRATION_STATE_REVISION_1

NDIS_WWAN_REGISTRATION_STATE_REVISION_2

NDIS_STATUS_WWAN_SIGNAL_STATE

использует NDIS_WWAN_SIGNAL_STATE

NDIS_WWAN_SIGNAL_STATE_REVISION_1

NDIS_WWAN_SIGNAL_STATE_REVISION_1

NDIS_STATUS_WWAN_PACKET_SERVICE

использует NDIS_WWAN_PACKET_SERVICE_STATE

NDIS_WWAN_PACKET_SERVICE_STATE_REVISION_1

NDIS_WWAN_PACKET_SERVICE_STATE_REVISION_1

NDIS_STATUS_WWAN_PROVISIONED_CONTEXTS

использует NDIS_WWAN_PROVISIONED_CONTEXTS

NDIS_WWAN_PROVISIONED_CONTEXTS_REVISION_1

NDIS_WWAN_PROVISIONED_CONTEXTS_REVISION_1

NDIS_STATUS_WWAN_CONTEXT_STATE

использует NDIS_WWAN_CONTEXT_STATE

NDIS_WWAN_CONTEXT_STATE_REVISION_1

NDIS_WWAN_CONTEXT_STATE_REVISION_1

NDIS_STATUS_WWAN_SMS_CONFIGURATION

использует NDIS_WWAN_SMS_CONFIGURATION

NDIS_WWAN_SMS_CONFIGURATION_REVISION_1

NDIS_WWAN_SMS_CONFIGURATION_REVISION_1

NDIS_STATUS_WWAN_SMS_RECEIVE

использует NDIS_WWAN_SMS_RECEIVE

NDIS_WWAN_SMS_RECEIVE_REVISION_1

NDIS_WWAN_SMS_RECEIVE_REVISION_1

NDIS_STATUS_WWAN_SMS_SEND

использует NDIS_WWAN_SMS_SEND_STATUS

NDIS_WWAN_SMS_SEND_STATUS_REVISION_1

NDIS_WWAN_SMS_SEND_STATUS_REVISION_1

NDIS_STATUS_WWAN_SMS_DELETE

использует NDIS_WWAN_SMS_DELETE_STATUS

NDIS_WWAN_SMS_DELETE_STATUS_REVISION_1

NDIS_WWAN_SMS_DELETE_STATUS_REVISION_1

NDIS_STATUS_WWAN_SMS_STATUS

использует NDIS_WWAN_SMS_STATUS

NDIS_WWAN_SMS_STATUS_REVISION_1

NDIS_WWAN_SMS_STATUS_REVISION_1

NDIS_STATUS_WWAN_VENDOR_SPECIFIC

использует определяемую поставщиком структуру

Н/Д

NDIS_STATUS_WWAN_USSD

использует NDIS_WWAN_USSD_EVENT

NDIS_WWAN_USSD_EVENT_REVISION_1

NDIS_WWAN_USSD_EVENT_REVISION_1

NDIS_STATUS_WWAN_DEVICE_SERVICE_SUPPORTED_COMMANDS

использует NDIS_WWAN_DEVICE_SERVICE_SUPPORTED_COMMANDS

NDIS_WWAN_DEVICE_SERVICES_REVISION_1

NDIS_WWAN_DEVICE_SERVICES_REVISION_1

NDIS_STATUS_WWAN_DEVICE_SERVICE_RESPONSE

использует NDIS_WWAN_DEVICE_SERVICE_RESPONSE

NDIS_WWAN_DEVICE_SERVICE_RESPONSE_REVISION_1

NDIS_WWAN_DEVICE_SERVICE_RESPONSE_REVISION_1

NDIS_STATUS_WWAN_DEVICE_SERVICE_EVENT

использует NDIS_WWAN_DEVICE_SERVICE_EVENT

NDIS_WWAN_DEVICE_SERVICE_EVENT_REVISION_1

NDIS_WWAN_DEVICE_SERVICE_EVENT_REVISION_1

NDIS_STATUS_WWAN_DEVICE_SERVICE_SUBSCRIPTION

использует NDIS_WWAN_DEVICE_SERVICE_SUBSCRIPTION

NDIS_WWAN_DEVICE_SERVICE_SUBSCRIPTION_REVISION_1

NDIS_WWAN_DEVICE_SERVICE_SUBSCRIPTION_REVISION_1

NDIS_STATUS_WWAN_AUTH_RESPONSE

использует NDIS_WWAN_AUTH_RESPONSE

NDIS_WWAN_AUTH_RESPONSE_REVISION_1

NDIS_WWAN_AUTH_RESPONSE_REVISION_1

NDIS_STATUS_WWAN_SET_HOME_PROVIDER_COMPLETE

использует NDIS_WWAN_SET_HOME_PROVIDER

Н/Д

NDIS_WWAN_HOME_PROVIDER_REVISION_2

Примечание

 Следующие примечания относятся к предыдущей таблице: † представляет необязательные признаки, которые могут поддерживать драйверы минипорта. Имейте в виду, что если драйвер минипорта поддерживает необязательный идентификатор OID, драйвер минипорта также должен поддерживать соответствующее указание. 

Поддержка WWAN-Specific индикации для gsm, CDMA и незапрошенных указаний

Указание

GSM

CDMA

Нежелательных

Индикация

Разрешены?

NDIS_STATUS_WWAN_DEVICE_CAPS

X

X

Нет

NDIS_STATUS_WWAN_READY_INFO

X

X

Да

NDIS_STATUS_WWAN_RADIO_STATE

X

X

Да

NDIS_STATUS_WWAN_PIN_INFO

X

X

Нет

NDIS_STATUS_WWAN_PIN_LIST

X

X

N

NDIS_STATUS_WWAN_SERVICE_ACTIVATION

X

X

Нет

NDIS_STATUS_WWAN_HOME_PROVIDER

X

X

Нет

NDIS_STATUS_WWAN_PREFERRED_PROVIDERS

X

Да

NDIS_STATUS_WWAN_VISIBLE_PROVIDERS

X

X

Нет

NDIS_STATUS_WWAN_REGISTER_STATE

X

X

Да

NDIS_STATUS_WWAN_SIGNAL_STATE

X

X

Да

NDIS_STATUS_WWAN_PACKET_SERVICE

использует NDIS_WWAN_PACKET_SERVICE_STATE

X

X

Да

NDIS_STATUS_WWAN_PROVISIONED_CONTEXTS

X

X

Да

NDIS_STATUS_WWAN_CONTEXT_STATE

X

X

Да

NDIS_STATUS_WWAN_SMS_CONFIGURATION

X

X

Да

NDIS_STATUS_WWAN_SMS_RECEIVE

X

X

Да

NDIS_STATUS_WWAN_SMS_SEND

использует NDIS_WWAN_SMS_SEND_STATUS

X

X

Нет

NDIS_STATUS_WWAN_SMS_DELETE

X

X

Нет

NDIS_STATUS_WWAN_SMS_STATUS

X

X

Да

NDIS_STATUS_WWAN_VENDOR_SPECIFIC

X

X

Да

NDIS_STATUS_WWAN_USSD

X

Да

NDIS_STATUS_WWAN_DEVICE_SERVICE_SUPPORTED_COMMANDS

X

X

Нет

NDIS_STATUS_WWAN_DEVICE_SERVICE_RESPONSE

X

X

Нет

NDIS_STATUS_WWAN_DEVICE_SERVICE_EVENT

X

X

Да

NDIS_STATUS_WWAN_DEVICE_SERVICE_SUBSCRIPTION

X

X

Нет

NDIS_STATUS_WWAN_AUTH_RESPONSE

X

X

N

NDIS_STATUS_WWAN_SET_HOME_PROVIDER_COMPLETE

X

X

N

 

Идентификаторы OID для нескольких операторов

Следующие изменения относятся к драйверам мини-портов NDIS 6.30, поддерживающим режим нескольких операторов. Если драйвер мини-порта не поддерживает режим с несколькими носителями, обратитесь к предыдущей таблице.

Соответствующаяструктура данных OID и Windows 8

Операция запроса

Операция задания

GSM/CDMA

OID_WWAN_HOME_PROVIDER

использует NDIS_WWAN_SET_HOME_PROVIDER

Объект

Объект

GSM, CDMA

OID_WWAN_PREFERRED_MULTICARRIER_PROVIDERS

использует NDIS_WWAN_SET_PREFERRED_MULTICARRIER_PROVIDERS. Для параметра PreferredListHeader.ElementType должно быть задано значение WwanStructProvider2 , а структура WWAN_PROVIDER2.

Объект

Объект

GSM, CDMA

 

Указания для нескольких носителей, соответствующие структуры данных и редакции ОС

Индикация и соответствующая структура данных

Редакция Windows 8

NDIS_STATUS_WWAN_HOME_PROVIDER

использует NDIS_WWAN_HOME_PROVIDER2

NDIS_WWAN_HOME_PROVIDER_REVISION_2

NDIS_STATUS_WWAN_PREFERRED_MULTICARRIER_PROVIDERS

использует NDIS_WWAN_PREFERRED_MULTICARRIER_PROVIDERS

NDIS_WWAN_PREFERRED_MULTICARRIER_PROVIDERS_REVISION_1. Для параметра PreferredListHeader.ElementType должно быть задано значение WwanStructProvider2 , а список должен содержать WWAN_PROVIDER2 структуру.

NDIS_STATUS_WWAN_VISIBLE_PROVIDERS

использует NDIS_WWAN_VISIBLE_PROVIDERS

NDIS_WWAN_VISIBLE_PROVIDERS_REVISION_1. VisibleListHeader.ElementType должен иметь значение WwanStructProvider2, а список должен содержать WWAN_PROVIDER2 структуру.

 

Поддержка указания для нескольких носителей для сигналов GSM, CDMA и незапрошенных индикации

Индикация и соответствующая структура данных

GSM

CDMA

Нежелательных

Индикация

Разрешены?

NDIS_STATUS_WWAN_HOME_PROVIDER

X

X

N

NDIS_STATUS_WWAN_PREFERRED_MULTICARRIER_PROVIDERS

X

X

Да

NDIS_STATUS_WWAN_VISIBLE_PROVIDERS

использует NDIS_WWAN_VISIBLE_PROVIDERS

X

X

N