Prioridades de Execução
Prof.Fernando Branquinho
Prioridades de Execução
Para implementar o recurso de prioridades de execução, podemos realizar uma mudança no
comportamento do escalonador, fazendo com que este utilize tempos diferentes para a execução de cada
programa. Exemplo:
Vamos imaginar os seguintes programas com suas respectivas prioridades de execução:
Programa A - Prioridade 1
Programa B - Prioridade 2
Podemos definir um esquema de prioridades que determina que o programa B seja executado 2 vezes a
mais que o programa A. Sendo assim, podemos considerar que o número da prioridade, está diretamente
relacionado com o número de interrupções que o escalonador necessita para transferir a execução para o
próximo programa. Neste caso, a sequência de execução seria a seguinte:
De acordo com a distribuição acima, o programa B passa a utilizar 66,66% da CPU, enquanto o programa
A fica com somente 33,33%. Neste tipo de prioridade, podemos perceber que em nenhum momento foi
mencionada, a dificuldade de execução de cada programa. Podemos concluir então, que o uso da CPU
não depende de quanto "pesada" é a aplicação, mas sim de quanto tempo o S.O. reserva para sua
execução em multitarefa.
Exercícios
1) De acordo com a arquitetura, do sistema multitarefa preemptiva apresentado em aula, preencha a seguinte
tabela, revelando a sequência de execução do processador.
INT
Registrador IP
Antes do
Depois do
Escalonador Escalonador
Variáveis do Escalonador
SHELL
100
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
Observações:
•
•
•
•
•
As interrupções ocorrerão a cada 20ms
Cada instrução do programa, é executada em 5ms
Após a interrupção 2, deve ocorrer a carga do programa Word a partir do endereço 200
Após a interrupção 6, deve ocorrer a carga do programa Excel, a partir do endereço 300
Após a interrupção 12, a prioridade do Word é alterada de 1 para 2.
2) Considere os seguintes programas e suas respectivas prioridades de execução:
Programa
A
B
C
D
Prioridade
4
2
1
1
a) Descreva abaixo qual a sequência de execução dos programas de acordo com o apresentado em aula:
b) Calcule a taxa (%) de utilização da CPU para cada programa.
3) Considere os seguintes programas e suas respectivas prioridades de execução:
Programa
A
B
C
D
Prioridade
7
5
2
1
a) Descreva abaixo qual a sequência de execução dos programas.
b) Calcule a taxa (%) de utilização da CPU para cada programa.
4) Considere as seguintes taxas de utilização da CPU:
Programa
A
B
C
D
% da CPU
40
20
20
20
a) Determine a prioridade de execução de cada programa, de forma a garantir o menor tempo de ciclo do
escalonador de processos.
b) Considerando que cada interrupção ocorre a cada 10ms, qual foi o tempo de ciclo do escalonador obtido ?
5) Considere as seguintes taxas de utilização da CPU:
Programa
A
B
C
D
E
F
% da CPU
15
20
30
15
10
10
a) Determine a prioridade de execução de cada programa, de forma a garantir o menor tempo de ciclo do
escalonador de processos.
b) Considerando que cada interrupção ocorre a cada 10ms, qual foi o tempo de ciclo do escalonador obtido ?
6) Para que serve o escalonador de processos ?
7) Qual a parte de um S.O. que permite a solicitação de execução de outros programas pelo usuário?
8) Para que servem os vetores de interrupção ?
9) Qual o resumo do que faz o escalonador de processos para mudar o fluxo de execução para o próximo
programa a ser executado?
10) Considerando o esquema de Multitarefa apresentado em aula, qual dos programas abaixo utiliza uma maior
porcentagem de CPU :
•
•
Um Editor de Texto
Um Renderizador de Imagens
11) De acordo com a tabela abaixo, defina as prioridades e porcentagem de utilização da CPU por cada
programa programa:
INT
Registrador IP
Antes do
Depois do
Escalonador Escalonador
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
105
205
210
215
220
225
305
310
315
110
230
235
240
245
250
320
325
330
Programa
SHELL
Variáveis do Escalonador
SHELL
WORD
EXCEL
100
105
200
300
200
205
210
215
220
300
305
310
105
225
230
235
240
245
315
320
325
110
Prioridade
205
210
215
220
225
305
310
315
110
230
235
240
245
250
320
325
330
% CPU
WORD
EXCEL
Final do documento
Fernando J.C. Branquinho
http://www.branqs.com.br/universidade
Download

Prioridades de Execução