No contexto da programação de processos, o sistema operacional intervém após cada intervalo de tempo / quantum? Por exemplo, se o computador estivesse ocioso e chegassem 4 tarefas: t1, t2, t3 e t4, e elas fossem agendadas usando o primeiro a chegar, primeiro a servir, consideraríamos normalmente t1, t2, t3, t4 na CPU, mas isso não é uma simplificação? Porque nós t1, OS, t2, OS, t3 OS t4 é o que realmente aconteceria? Se é verdade que o SO intervém após cada intervalo de tempo (também conhecido como quantum), isso não é muito ineficiente?
fonte
x
algumas vezes o sistema operacional precisa fazer alguns cálculos para cada tarefa, o que há muito. Por exemplo, existem 5 tarefas e, em média, cada uma leva 4 intervalos de tempo para concluir, ou seja, cerca de 4x5 vezes o sistema operacional. Posso estar errado, acho que foi assim que imaginei.Acredito que nos sistemas operacionais modernos os intervalos de tempo são de duração variável. O agendador é chamado após a manutenção de todas as interrupções (teclado, mouse, tela sensível ao toque, rede, transferência de disco concluída, ...), bem como o cronômetro é interrompido.
Grosso modo, o planejador é projetado para estimar a média móvel dos tempos entre as chamadas do sistema de bloqueio de um processo. Antes que o planejador controle o processo X, ele configura um timer que será interrompido por vez apenas um pouco mais do que a média móvel do processo X. Se o agendador fizer um bom trabalho em adivinhar o tempo para a próxima chamada do sistema de bloqueio, uma grande fração dos processos realmente liberará voluntariamente a CPU fazendo uma chamada de sistema de bloqueio.
O objetivo é fazer com que os processos interativos façam um pouco de computação, faça uma chamada do sistema de bloqueio para solicitar alguns dados de um dispositivo lento e, em seguida, seja reagendada assim que os dados forem retornados. Se o planejador tiver que decidir entre o planejamento entre dois processos, sendo todas as outras coisas iguais, favorecerá o processo que está fazendo as chamadas do sistema de bloqueio com mais frequência. Isso tende a maximizar o número de solicitações de E / S de bloqueio simultâneo, o que melhora a taxa de transferência geral do sistema.
fonte