sched_setscheduler diz:
Todo o planejamento é preventivo: se um processo com uma prioridade estática mais alta ficar pronto para execução, o processo atualmente em execução será antecipado e retornado à lista de espera por seu nível de prioridade estática.
enquanto setpriority diz
Isso faz com que valores agradáveis muito baixos (+19) forneçam realmente pouca CPU a um processo sempre que houver outra carga de prioridade mais alta no sistema e faz com que valores agradáveis altos (-20) entreguem a maioria da CPU aos aplicativos que a exigem.
Então, como a alteração do valor legal influencia a execução dos programas? É semelhante ao agendamento de RT (onde um programa com maior valor agradável interrompe o programa com menor valor agradável)?
Todas as informações na internet são sobre como usar nice
e como alterar a prioridade de um processo. Nenhum link explica como exatamente o processo com prioridade diferente funciona. Eu não conseguia encontrar o código fonte.
fonte