vehículos vehiculos vehicle telefonos online number motores florida español dmv dhsmv departamento check c++ windows driver

c++ - vehiculos - Comenzando en el desarrollo de controladores



id de la florida (5)

Buscaría tutoriales con ejemplos ricos, como este . La esencia del desarrollo de controladores de Windows es obtener una imagen de las capas y los IRP, IRQL y también conocer términos como controladores de filtro. Si está buscando códigos de ejemplo, aquí está mi código de controlador de Spodek: enlace sf.net . Encontrará allí un controlador de filtro (para teclado, keyb.c), cola de espacio del kernel (queue.c) y técnicas para ocultar la presencia en el sistema. Sin embargo, es un controlador legado (sys).

¿Alguien tiene libros / tutoriales que puedan ser útiles para iniciarse en el desarrollo de controladores de dispositivos de Windows?

Para un desarrollo simple de Win32 / GUI, el libro de Petzold parece ser la referencia esencial. ¿Existe tal para los conductores?

Me gustaría señalar que en realidad no estoy hablando con el hardware; en realidad, quiero emular una pieza de hardware en el software, pero primero me gustaría ver cómo funcionan las cosas en general.

Billy3


Para aprender bien el desarrollo del kernel:

a. muchos programas de kernel de muestras:

Ejemplo de Windows DDK:

http://social.msdn.microsoft.com/Forums/en-US/softwaretesting/thread/08690203-1757-4129-b59a-6bae10bcdce8/

Muestras de WDK:

http://msdn.microsoft.com/en-us/windows/hardware/gg487428

O simplemente busca:

http://www.google.com/search?q=windows+ddk+samples

(porque la URL anterior puede cambiar, pero es probable que Google le devuelva el más adecuado / accesible)

segundo. muchas técnicas de depuración, y entre las que encontré las mejores está VMware (o VirtualBox) + windbg + depuración del puerto serie:

http://www.google.com/search?q=windbg+vmware+kernel+debug

y este papel es clásico para usar VMWare + windbg (Lord of the Ring0):

http://silverstr.ufies.org/lotr0/windbg-vmware.html

do. así como las herramientas de administración del sistema que otros han construido:

http://technet.microsoft.com/en-us/sysinternals/bb545021

(En el pasado, llamado SysInternals, construido por Mark Russinovich, coautor de "Windows Internal", ¡¡DEBE LEER !!)

http://technet.microsoft.com/en-us/sysinternals/bb963901

De estas herramientas tienes inmensas opciones de depuración.

re. Únase a la lista de correo de OSR (especialmente ntdev es muy activo, pero hay otros como windbg):

http://www.osronline.com/page.cfm?name=ListServer

mi. Mire muchos videos relacionados con Windows + kernel en channel9 (Google devolvió más de 1000 enlaces):

http://www.google.com/search?q=site:channel9.msdn.com+kernel+video&num=100

F. Foro de discusión como:

http://social.microsoft.com/Forums/en-us/kernel/threads

http://social.msdn.microsoft.com/Forums/en-US/wdk/threads

Suscrito a la revista gratuita OSR también (copia impresa). He recibido el mío desde 1998 hasta ahora, ¡y se entrega a mitad de camino alrededor de la tierra!


Personalmente, la mejor manera de comenzar a desarrollarse es mediante la exposición en el mundo real. Teniendo esto en cuenta, recomendaría este libro.

El Arsenal de Rootkit: Escape y Evasión en las Esquinas Oscuras del Sistema

Debería ser suficiente para que empieces a tener un código en ejecución que haga "algo" y luego, después de tener la imagen general, puedes ocuparte de temas como: Diferencia entre los métodos de Buffered / Norither / Direct y las peculiaridades asociadas con ellos.

"Programar el modelo de controlador de Windows, 2ª edición" también es una gran ayuda cuando necesita detalles sobre algunos temas específicos. Pero primero creo que lo más importante es poner las cosas en contexto y luego construir sobre eso.



Una cosa a tener en cuenta es que el desarrollo del controlador del dispositivo (arquitectura y herramientas) cambia más que el desarrollo de Win32 ... así que mientras que el libro de Petzold de la década de 1990 está bien para Win32 y puede considerarse un clásico atemporal, la arquitectura para muchos tipos de controladores ( controladores de impresora, controladores de red, etc.) ha variado en varias versiones de O / S.

Aquí hay una entrada de blog que revisa varios libros: Reseñas de libros de controladores de dispositivos de Windows .

No olvide la documentación de Microsoft incluida con el DDK: y, lo más importante, los controladores de muestra (código fuente) incluidos con el DDK. Cuando quise escribir un controlador de puerto serie simulado, por ejemplo, encontré que la muestra de la documentación del controlador serie combinada con la documentación del DDK fue invaluable (y suficiente).