Preempção

Definição - o que significa pré-emoção?

Preempção refere-se à interrupção e suspensão temporária de uma tarefa, sem pedir a sua colaboração, com a intenção de retomar essa tarefa posteriormente. Esse ato é chamado de alternância de contexto e é normalmente executado pelo agendador preventivo, um componente do sistema operacional autorizado a antecipar ou interromper e, posteriormente, retomar as tarefas em execução no sistema.

Definirtec explica a pré-emoção

Preempção é uma forma de multitarefa na qual o planejador interrompe e suspende uma tarefa em execução no momento para retomar uma tarefa anteriormente suspensa. Essa atividade ocorre em quase todos os sistemas operacionais disponíveis. Multitarefa não preemptiva (cooperativa) era o método usado pelas primeiras versões de 16 bits do MS Windows. Todas as versões de 32 bits usam multitarefa preventiva. A preempção envolve o uso de um mecanismo de interrupção, que suspende o encadeamento atualmente em execução e, em seguida, invoca o agendador para determinar qual encadeamento deve ser executado em seguida, permitindo que todos os encadeamentos recebam alguma quantidade de tempo do processador.

O tempo alocado para que um thread seja executado em um sistema multitarefa preemptiva é chamado de fração de tempo ou tempo quântico. O planejador aloca uma fatia de tempo para cada thread que executa. Depois que o intervalo de tempo do thread expira, o planejador o suspende e, em seguida, alterna para outro thread.

Alguns sistemas possuem kernels preemptivos que permitem que as tarefas sejam eliminadas mesmo no modo kernel. Exemplos de tais sistemas são Solaris 2, Windows NT, Linux, Advanced Interactive eXecutive e Berkeley Software Distribution.