usb en windows. propósito tratamos aquí la relación de la interfaz usb con el sistema operativo....

20
USB en Windows USB en Windows

Upload: rosa-maria-natalia-toro-pereyra

Post on 24-Jan-2016

221 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: USB en Windows. Propósito Tratamos aquí la relación de la interfaz USB con el Sistema Operativo. Para ello vamos a observar todos los pasos que tienen

USB en WindowsUSB en Windows

Page 2: USB en Windows. Propósito Tratamos aquí la relación de la interfaz USB con el Sistema Operativo. Para ello vamos a observar todos los pasos que tienen

PropósitoPropósito

Tratamos aquí la relación de la Tratamos aquí la relación de la interfaz USB con el Sistema interfaz USB con el Sistema Operativo. Para ello vamos a Operativo. Para ello vamos a observar todos los pasos que tienen observar todos los pasos que tienen lugar desde que se inserta un lugar desde que se inserta un dispositivo en el bus hasta que una dispositivo en el bus hasta que una aplicación de usuario puede acceder aplicación de usuario puede acceder al dispositivo. al dispositivo.

Page 3: USB en Windows. Propósito Tratamos aquí la relación de la interfaz USB con el Sistema Operativo. Para ello vamos a observar todos los pasos que tienen

Enumeración de los dispositivos Enumeración de los dispositivos

La enumeración es el proceso por La enumeración es el proceso por medio del cual el dispositivo es medio del cual el dispositivo es integrado en el sistema.integrado en el sistema.

Page 4: USB en Windows. Propósito Tratamos aquí la relación de la interfaz USB con el Sistema Operativo. Para ello vamos a observar todos los pasos que tienen

1.- El usuario inserta el dispositivo 1.- El usuario inserta el dispositivo en el enchufe usb.en el enchufe usb.

2.- El hub detecta el dispositivo.2.- El hub detecta el dispositivo.

Page 5: USB en Windows. Propósito Tratamos aquí la relación de la interfaz USB con el Sistema Operativo. Para ello vamos a observar todos los pasos que tienen

3.- El host conoce la existencia del 3.- El host conoce la existencia del nuevo dispositivo.nuevo dispositivo.

- - Get_port-status requestGet_port-status request

(Todo dispositivo tiene que (Todo dispositivo tiene que responder a un conjunto de responder a un conjunto de peticiones por medio de las cuales el peticiones por medio de las cuales el sistema es capaz de identificar las sistema es capaz de identificar las características del dispositivo)características del dispositivo)

Page 6: USB en Windows. Propósito Tratamos aquí la relación de la interfaz USB con el Sistema Operativo. Para ello vamos a observar todos los pasos que tienen

Comandos que debe admitir el Comandos que debe admitir el dispositivo USB desde el driverdispositivo USB desde el driver

Page 7: USB en Windows. Propósito Tratamos aquí la relación de la interfaz USB con el Sistema Operativo. Para ello vamos a observar todos los pasos que tienen

Drivers en el S.O.Drivers en el S.O.En el host existe una pila de drivers que En el host existe una pila de drivers que gestionan el uso y la configuración de gestionan el uso y la configuración de USB.USB.Los Bus Drivers son los encargados de el Los Bus Drivers son los encargados de el trabajo administrativo:trabajo administrativo:

-root-hub driver (se encarga de las -root-hub driver (se encarga de las inicializaciones)inicializaciones)

-bus-class driver (se encarga de la -bus-class driver (se encarga de la enumeración y las transacciones)enumeración y las transacciones)

-host-controller driver (se encarga del -host-controller driver (se encarga del acceso al medio)acceso al medio)

Page 8: USB en Windows. Propósito Tratamos aquí la relación de la interfaz USB con el Sistema Operativo. Para ello vamos a observar todos los pasos que tienen

APLICACIONES

AplicacionesSUBSISTEMA WIN32

AplicacionesDRIVERS DE FUNCION

AplicacionesDRIVERS DE BUS

AplicacionesHARDWARE

NUCLEO DEL S.O.

ENTORNO DE USUARIO

Llamadas a funciones API

de Win32

Paquetes de solicitud de

I/O

Paquetes de solicitud de

I/O

Interfaz específica con

el hardware

Page 9: USB en Windows. Propósito Tratamos aquí la relación de la interfaz USB con el Sistema Operativo. Para ello vamos a observar todos los pasos que tienen

HOST CONTROLLER DRIVER(UHCI.SYS, OPENHCI.SYS, EHCI.SYS)

