Android WiFi Architecture (WEXT/NL80211)

Esse é o primeiro lugar onde encontro o caminho do WiFi dentro do Android.

Estou reblogando para não perder a referência.

mitulmodi

Android Wireless Architecture can be divided in three part Java Framework (WiFiManager,WifiMonitor etc..), HAL(wifi.c, wpa_supplicant) and kernel space modules (Wireless stack, driver).

Following figure show the Android Wifi Architecture. Java Framework communicate with wpa_supplicant using native interface (wifi.c) . wpa_supplicant uses wireless extension to control wifi driver.

Image

Application Framework code for WifiManager, WifiMonitor , WifiConfiguration  are in base/wifi/java/android/net/wifi folder.

Jni code written in “android_net_wifi_Wifi.cpp” located in “frameworks/base/core/jni” folder. Which communicate with HAL layer. HAL layer code is written in wifi.c (hardware/libhardware_legacy/wifi/).  Code in wifi.c file communicate with wpa_supplicant over control interface.

Above shown architecture applies to the wireless drivers which uses wireless extension to communicate with driver. With the implementation of nl80211/cfg80211 many wireless drivers in main line kernel support nl80211 interface instead of wireless extension.

So, if your wireless driver is implemented using nl80211 interface you can use wpa_supplicant_8 in Android 4.

How…

Ver o post original 58 mais palavras

Anúncios

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s