Coda
Una coda è un elenco di attività in attesa di essere elaborate. Dopo che nuove attività entrano in una coda, aspettano il proprio turno mentre il sistema elabora altre attività che erano già presenti o che hanno una priorità più alta. Le applicazioni hardware e software usano le code per sapere quali dati elaborare o trasmettere successivamente, dopo aver completato l'attività precedente.
La maggior parte delle code di attività esegue le attività nello stesso ordine in cui sono state aggiunte, secondo il metodo noto come First In, First Out (FIFO). Tuttavia, alcune attività traggono vantaggio da altri metodi di ordinamento. Il metodo Last In, First Out (LIFO) assegna la priorità all'attività aggiunta più di recente invece che a quella più vecchia. La pianificazione in base alla priorità assegna a ogni attività un livello di priorità usando criteri prestabiliti — per esempio, l'attività con la scadenza più vicina o quella che richiede il minor tempo di elaborazione — ed esegue per prima l'attività con la priorità più alta.
Ogni sistema operativo include un componente software, noto come pianificatore delle attività, che crea una coda di processi quando diversi programmi sono in esecuzione contemporaneamente. Il pianificatore delle attività assegna tempo di elaborazione della CPU al processo in testa alla coda, affinché possa eseguire le proprie istruzioni; quando un'attività termina, viene rimossa dalla coda, così quella successiva può svolgere il proprio turno. Alcune applicazioni creano code di attività proprie per le attività che richiedono un uso intensivo del processore, consentendo all'utente di personalizzare l'ordine in cui vengono eseguiti alcuni lavori. Per esempio, le applicazioni di codifica video come HandBrake permettono di creare una coda di elaborazione in batch che codifica un video alla volta e avvia automaticamente il video successivo dopo che il precedente lavoro di codifica è terminato.
Oltre ai computer, anche altri dispositivi usano le code per gestire i dati. I dispositivi di rete come switch e router creano code quando inoltrano pacchetti di dati attraverso una rete, assicurandosi che i pacchetti arrivino a destinazione nello stesso ordine in cui sono stati trasmessi. Anche le stampanti usano le code per gestire più lavori di stampa, stampandoli nell'ordine in cui sono stati ricevuti. La maggior parte delle stampanti include software che permette agli utenti di ordinare, annullare e aggiungere manualmente i lavori nella coda.
Metti alla prova le tue conoscenze