(se comunican con el hardware

USB BUS-CLASS DRIVER(USBD.SYS)

(gestiona transacciones, alimentación, enumeración)

USB HUB DRIVER(USBHUB.SYS)

(inicializa los puertos)

DRIVER DEFINIDO POR EL USUARIO

PARA MANEJAR HARDWARE

ESPECÍFICO

FILTRO SUPERIORAñaden características específicas

A la clase

DRIVER DE CLASEDEFINIDOS PARA CLASES

ESTÁNDARES

FILTRO INFERIORAñaden características específicas

A la clase

APLICACIONES

Page 10: USB en Windows. Propósito Tratamos aquí la relación de la interfaz USB con el Sistema Operativo. Para ello vamos a observar todos los pasos que tienen

4.- El hub detecta si un dispositivo 4.- El hub detecta si un dispositivo es de baja o alta velocidad: es de baja o alta velocidad:

Actualmente se soportan tres velocidades:Actualmente se soportan tres velocidades:– baja: 1.5 Mb por segundobaja: 1.5 Mb por segundo– full, 12Mb por segundo full, 12Mb por segundo – High (2.0): 480Mb. High (2.0): 480Mb. (IEEE-1394 400 Mbps y 3.2Gbps)(IEEE-1394 400 Mbps y 3.2Gbps)

Page 11: USB en Windows. Propósito Tratamos aquí la relación de la interfaz USB con el Sistema Operativo. Para ello vamos a observar todos los pasos que tienen

5 el hub resetea el dispositivo5 el hub resetea el dispositivo

6 el host identifica la velocidad del 6 el host identifica la velocidad del dispositivo.dispositivo.– LowLow– FullFull– HighHigh

Page 12: USB en Windows. Propósito Tratamos aquí la relación de la interfaz USB con el Sistema Operativo. Para ello vamos a observar todos los pasos que tienen

7.-El hub establece una vía entre el 7.-El hub establece una vía entre el dispositivo y el bus. dispositivo y el bus.

8.- El host envía un Get_Descriptor8.- El host envía un Get_Descriptor– Máximo tamaño de paquete por el Máximo tamaño de paquete por el

default pipedefault pipe

Page 13: USB en Windows. Propósito Tratamos aquí la relación de la interfaz USB con el Sistema Operativo. Para ello vamos a observar todos los pasos que tienen

DescriptoresDescriptores

Los dispositivos organizan la Los dispositivos organizan la información en torno a descriptores información en torno a descriptores jerárquicos.jerárquicos.

Estos descriptores informan de Estos descriptores informan de características sobre el dispositivo, y características sobre el dispositivo, y luego más específicamente sobre las luego más específicamente sobre las funciones que este ofrece funciones que este ofrece

Page 14: USB en Windows. Propósito Tratamos aquí la relación de la interfaz USB con el Sistema Operativo. Para ello vamos a observar todos los pasos que tienen

Jerarquía de descriptores

Page 15: USB en Windows. Propósito Tratamos aquí la relación de la interfaz USB con el Sistema Operativo. Para ello vamos a observar todos los pasos que tienen

9.- El host asigna una dirección.9.- El host asigna una dirección.– Set_Address Set_Address – (a partir de este momento el (a partir de este momento el

dispositivo responde a su dispositivo responde a su dirección)dirección)

10.- El host se informa acerca de 10.- El host se informa acerca de las capacidades del dispositivo. las capacidades del dispositivo. – Get_DescriptorGet_Descriptor

Page 16: USB en Windows. Propósito Tratamos aquí la relación de la interfaz USB con el Sistema Operativo. Para ello vamos a observar todos los pasos que tienen

Descriptor del dispositivo

Page 17: USB en Windows. Propósito Tratamos aquí la relación de la interfaz USB con el Sistema Operativo. Para ello vamos a observar todos los pasos que tienen

11.- El host asigna y carga el driver del dispositivo.11.- El host asigna y carga el driver del dispositivo.

12.- El driver del dispositivo selecciona una 12.- El driver del dispositivo selecciona una configuración.configuración.

Set_ConfigurationSet_Configuration..

El device driver o Function Driver es una El device driver o Function Driver es una interfaz de cara a la aplicación. interfaz de cara a la aplicación. – Ofrece a las aplicaciones un formato estándar Ofrece a las aplicaciones un formato estándar

de acceso a los dispositivos CreateFile, de acceso a los dispositivos CreateFile, ReadFile, WriteFile.ReadFile, WriteFile.

Page 18: USB en Windows. Propósito Tratamos aquí la relación de la interfaz USB con el Sistema Operativo. Para ello vamos a observar todos los pasos que tienen

Selección del driverSelección del driverCon los datos del Descriptor del driverCon los datos del Descriptor del driver

– VendedorVendedor– ProductoProducto– ClaseClase– SubclaseSubclase

Explora los archivo *.inf del sistema Explora los archivo *.inf del sistema (C:\(C:\WINDOWS\inf)WINDOWS\inf)

que describen los drivers existentes. Si que describen los drivers existentes. Si coincide alguno, lo selecciona.coincide alguno, lo selecciona.

Page 19: USB en Windows. Propósito Tratamos aquí la relación de la interfaz USB con el Sistema Operativo. Para ello vamos a observar todos los pasos que tienen

Acceso al driver por la aplicaciónAcceso al driver por la aplicación

La aplicación accede al driver por La aplicación accede al driver por medio de las API de Windows (???)medio de las API de Windows (???)

CreateFile (abre un dispositivo de CreateFile (abre un dispositivo de comunicación)comunicación)

ReadFile (lee del dispositivo)ReadFile (lee del dispositivo)

WriteFile (Escribe en el dispositivo)WriteFile (Escribe en el dispositivo)

Page 20: USB en Windows. Propósito Tratamos aquí la relación de la interfaz USB con el Sistema Operativo. Para ello vamos a observar todos los pasos que tienen

finfinUSB Complete 2º Ed.USB Complete 2º Ed.

Everything you need to develop custom USB Everything you need to develop custom USB peripherals...peripherals...

Jan AxelsonJan Axelson

Lakeview ResearchLakeview Research

Usb in a nutshell Usb in a nutshell

Craig Peacock 2002Craig Peacock 2002

USB 1.1 specificationUSB 1.1 specification