Tarefa

Na programação de computadores, uma tarefa é uma unidade básica de programação que um sistema operacional controla. Dependendo de como o sistema operativo define uma tarefa no seu desenho, esta unidade de programação pode ser um programa inteiro ou cada invocação sucessiva de um programa. Como um programa pode fazer solicitações de outros programas utilitários, os programas utilitários também podem ser considerados tarefas (ou subtarefas). Todos os sistemas operacionais atuais, amplamente utilizados, suportam multitarefas , o que permite que múltiplas tarefas sejam executadas concomitantemente, revezando-se usando os recursos do computador.

Em multitarefas preemptivas , a cada tarefa pode ser atribuída uma prioridade, dependendo de sua importância relativa, da quantidade de recursos que está consumindo, e outros fatores. O sistema operacional então antecipa (encurta) uma tarefa com menor valor de prioridade para que uma tarefa com maior prioridade seja dada uma revezamento. Windows 2000 , OS/390 , Linux , e Amiga são exemplos de sistemas operativos que utilizam multitarefas preemptivas. Multitarefa cooperativa é a capacidade de um sistema operativo gerir múltiplas tarefas tais como programas de aplicações ao mesmo tempo, mas sem a capacidade de as antecipar necessariamente.

É fácil confundir os termos Multithreading e multitasking . Multithreading é o gerenciamento de múltiplos usos simultâneos de um mesmo programa. A maioria dos sistemas operacionais e linguagens modernas de computador também suportam multithreading.