Preemptividade: diferenças entre revisões

Conteúdo apagado Conteúdo adicionado
Etiquetas: Referências removidas Editor Visual
correção de algumas poucas palavras para pt-BR
Linha 3:
Em [[computação]], '''preemptividade''' (algumas vezes '''preempção''') é o ato de interromper temporariamente uma [[tarefa (informática)|tarefa]] sendo resolvida por um [[computador|sistema computacional]], sem precisar de sua cooperação, e com a intenção de retomar a tarefa depois. Tal mudança é conhecida como uma [[troca de contexto]]. É normalmente resolvida por uma [[anel (segurança em informática)|tarefa privilegiada]] ou parte de um sistema conhecido como uma [[agendamento (informática)|agenda]] preemptiva, que tem o poder de '''preeminar''', ou interromper, e depois retomar, outras tarefas no sistema.
 
Em [[sistemas operacionais]], '''preemptividade''' ou '''preempção''' é a capacidade de tirar de execução um [[processo (informática)|processo]] em detrimento de outro. Esta é uma característica que não é importante apenas nos [[sistema operacional de tempo-real|sistemas operacionais em tempo real]]. Este tipo de intervenção por parte dos [[Escalonamento de processos|escalonadores]] dos sistemas operativosoperacionais pode ocorrer - embora não estandoseja limitadoslimitada apenas a isso - a optimizarotimizar a [[entrada/saída]] de dados em tempo- real, como é o caso da gravação de [[áudio]]. Um exemplo de uma tarefa não-preemptiva é o processamento de [[interrupção|interrupções]].
 
Algoritmos preemptivos são mais adequados para sistemas em que múltiplos processos requerem atenção do sistema, ou seja, no caso de sistemas multiusuário interativos (sistemas em tempo repartido) ou em sistema de tempo real. Nestes casos, a preemptividade representa a troca do processo em execução, assim sendo, para que o processador seja retirado de um processo, interrompendo seu trabalho, e designado a outro processo, anteriormente interrompido, é fundamental que ocorra a troca de contexto dos processos. Tal troca exige que todo o estado de execução de um processo seja adequadamente armazenado para sua posterior recuperação, representando uma sobrecarga computacional para realização desta troca e armazenagem de tais dados. Usualmente os algoritmos preemptivos são mais complexos dada a natureza imprevisível dos processos.