2011-09-23 20 views
7

Voy a ser parte del desarrollo del controlador de dispositivo para Android. En preparación, quiero comprender lo básico y avanzar en mi habilidad para esto.Desarrollo de controlador de dispositivo Android - Punto de entrada

Estuve en VB y JAVA durante los últimos 2 años, así que no confío en mi programación en C. El controlador de dispositivo Linux es un mundo nuevo para mí también.

Actualmente, según los consejos que encontré en diferentes foros, el siguiente recurso fue un buen punto de partida.

Q1: Puedo escuchar sus sugerencias para esto.

  1. http://lwn.net/Kernel/LDD3/
  2. http://www.freesoftwaremagazine.com/articles/drivers_linux

Q2: ¿Sabe usted tutoriales específicos para android?

Y también, aquí están los controladores específicos de Android que debo aprender.

  1. USB
  2. Bluetooth
  3. Wifi
  4. cámara

Gracias por su tiempo!

+0

Esto es muy similar a: http://stackoverflow.com/questions/4953452/how-to-write- drivers para Android. Pero hay más información aquí (y ninguna buena respuesta tampoco. –

Respuesta

5

El primer libro que ha mencionado es muy bueno (el USB y la red se describen allí).

Otros libros que sugeriría están en: fuentes del núcleo /Documentation/kernel-docs.txt
(también disponible aquí: https://www.kernel.org/doc/Documentation/kernel-docs.txt)

+0

Gracias también me resulta útil este archivo. (Kernel source /Documentation/kernel-docs.txt) – quiel

5

tuve al puerto un kernel de Android y los conductores a una plataforma personalizada. Android Kernel es básicamente un núcleo de Linux (2.6.x) con algunas modificaciones. El kernel y los controladores están escritos principalmente en C y tendrás que entrar en él. Si ya tienes experiencia en otros idiomas, también podrás superarla. Hay toneladas de libros sobre eso y tutoriales en la WEB. No te olvides de ponerte cómodo con todo ese "puntero". Esto es lo principal en C. El Kernel de Linux si está lleno de puntero a las estructuras de datos y aún más, apunta a las funciones empaquetadas en las estructuras de datos.

Así es como obtuve la información y el conocimiento que necesitaba. Para Linux Kernel, los libros de O'Reilly son geniales. El que más me refiero a todo el tiempo para los controladores de dispositivos son:
"Comprender el kernel de Linux"
"Linux Device Drivers"

En cuanto a los recursos muy específicos a escribir Android Kernel cosas, he estado buscando para ese durante meses y siempre termino usando recursos de Linux y pude hacer el trabajo.

Buena suerte, divertirse y no hay que olvidar que siempre es bueno para que usted pueda obtener nuevas habilidades

Cuestiones relacionadas