Bluetooth-illesztő verem

A Bluetooth-illesztő verem a Microsoft által a Bluetooth protokollhoz biztosított támogatás alapvető részét képezi. Ezzel a halmazzal a Bluetooth-kompatibilis eszközök megtalálhatják egymást, és kapcsolatokat létesíthetnek. Ezeken a kapcsolatokon keresztül az eszközök adatokat cserélhetnek, és különböző alkalmazásokon keresztül kommunikálhatnak egymással.

Az alábbi képen a Bluetooth-illesztő veremen belüli modulok, valamint a Windows Vista és újabb verziókban nem szereplő egyéni felhasználói és kernel módú illesztőprogramok láthatók. Az egyéni illesztőprogramokat profilillesztőknek nevezzük.

A Bluetooth-illesztőprogramok veremarchitektúrájának ábrája.

Az architektúra képe a következő összetevőket és példákat tartalmazza:

  • Felhasználói mód

    • Felhasználói módú alkalmazás: A felhasználói módú alkalmazások közzétett API-kon keresztül férnek hozzá a Bluetooth-illesztőprogram-veremhez. További információ: A Bluetooth ismertetése a Windows SDK dokumentációjában.

      A felhasználói módú alkalmazásoknak az IrProps.lib helyett a BthProps.lib-hez kell kapcsolódnia, hogy olyan API-kat használjanak, mint a BluetoothSetLocalServiceInfo.

  • Példák profil meghajtókra

    • WAP kernelmód-illesztőprogram: A Vezeték nélküli Alkalmazásprotokoll (WAP) összetevő egy olyan profilillesztőprogram, amely kommunikál a Windows hálózati réteg és a BthPort között. Hozzáfér az L2CAP felülethez, és opcionálisan hozzáfér az L2CAP szolgáltatásfelderítési protokoll (SDP) felületéhez. További lehetséges profilok például a Speciális hangterjesztési profil (A2DP), az A/V távvezérlési profil (AVRCP), az általános A/V terjesztési profil (GAVDP) és a Common ISDN Access (CIP) profil.

    • Hangmag módillesztő: Példa egy profilillesztőre, amely kommunikál a Windows hangverem és a BthPort között, amely hozzáfér a BthPortban található SCO-felületekhez. A lehetséges profilok közé tartozik a Kéz nélküli profil (HFP), a Headset profil (HSP), a vezeték nélküli telefon profil (CTP) és az Intercom profil (ICP). Ez a profilillesztő a Windows 8-tól kezdve megtalálható a Windowsban.

    • Bluetooth LE pulzusfigyelő profil: Példa egy Bluetooth LE profilillesztőre, amely kommunikál a Bluetooth Low Energy (LE) API-val.

  • Bluetooth-illesztő veremösszetevői

    • IrProps: A Bluetooth-illesztő verem első verziójához létrehozott profilillesztőkkel való visszamenőleges kompatibilitáshoz használt összetevő. Az IrProps csak a visszamenőleges kompatibilitás érdekében érhető el. Új fejlesztéshez használja a BthProps összetevőt .

    • BthProps: Egy összetevő, amely tartalmazza a Bluetooth felhasználói felület implementálását, valamint a felhasználói módú alkalmazások által elérhető Bluetooth API-k implementálását. Ez az összetevő távoli eljáráshívásokkal (RPC) küld lekérdezéseket a BthServnek. Emellett a BthProps pin-exchange-eket hajt végre a BthPorttal privát IOCTLs-ek használatával. A BthProps bármely, Bluetooth-kompatibilis rádióval rendelkező rendszeren fut.

    • BthServ: A lekérdezési adatok Bthportba való gyorsítótárazásáért és továbbításáért felelős szolgáltatás.

    • BthCi: A Bluetooth-osztály telepítője.

    • WshBth: A Bluetooth Windows socket segédkomponense. A WshBth-et a Windows szoftvercsatornák rétege hívja meg a szoftvercsatorna-műveletek végrehajtásához. A WshBth elsősorban a Transport Driver Interface (TDI) segítségével hívja meg az RFCOMM-et. A WshBth meghívja a BthServ-et, hogy távoli eszközmegkérdezéseket végezzen, valamint meghívja a BthPortot, hogy helyi rádiólekérdezéseket végezzen.

    • FSquirt: Egy nem kiterjeszthető Objektumcsere (OBEX) összetevő, amely lehetővé teszi, hogy a felhasználók fájlokat küldjenek és fogadjanak egy nyitott Bluetooth-kapcsolaton keresztül. Az OBEX a WshBth összetevőt használó RFCOMM-en keresztül kommunikál a távoli eszközökkel.

    • BthPrint: A hardcopy kábel csereprofilt (HCRP) megvalósító összetevő. Ez az összetevő lehetővé teszi, hogy a nyomtatórendszer adatokat küldjön és fogadjon adatokat Bluetooth-kompatibilis nyomtatókról. A BthPrint a BthPort SDP-felületével kommunikál a távoli nyomtatók lekérdezéséhez, és az adatok küldéséhez és fogadásához a BthPort L2CAP felületét használja.

    • HidBth: A Human Interface Device (HID) profilt implementáló összetevő. A HidBth a BthPort L2CAP- és SDP-felületeivel is kommunikál. A HidBth az USB HID modulhoz hasonlóan csatlakozik a HID-veremhez.

    • BthPan: A személyes hálózati (PAN) profilt megvalósító összetevő, amely TCP-kapcsolatokat biztosít egy nyitott Bluetooth-kapcsolaton keresztül. Windows Vista és Windows XP rendszerben a BthPan csak a kimenő kapcsolatokat támogatja. A BthPan a BthPort összetevő ügyfele is, és az L2CAP és az SDP interfészeket is használja.

    • RFCOMM: A Bluetooth soros kábelemulációs protokollt implementáló összetevő. Az RFCOMM a BthPortban található L2CAP és SDP interfészeket is használja. Az RFCOMM felső széle elérhetővé teszi a TDI-felületet, amely lehetővé teszi, hogy ez az összetevő hálózati átvitelként jelenjen meg. A WshBth ezzel a módszerrel csatlakozik a Bluetooth-hoz, hogy adatokat küldjön és fogadjon felhasználói módú API-kból.

      A felhasználói módú alkalmazások a Windows SDK-ban ismertetett Winsock-felületek használatával férhetnek hozzá az RFCOMM-hez.

    • BthModem: A virtuális COM-portokat és telefonos hálózati csatlakozási szolgáltatást (DUN) megvalósító összetevő. A BthModem egy TDI-felületen keresztül irányítja az összes I/O- és vezérlési műveletet az RFCOMM-hez. A BthModem felső széle kommunikál a Serial.sys fájllal, hogy vezeték nélküli COM-portként jelenjen meg.

    • BthEnum: A Bluetooth buszillesztő. A BthEnum a Plug and Play (PnP) kezelőjével kommunikál a Bluetooth-szolgáltatások engedélyezéséhez használt eszközobjektumok létrehozásához és megsemmisítéséhez. A BthEnum létrehoz egy PDO-t minden olyan szolgáltatáshoz, amelyet egy csatlakoztatott távoli eszköz támogat. Ha például egy felhasználó Bluetooth-kompatibilis egeret csatlakoztat, a Windows felfedezi, hogy az egér támogatja a Bluetooth HID szolgáltatást. A Windows létrehoz egy PDO-t a HID szolgáltatáshoz, ami miatt a PnP-kezelő betölti a HidBth-et.

      Megjegyzés:

      A BthEnum nem hoz létre PDO-kat azokhoz a szolgáltatásokhoz, amelyek a Bth.inf INF-fájlban megadott Nem támogatott szolgáltatások beállításkulcsában szerepelnek.

    • BthLEEnum: A Bluetooth alacsony energia (LE) buszmeghajtó. A BthLEEnum implementálja az ATT protokollt és a GATT-profilt. Ez az illesztőprogram a távoli eszközök és az elsődleges szolgáltatások reprezentálása érdekében létrehozott PDO-kért is felelős.

    • BthPort: A BthUsb miniport által betöltött minidriver. A BthPort négy összetevőt biztosít:

      • A HCI-összetevő a Bluetooth-specifikációban meghatározott gazdavezérlő interfészen (HCI) keresztül kommunikál a helyi Bluetooth-kompatibilis rádióval. Mivel minden Bluetooth-kompatibilis rádió implementálja a HCI-specifikációt, a BthPort bármilyen Bluetooth-kompatibilis rádióval képes kommunikálni, függetlenül a gyártótól vagy a modelltől.

      • A SCO-összetevő implementálja a Szinkron Connection-Oriented (SCO) protokollt. Ez a protokoll támogatja a pont–pont kapcsolatok távoli eszközökhöz való létrehozását. A SCO-ügyfelek Bluetooth-kérelemblokkok (BRB-k) létrehozásával és küldésével kommunikálnak a SCO-felülettel.

      • Az L2CAP implementálja a Bluetooth logikai kapcsolat vezérlési és adaptációs protokollt. Ez a protokoll támogatja a veszteségmentes csatorna távoli eszközre történő létrehozását. Az L2CAP-ügyfelek a BRB-k létrehozásával és küldésével kommunikálnak az L2CAP felülettel.

      • Az SDP implementálja a Bluetooth-szolgáltatásfelderítési protokollt.

    • BthUsb.sys: A miniport, amely elvonatkoztatja a buszfelületet a BthPort-tól.