První verze | 2001 |
---|---|
Poslední verze | 5,58 (3. dubna 2021) |
Vklad | git.kernel.org/pub/scm/bluetooth/bluez.git |
Napsáno | VS |
Operační systém | Linux |
Typ | Hromada protokolů |
Licence | GNU General Public License verze 2 a GNU Lesser General Public License verze 2.0 ( d ) |
webová stránka | www.bluez.org |
BlueZ je software, který implementuje bezdrátovou technologii Bluetooth do operačního systému Linux . Původně jej vytvořil Max Krasnyansky ze společnosti Qualcomm . V roce 2001 se společnost rozhodla vydat jej pod licencí GNU GPL . BlueZ se poté stal standardem implementace Bluetooth pro Linux a byl integrován do linuxového jádra .
První zásobník Bluetooth s otevřeným zdrojovým kódem pro Linux byl vyvinut společností Axis Communication a nazýval se OpenBT, ale v roce 2005 byl tento projekt ukončen.
V roce 2005 získal projekt BlueZ cenu TuxMobil GNU / Linux Award za příspěvek ke zlepšení síťového připojení na přenosných strojích vybavených Linuxem .
BlueZ je již integrován do jádra řady Linux verze 2.4 a 2.6. Pro starší jádra existují opravy, které lze stáhnout na následující adrese: http://www.bluez.org/patches.html U některých linuxových distribucí (například Debian nebo RedHat ) jsou také balíčky k aktualizaci některých knihoven a nástrojů. k dispozici.
Před verzí BlueZ verze 2.3 byla vrstva RFCOMM v uživatelském prostoru a používala sériový port uživatelského prostoru (USSP). Byl vytvořen pro práci s rozhraním zásuvky BlueZ L2CAP. Jádro RFCOMM bylo nyní implementováno do jádra Linuxu a je umístěno v prostoru jádra zásobníku BlueZ (přesněji v BlueZ-utils ).
HCI , který je součástí srdce modulu Bluetooth, a přenosový protokol hostitele jsou rozděleny do různých modulů. Například hci_usb.ko pro implementaci transportní vrstvy USB a hci_uart.ko pro transportní vrstvu UART . L2CAP je implementován modulem jádra l2cap.ko . To poskytuje zásuvky BSD. RFCOMM má v BlueZ dva aspekty. Jedním z nich je rozhraní založené na soketu. Stejně jako TCP je připojení RFCOMM proudem. Druhým je emulace TTY, která poskytuje uzly.
Virtual HCI je tedy virtuální zařízení HCI, které umožňuje simulovat zařízení Bluetooth.
BlueZ se skládá z různých modulů:
BlueZ má centrální modul s názvem bluez-kernel, který obsahuje všechny instalace jádra Bluetooth . Vytváří abstrakci HCI , protokoly L2CAP a LMP / LC. V bluez-kernel kód je součástí HCI UART řidiče , HCI PCMCIA ovladače a protokol RFCOMM, jakož i věci pro BNEP.
Bluez-libs nainstaluje knihovnu přístupu bluetooth používanou jinými nástroji a nástroji.
Bluez-utils obsahuje nástroje používané k manipulaci se zařízeními jádra a modulem vytvořeným pomocí zásobníku Bluetooth . Hciconfig nástroj nainstalován v balíčku je téměř ekvivalent ifconfig. Dokud zásobník nenainstaluje novou rodinu adres, potřebujeme tento nástroj k manipulaci s rozhraními. Síť Bluetooth má ve srovnání s jinými tradičními sítěmi velmi odlišné možnosti. Tento balíček je také užitečný například pro aktualizaci zařízení HCI.
Bluez-sdp poskytuje démona a přístup do knihovny používané s SDP. Jedná se o základní protokol používaný mezi dvěma zařízeními Bluetooth k určení, jak mohou navzájem komunikovat.
Bluez-pan umožňuje PAN (Bluetooth Personal Area Networking) . To zahrnuje pand , démona profilu PAN , a dund , démona profilu přístupu k síti LAN. PAN umožňuje zařízením Bluetooth fungovat jako síťová zařízení Linux.
Bluez-hcidump je tcpdump světa Bluetooth. HCI je ovládací rozhraní hostitele. HCI poskytuje standardní abstrakci rozhraní pro hardware Bluetooth, diktuje operace, které musí jádro zásobníku Bluetooth provádět pro každý konkrétní ovladač hardwaru Poskytnutím dalšího prvku v této vrstvě poskytuje tento nástroj pohled na veškerý příchozí provoz a odchod z rozhraní Bluetooth bez obav o rozhraní USB , PCMCIA nebo UART. RFCOMM je standard pro sériové porty typu RS-232 přes Bluetooth.
Protože je kód BlueZ přístupný veřejnosti, byl vytvořen CVS, který umožňuje každému z účastníků vývoje projektu přidat jejich modifikaci. Zde jsou hlavní adresáře obsažené v CVS BlueZ a jejich charakterizace.