O agendamento de dois níveis é útil quando um sistema está executando mais processos do que cabem na RAM: um agendador de nível inferior alterna entre processos residentes e um agendador de nível superior alterna entre grupos de processos.
Não encontro outra menção ao agendamento de dois níveis nos Sistemas Operacionais de Andrew Tanenbaum : Design and Implementation , 1ª ed. O Exercício 2.22 pergunta por que o planejamento em dois níveis pode ser usado; Não sei se existe uma verificação de compreensão de leitura ou se existem outros motivos não mencionados de forma destacada no texto.
O agendamento em dois níveis é útil para gerenciar outras contenções de recursos, além da memória?
operating-systems
process-scheduling
Gilles 'SO- parar de ser mau'
fonte
fonte
Respostas:
Existem outras formas de agendamento em dois níveis além do tipo que você descreve. Por exemplo, um nível de agendamento pode ser por usuário e o outro por processo, com o objetivo de fornecer a um usuário com 20 processos a mesma quantidade de tempo de CPU que um usuário com 1 processo. Com um planejador de nível único, cada processo pode receber 1/21 do tempo da CPU.
Outra forma de agendamento de dois níveis pode ser por processo e por thread, com o objetivo de fornecer a um processo com 20 threads a mesma quantidade de tempo de CPU que um processo com 1 thread.
fonte