Esta pregunta estaba en mi entrevista de trabajo .. Sólo para ver si le di todos los detalles ...¿Qué ocurre desde el momento en que pulse una tecla del teclado, hasta que aparece en el documento de Word
Respuesta
- mecha interruptor Nical cortocircuitos tire hacia arriba extremo resistencia R1 al suelo
- un multiplexor especial lo traduce en un mensaje, para reducir el número de cables
- el mensaje interpretado por un CPU incrustado en el teclado mensaje
- traducido a un mensaje de protocolo USB, y se modula como una serie de impulsos eléctricos de tensión alterna entre cero y 5 voltios
- USB recibir hub voltaje de línea medidas muestras periódicamente controlador concentrador
- anfitrión traduce el mensaje a los datos
- datos entra PC a través Control de bus USB r, conectado al bus PCIE, a través de una combinación de notificaitons IRQ y una transferencia de DMA, emitida por el conductor del autobús
- conductor Bus interpreta el mensaje y lo reenvía a lo largo de la pila de controlador, en última instancia, a un controlador HID
- conductor habla HID a Windows, lo que finalmente da como resultado un mensaje de ventana enviado a una ventana que pertenece al proceso msword
- WM_KEYDOWN se traduce a WM_CHAR por DefWindowProc(). Mientras la tecla está desactivada, se pueden crear múltiples WM_CHAR.
- aplicación de Word atrapa WM_CHAR añadir otro personaje con el modelo de documento y asunto re-representación de IU
- interfaz de usuario motor de renderizado se traduce punto de código Unicode a la imagen gráfica mediante la carga respectiva fuente motor
- gráficos calcula la nueva imagen de la totalidad área para evitar el parpadeo, y lo pone píxel por píxel en la pantalla
buena respuesta. Si se mantiene presionado después de un poco de retraso, la secuencia se repite en un intervalo específico (a excepción del cierre mecánico inicial del interruptor). Cuando se suelta la tecla, la secuencia se repite, excepto por el cierre del interruptor que ahora es un interruptor abierto y tiene KEYUPS en lugar de KEYDOWNS. En caso de que se le solicite a los ratones que operen con el botón de liberación no en el cierre del botón, pruébelo usted mismo, presione el botón del mouse sobre algún objeto, mueva el mouse y suéltelo sobre otra cosa. –
Lo siento, pero dado que no abordó el hecho de que, dado que con el USB el host tiene que pedir al teclado nuevos datos antes de que el teclado pueda enviarse al host, su respuesta es inadecuada. Es una broma. Muy bien. – nategoose
Uh , si tiene una antigua computadora binaria antigua: http://en.wikipedia.org/wiki/Punched_card
¡Entonces, en el momento en que presionó la tecla, probablemente podría preparar una taza de té!
Una vez me quedé desconcertado, ¿por qué han usado tan grandes agujeros en las tarjetas perforadas? La respuesta fue asombrosa El escaneo no fue óptico en absoluto. Simplemente lo usaron para conectar interruptores de metal a metal. –
Simplicidad en sí! –
- que oiga un clic;) [pero no es necesario en este paso, tal vez en el día 10 o 20]
- señales del teclado a KB controlador
- controlador emite una interrupción a la CPU
- OS kernel ve interrumpir
- despachos OS kernel de interrupción al correspondiente conductor
- controlador comunica a la CPU para leer un charCode desde el controlador kb
- CPU hace
- conductor de alguna manera hace que el núcleo publicar un evento 'KEY_DOWN' en el subsistema de interfaz de usuario
- kernel despacha caso
- cheques subsistema de interfaz de usuario si hay ventana activa
- envía un evento KEY_DOWN interfaz de usuario para la ventana activa
... uh .. cansado :) así, después de que se enviará una clave, actualizar contenido de la ventana, y llamar al controlador de vídeo/subsistema de dibujar que Char
11 está mal. 11 es el evento KEY_DOWN va a la aplicación activa, como se identifica por la ventana activa. Déjame continuar 12. La aplicación a través del bucle principal de GetMessage() obtiene el evento y lo despacha a través de DispatchMessage(), probablemente aplicando algunas traducciones (ahí es donde se asigna a qué ventana va realmente el evento). 13. asignado a la ventana, incluso se llama a la rutina de manejo, y a partir de ahora es responsabilidad de la aplicación. El procesador de textos aplicará la pulsación de tecla al documento en la memoria y activará la actualización de la pantalla para que el nuevo documento en la memoria se refleje adecuadamente en la pantalla. – Dummy00001
- 1. El contenido no aparece en el iframe hasta que utilizo el botón editar en firebug
- 2. UITextView no aparece hasta que se desplaza
- 3. Emacs que determina el diseño del teclado
- 4. ¿Por qué el Rectángulo de enfoque no se muestra hasta que se presiona la tecla Tab?
- 5. Problemas del teclado que surgen en el cambio de orientación
- 6. Cómo capturar una tecla "Listo" presiona desde el teclado virtual
- 7. Colocar el cursor al inicio/fin del documento de Word
- 8. El teclado UITextField no aparece
- 9. imageView celular en UITableView no aparece hasta que se seleccionen
- 10. Sondear el teclado (detectar una pulsación de tecla) en python
- 11. problema que ocurre en __flash__addCallback
- 12. Pegar desde el documento MS Word a un formulario web
- 13. Abrir Microsoft Word en modo "comparar documento" desde el símbolo del sistema
- 14. ¿Hay un momento en el que ignorar IDisposable.Dispose?
- 15. ¿Por qué mi salida no aparece hasta que el programa sale?
- 16. Cómo convertir una tecla Intro Pulse en una pestaña Presione la tecla para páginas web
- 17. que presentan el formulario de inicio de sesión de entrada cuando la tecla de retorno en el teclado se toca
- 18. ¿Cómo pauso el video en el momento exacto en que capturo una foto?
- 19. Opción Ejecutar en el servidor que no aparece en Eclipse
- 20. Jquery deshabilitar una tecla del teclado
- 21. Resaltado de sintaxis en el documento de MS Word
- 22. ¿Por qué el teclado aparece después de TabBar?
- 23. El elemento no aparece en IE7 hasta que lo edite mediante Developer Toolbar
- 24. Hoja de documento que no responde a eventos de teclado
- 25. teclado del teclado numérico no muestra la tecla de retorno en el iphone
- 26. Android - Obtener la tecla del teclado presione
- 27. ocultar el teclado del iPad pulsando la tecla Return
- 28. Evitar que se descarte el teclado suave
- 29. Recuperando el generador de clases COM para el error componente, mientras que la generación de documento de Word
- 30. Obtenga todo el texto del documento de Word en una matriz, dividido por nueva línea
¿se trata de un teclado con cable o inalámbrico? :-) –
Pista: el entrevistador probablemente no estaba interesado en escuchar una respuesta enlatada. La pregunta fue probablemente para averiguar cuánto sabe sobre los diferentes niveles de una computadora, cuánto interés tiene en cada parte. Responder con una respuesta enlatada es totalmente perdido el punto. –
La mayoría de las respuestas aquí omiten los detalles más importantes: si el fusible de tensión (también conocido como fusible de fecha límite) está por encima de un umbral establecido por el fabricante, la CPU volteará aleatoriamente un poco en la RAM. Solo para meterme contigo. En algunos sistemas operativos, el soporte más sofisticado está disponible y el umbral de fusibles de estrés puede aumentarse de forma selectiva, teniendo en cuenta la presencia de respaldo (medios de almacenamiento conectados y servicios de red), hora del día (¡múltiples vueltas después de las 3AM!) de malas palabras a través de micrófonos detectados) y la importancia de la tarea (búsqueda completa de correo electrónico). – detly