Estaba leyendo un libro que dice que un procesador con un solo núcleo y sin hiper-threading puede procesar solo un proceso a la vez, por lo que surge la duda de que cuando hacemos tantas operaciones en una PC y también los procesos en segundo plano siempre están ahí, entonces ¿por qué no el reproductor de música se detiene en el corto plazo? Sé que la CPU es bastante rápida, pero el reproductor de música suele reproducir música sin interrupciones (eso es observable). ¿Alguien puede aclarar este comportamiento?Reproductor de música proceso
Respuesta
1) Una CPU de un solo núcleo sin hyperthreading puede, como usted dice, ejecutar solo un proceso a la vez. Los procesos múltiples se manejan mediante el cambio de contexto, es decir, la CPU ejecutará un proceso y luego pasará al siguiente proceso y al siguiente y luego al primer proceso, y así sucesivamente. La frecuencia con la que se programa un determinado proceso depende de muchos factores diferentes, donde la prioridad del proceso es uno. (En los días en que a menudo se necesitaba ejecutar WinAmp con prioridad elevada para evitar problemas técnicos, etc. Hoy en día esto no es necesario ya que la CPU es mucho más rápida).
2) Entonces, con esto en mente, ¿cómo es que suena genial y sin problemas técnicos?
Al procesar audio, la CPU alimenta el dispositivo de sonido con muestras colocándolos en un búfer de hardware en la tarjeta de sonido o en la RAM. El procesador de sonido no obtiene sus datos directamente de la CPU, sino que lee las muestras de uno de estos dos búferes. Siempre que tengamos muestras en el búfer, estamos bien, aunque la CPU no esté haciendo otra cosa.
Los detalles sobre el tamaño del búfer de hardware son diferentes en las tarjetas de sonido diferentes. Algunas tarjetas de sonido (antiguas) no tienen ningún buffer de sonido, y aquí la RAM entra en juego.
Se está quedando sin muestras se llama falta de memoria intermedia. Incluso en las computadoras modernas esto puede suceder, por ejemplo, si comienza un proceso pesado mientras ejecuta su reproductor de audio, es posible que la CPU no pueda retroceder en el tiempo y podamos escuchar problemas técnicos y lagunas en la alimentación del sonido.
Esto se debe a un sistema operativo que hace preemptive multi-tasking. De hecho, el proceso se interrumpe durante un período de tiempo muy corto, no lo suficiente como para que lo note un humano. Otra razón es también que la tarjeta de audio tiene un búfer de reproducción que permite la reproducción de forma continua, mientras que los datos se alimentan en trozos. Por lo tanto, aunque el proceso de alimentación de la tarjeta con datos se está interrumpiendo durante un tiempo muy corto, la reproducción todavía puede ocurrir.
Esto es manejado por el Programador del sistema operativo.
El planificador asignará un intervalo de tiempo a cada proceso (esto tal vez unos pocos milisegundos) y permitirá que un proceso ejecute lo que necesita durante ese período de tiempo. La longitud asignada está determinada por el algoritmo utilizado por el sistema operativo (es decir, la programación a corto plazo, a largo plazo, etc.). La razón por la que no se da cuenta de esto es porque la CPU puede operar a tales altas frecuencias, es decir, 1 GHz lo que hace que la tarea múltiple en un solo núcleo/hilo sea transparente para el usuario.
http://en.wikipedia.org/wiki/Scheduling_(computing) http://web.cs.wpi.edu/~cs3013/c07/lectures/Section05-Scheduling.pdf
- 1. Código fuente del reproductor de música Android
- 2. javascript o jQuery reproductor de música
- 3. Aplicación de Android para Pausar/Reanudar la música de otra aplicación de reproductor de música
- 4. Lanzamiento de Android reproductor de música con intención
- 5. Ordenando música
- 6. ¿Cómo dibujar la forma de onda del reproductor de música de Android?
- 7. La arquitectura de un reproductor de música con listas de reproducción, usando Rails, Redis y HTML5
- 8. En iPhone: descubra qué canción se está reproduciendo actualmente. (en el reproductor de música iPod)
- 9. ¿Es posible obtener datos o canciones del reproductor de música en la aplicación iPhone?
- 10. Soundpool o reproductor multimedia?
- 11. Reproductor .wav basado en flash
- 12. Reproductor de mp3 incrustado basado en flash
- 13. Ubicación de archivos de música de Android?
- 14. obtener el control del reproductor de música en la pantalla de bloqueo como la aplicación Pandora en iphone
- 15. Crear visualizador de música
- 16. ¿Generación de música procesal?
- 17. Visualización de la música
- 18. Reproductor de video receptivo
- 19. Música de fondo de bucle?
- 20. Analizando música en Java
- 21. ¿Cómo abrir selector de música?
- 22. Composición de música en LaTeX
- 23. música con script de shell
- 24. análisis de la música de software
- 25. Reproductor de Windows Media ignorándome
- 26. reproductor multimedia androide de error
- 27. iPhone - ¿Cuál es el reproductor de audio adecuado para mi aplicación?
- 28. Vista previa de música desde la tienda de música de iTunes en la aplicación iOS
- 29. Cómo programar un simple secuenciador de música para Android (Java)
- 30. ¿Cómo puedo compartir una url de música grooveshark en Facebook con el widget de música?
pero por lo general no se oye ninguna interrupción. ¿Es tan rápido que no podemos observar ningún descanso? –