Cola
Una cola es una lista de tareas que esperan ser procesadas. Después de que nuevas tareas se incorporan a una cola, esperan su turno mientras el sistema procesa otras tareas que ya estaban allí o que tienen una prioridad mayor. Las aplicaciones de hardware y software utilizan colas para saber qué datos deben procesar o transmitir a continuación después de completar la tarea anterior.
La mayoría de las colas de trabajos ejecutan las tareas en el mismo orden en que se agregaron, lo que se conoce como First In, First Out (FIFO). Sin embargo, algunas tareas se benefician de otros métodos de ordenamiento. El método Last In, First Out (LIFO) da prioridad a la tarea agregada más recientemente en lugar de a la más antigua. La programación por prioridades asigna a cada tarea un nivel de prioridad mediante criterios predeterminados —por ejemplo, la tarea cuya fecha límite sea más próxima o la tarea que requiera menos tiempo de procesamiento— y procesa primero el trabajo con la prioridad más alta.
Todo sistema operativo incluye un componente de software, conocido como programador de tareas, que crea una cola de procesos cuando varios programas se ejecutan simultáneamente. El programador de tareas asigna tiempo de CPU al proceso que está al frente de la cola para que ejecute sus instrucciones; cuando una tarea termina, se elimina de la cola para que la siguiente tenga su turno. Algunas aplicaciones crean sus propias colas de tareas para tareas que requieren mucho procesamiento, lo que puede permitir al usuario personalizar el orden en que se llevan a cabo algunos trabajos. Por ejemplo, las aplicaciones de codificación de video, como HandBrake, permiten crear una cola de procesamiento por lotes que codifica un video a la vez e inicia automáticamente el siguiente video después de que termina el trabajo de codificación anterior.
Además de las computadoras, otros dispositivos también utilizan colas para administrar datos. Los dispositivos de red, como los conmutadores y los routers, crean colas al reenviar paquetes de datos a través de una red, lo que garantiza que los paquetes lleguen al destino en el mismo orden en que se transmitieron. Las impresoras también utilizan colas para administrar varios trabajos de impresión y los imprimen en el orden en que se recibieron. La mayoría de las impresoras incluyen software que permite a los usuarios ordenar, cancelar y agregar trabajos manualmente en la cola.
Pon a prueba tu conocimiento