Buscar

Concorrência em Sistemas Operacionais

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Alexander Costa Brandão
Sistemas Operacionais aula 2
Defina concorrência, e como esse conceito está presente nos sistemas operacionais multiprogramáveis? 
R: Concorrência é sobre a execução sequencial e disputada de um conjunto de tarefas independentes. Sob o ponto de vista de um sistema operacional, o responsável por esse gerenciamento é o escalonador de processos.
Qual a importância do mecanismo de interrupção para a implementação da multiprogramação?
R: Para controlar entrada e saída de dados, não é interessante que a CPU tenha que ficar continuamente monitorando e status de dispositivos como discos ou teclados. O mecanismo de interrupções permite que o hardware "chame a atenção" da CPU quando há algo a ser feito.
 Como se dá o mecanismo de funcionamento das interrupções.
R: Quando ocorre uma interrupção, a CPU interrompe o processamento do programa em execução e executa um pedaço de código (tipicamente parte do sistema operacional) chamado de tratador de interrupção. Em muitos casos, após a execução do tratador, a CPU volta a executar o programa interrompido.
Defina eventos síncronos e assíncronos? Como esses eventos estão relacionados ao mecanismo de interrupção e exceção?
R: Interrupções geradas por algum dispositivo externo à CPU, como teclado ou controlador de disco, são chamadas de interrupções de hardware ou assíncronas (ocorrem independentemente das instruções que a CPU está executando. As interrupções síncronas, muitas vezes também chamadas de traps. Traps ocorrem em consequência da instrução sendo executada.
Dê exemplos de eventos associados ao mecanismo de exceção.
R: Um tipo importante de interrupção de hardware á a interrupção do relógio. Em particular, esse mecanismo permite ao sistema operacional atribuir quotas de tempos de execução (fatias de tempo) para cada um dos processos em um sistema multiprograma. A cada interrupção do relógio, o tratador pode verificar se a fatia de tempo do processo em execução já se esgotou e, se for esse o caso, suspendê-lo e acionar o escalonador para que esse escolha outro processo para colocar em execução.
Qual a vantagem da E/S controlada por interrupção comparada com a técnica de spooling?
R: A operação de E/S controlada por interrupção é mais eficiente que a controlada por programa(spoolings), já que elimina a necessidade de o processador esperar pelo termino da operação além de permitir que varias operações de E/S sejam executadas simultaneamente.
Defina DMA, e qual a vantagem dessa técnica?
R: DMA é uma técnica que possibilita a transferência de dados, que permite um bloco de dados seja transferido entre a memoria principal e dispositivos de E/S sem intervenção do processador, exceto no inicio e no final de transferência. 
 Como o uso de buffering permite aumentar a concorrência em um sistema computacional
R: Quando se usa buffers o computador não vai precisar interromper o processamento tão frequentemente para ir buscar os dados no disco. Isso aumenta a concorrencia porque os dados "já estão lá" então os processos que dependem de tais dados podem ser ativados mais rapidamente, aumentando a concorrência.
Suponha que em um sistema multiprogramável, alguns usuários estejam utilizando o mesmo editor de textos (200 Kb), compilador (300 Kb), software de correio eletrônico (200 Kb) e uma aplicação corporativa (500 Kb). Caso o sistema não implemente reentrância, qual o espaço de memória principal ocupado pelos programas quando 10 usuários estiverem utilizando todas as aplicações simultaneamente? Qual o espaço liberado quando o sistema implementa reentrância em todas as aplicações? 
R: Sem reentrância, cada usuário teria sua cópia do código na memória totalizando 10 x (200 Kb + 300 Kb + 200 Kb + 500 Kb) = 12.000 Kb. Caso a reentrância seja implementada, apenas uma cópia do código seria necessária na memória principal (200 Kb + 300 Kb + 200 Kb + 500 Kb) totalizando 1.200 Kb. Um total de 10.800 Kb seriam liberados da memória principal.

Continue navegando