A maior rede de estudos do Brasil

Sistemas Operacionais

(1,5) Suponha que um programa A, que precisa executar no processador por 3a ms, faça duas operaçoes de E/S com durações de, respectivamente, 2 ms e 1,5 ms, sendo que a primeira é feita após A executar por 1/3 do seu tempo de execução, e que a segunda é feita após A executar por mais 1/3 do seu tempo de execução. Suponha ainda que um programa B, que precisa executar no processador por 4b ms0, faça uma operação de E/S, com duração de 3 ms, após executar por 1/4 do seu tempo de execução. Se a multiprogramação for usada somente para evitar a ociosidade do processador quando operações de E/S são feitas, e se um programa C, que não faz operações de E/S, executar por 1c ms somente quando não for possível evitar a ociosidade do processador com A e B executando, quais serão os menores valores que a, b e c poderão assumir para evitar completamente a ociosidade? Justifique a sua resposta.


3 resposta(s) - Contém resposta de Especialista

User badge image

RD Resoluções Verified user icon

Há mais de um mês

Para encontrar esses valores, utilizaremos a seguinte implementação de algoritmo:

Algoritmo "Exemplo Função"

// Função : Exemplificar Aplicação de Função

// Autor : Rodrigo Alencar

// Data : 07/12/2014

// Seção de Declarações

Var

A,B,C : Inteiro

Funcao fun (A,B,C : Inteiro ): Real

Var

R : Real

Inicio

R <- ((A + B + C) / (3))

Retorne (R)

Fimfuncao

inicio

// Seção de Comandos

Escreval( "Informe o valor de A, B e C respectivamente") //Imprime na tela

Leia(A,B,C) // Aciona a leitura de dados

Escreval("O resultado é :", fun(A,B,C)) //Imprime o resultado

fimalgoritmo

Para encontrar esses valores, utilizaremos a seguinte implementação de algoritmo:

Algoritmo "Exemplo Função"

// Função : Exemplificar Aplicação de Função

// Autor : Rodrigo Alencar

// Data : 07/12/2014

// Seção de Declarações

Var

A,B,C : Inteiro

Funcao fun (A,B,C : Inteiro ): Real

Var

R : Real

Inicio

R <- ((A + B + C) / (3))

Retorne (R)

Fimfuncao

inicio

// Seção de Comandos

Escreval( "Informe o valor de A, B e C respectivamente") //Imprime na tela

Leia(A,B,C) // Aciona a leitura de dados

Escreval("O resultado é :", fun(A,B,C)) //Imprime o resultado

fimalgoritmo

Essa pergunta já foi respondida por um dos nossos especialistas