casa | | Saúde e Doença > | Cirurgias e Procedimentos | Operações Cirúrgicas
Dispatching em Computação: Agendamento e Execução de Tarefas Explicados
Dispatching é o mecanismo que atribui tarefas prontas a recursos de execução (núcleos de CPU, threads, GPUs, nós).
Em Sistemas Operacionais
- Escalonador seleciona a próxima tarefa da fila de execução (prioridade, justiça, prazo, afinidade).
- Despachante realiza a troca de contexto: salva o estado atual dos registradores, carrega o estado da próxima tarefa, salta para seu ponteiro de instrução.
- Ocorre em: expiração de fatia de tempo, chamada de sistema, interrupção, contenção de lock, yield explícito.
Em Sistemas Paralelos/Distribuídos
- Despachantes de tarefa (ex., ThreadPoolExecutor, Celery, escalonador do Kubernetes) correspondem unidades de trabalho a workers.
- Estratégias: FIFO, prioridade, consciente de localidade, balanceamento de carga, execução especulativa.
Em Comunicações
- Despacho de mensagens: Roteamento de mensagens para manipuladores (loops de evento, sistemas de ator, microsserviços).
- Padrões: pub/sub, request/reply, streaming.
Métricas Chave
- Latência de despacho (fila → execução)
- Taxa de transferência (tarefas/seg)
- Justiça (evitar inanição)
- Localidade (afinidade de cache/NUMA)
O despacho é o "controle de tráfego" da computação — despacho eficiente maximiza a utilização de hardware e a capacidade de resposta.