¿Qué son los hilos de un procesador?
En informática, un hilo ("thread" en inglés) es algo que separa un programa en múltiples tareas separadas. Esto le da al procesador un grado mayor de flexibilidad en la forma en que administra las tareas. Los hilos son las unidades de instrucciones de procesamiento más pequeñas que el sistema operativo le da al procesador. Usar múltiples hilos para correr un solo programa es más eficiente pues el programa en cuestión puede llevar a cabo múltiples tareas al mismo tiempo.
Beneficios del multihilo
La multitarea, o la ejecución de múltiples programas y procesos al mismo tiempo, es asistido por el multihilo. Esto permite al usuario cambiar rápidamente entre programas corriendo ya que el procesador es capaz de llevar a cabo múltiples tareas al mismo tiempo. Esto produce una mejor notable en el rendimiento que no es dependiente de la velocidad de reloj del CPU.
Propósito
Los procesos son divididos en hilos. Un solo programa puede estar conformado por uno o más procesos que, a su vez, se dividen en hilos. Los hilos de un proceso comparten comandos y código y acceden a los recursos del sistema de forma simultánea para completar sus tareas más rápidamente.
Errores comunes
Los hilos no deben ser confundidos con los núcleos de un procesador. Los hilos y núcleos múltiples ayudan a correr a una computadora más rápidamente, pero son cosas bastante diferentes. Los hilos existen a un nivel de software mientras que los núcleos son procesadores físicos separados e instalados en un sólo chip. Actualmente casi todos los procesadores en el mercado tienen múltiples núcleos. Los hilos comparten recursos del sistema dentro de un mismo núcleo.
Desventajas de la multitarea
Múltiples hilos pueden interferir entre ellos, especialmente cuando comparten recursos como las cachés. El multihilo soportado por hardware también está limitado en muchos procesadores.