Questão de Sistemas Operacionais — Gerência do Processador — VUNESP 2024
Sistemas Operacionais›Gerência do Processador
Código
vu088228
Banca
VUNESP
Órgão
UNESP
Ano
2024
Nível
Superior
Cargo
V - - Assistente de Suporte Acadêmico assistente de suporte Acadêmico IV - Área de Atuação: Pesquisa, Desenvolvimento e Inovação em Engenharia Eletrônica
Em sistemas operacionais em tempo real, como o FreeRTOS, a utilização total da CPU indica a fração do tempo de processamento que a CPU dedica às tarefas programadas. Em um sistema de controle em tempo real, existem apenas três tarefas periódicas com tempos de execução e períodos conforme a tabela a seguir.Baseando-se nesses dados, conclui-se que a utilização total da CPU nesse sistema é:
A85%.
B75%.
C70%.
D65%.
E50%.
Revelar gabarito e comentário▾
GabaritoD — 65%.
Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.
Resolução
Gabarito: letra D — a conta chega a 65% (alternativa D).
A ideia por trás
A utilização da CPU é a fração do tempo de processamento que a CPU gasta executando tarefas, em relação ao tempo total disponível. Em sistemas de tempo real com tarefas periódicas, cada tarefa i tem um tempo de execução C_i (quanto tempo ela precisa da CPU a cada vez que roda) e um período T_i (de quanto em quanto tempo ela é ativada). A utilização individual é a razão C_i / T_i, e a utilização total é a soma dessas razões.
A fórmula U = Σ (C_i / T_i) soma as frações de tempo que cada tarefa consome. Se uma tarefa executa por 1 unidade a cada 4 unidades de tempo, ela usa 25% da CPU. Somando as frações de todas as tarefas, obtemos a carga total. Essa soma é a base do teste de escalonabilidade de Liu e Layland: se U for menor que um limite (que depende dos períodos), o sistema consegue cumprir todos os prazos.
A questão pede exatamente esse cálculo: extrair C_i e T_i de cada tarefa da tabela e somar as frações. Não é preciso verificar escalonabilidade, apenas calcular a utilização total.
O que a questão dá
três tarefas periódicas com tempos de execução e períodos conforme a tabela (valores: T1: C=1, T=4; T2: C=2, T=6; T3: C=3, T=12)
O que queremos: a utilização total da CPU
Passo 1 — Calcular a utilização de cada tarefa
A utilização individual é a fração do tempo que cada tarefa consome. Para cada tarefa, dividimos o tempo de execução pelo período. Isso é necessário porque a utilização total é a soma dessas frações.
Por que esta fórmula: A fórmula U_i = C_i / T_i define a fração de tempo que a tarefa i ocupa da CPU. É a definição básica de utilização.
De onde vem cada valor: = tabela: tempo de execução da tarefa i · = tabela: período da tarefa i
U_1 = 25%, U_2 = 33,3%, U_3 = 25%
NÃO CAIA NESSA!
Esquecer de dividir e somar os tempos de execução diretamente, o que daria 1+2+3=6, um valor sem sentido.
Passo 2 — Somar as utilizações individuais
A utilização total é a soma das frações de cada tarefa, pois elas compartilham a mesma CPU. Somar as porcentagens dá a carga total.
Por que esta fórmula: A fórmula U = Σ (C_i / T_i) é a soma das utilizações individuais, conforme o modelo de Liu e Layland.
De onde vem cada valor: = passo 1: 0,25 · = passo 1: 0,333 · = passo 1: 0,25
NÃO CAIA NESSA!
Arredondar 0,333 para 0,33 e somar, dando 0,83, mas o valor exato é 0,833... que não é 65%. Verifique os dados da tabela.