Você está na página 1de 17

1

Aula 03 - Concorrência
por
Sediane Carmem Lunardi
Hernandes
2

1. Introdução
• Sistemas operacionais podem ser vistos como
um conjunto de rotinas executadas
concorrentemente de forma ordenada
▫ Princípio básico para o projeto e implementação
de Sistemas Multiprogramáveis

E/ S E/ S 1

UCP livre UCP 1 2 1

tempo tempo
(a) Sistema Monoprogramável (b) Sistema Multiprogramável
3

1. Introdução (cont.)

Características da execução de programas


Características Prog1 Prog2 Prog3
Utilização da CPU Alta Baixa Baixa
Operações de Entrada e Saída Poucas Muitas Muitas
Tempo de Processamento 5 mim 15 min 10 min
Memória utilizada 50 kb 100 kb 80 kb
Utilização de disco Não Não Sim
Utilização de terminal Não Sim Não
Utilização de impressora Não Não Sim
4

1. Introdução (cont.)

Quanto tempo irá levar para a


execução dos 3 programas em
um sistema monoprogramado?

E se fosse em um sistema
multiprogramado?
5

Monoprogramação X Multiprogramação
Monoprogramação Multiprogramação
Utilização da CPU 17% 33%
Utilização da memória 30% 67%
Utilização de disco 33% 67%
Utilização de impressora 33% 6%
Tempo total de 30 min 15 min.
processamento
Taxa de throughput 6 prog/hora 12 prog/hora
6

2. Interrupção
• Mecanismo pelo qual componentes distintos do
processador (E/S, memória) podem interromper a
sequência normal de execução de instruções do
processador
• É uma transferência de controle para o SISTEMA
OPERACIONAL em resposta a um evento de
hardware ou software
• Por exemplo:
▫ Usuário tecla CTRL + C
▫ Instrução faz divisão por 0 (zero)
▫ Dados chegam do disco ou da interface de rede
▫ Temporizador expira (Permite ao SO realizar certas
funções a intervalos de tempos regulares)
7

2. Interrupção (cont.)
• Como ocorre o
tratamento da
interrupção?
▫ Lembrando que:
 Unidade de controle, ao final
da execução de cada
instrução, verifica a
ocorrência de alguma
interrupção
8

2. Interrupção (cont.)
9

2. Interrupção (cont.)
• Métodos utilizados para o tratamento de
interrupções:
▫ Vetor de tratamento de interrupções
 indexado pelo número do dispositivo, fornecido com a
solicitação da interrupção
 Vetor contém endereço da rotina de tratamento da
interrupção do dispositivo que está sendo interrompido
(Windows, UNIX)
▫ Registrador de status
 Armazena o tipo de evento ocorrido
 Existe uma única rotina de tratamento de interrupção que
testa o conteúdo do registador e trata a interrupção de
maneira adequada
10

2. Interrupção (cont.)
Exemplo de configuração comum IRQ 8 - Relógio do CMOS (fixo)
de endereços em um PC da era IRQ 9 - Placa de vídeo
Pentium 7: IRQ 10 - Livre
IRQ 0 - Sinal de clock da placa- IRQ 11 - Controlador USB
mãe (fixo) IRQ 12 - Porta PS/2
IRQ 1 - Teclado (fixo) IRQ 13 - Coprocessador
IRQ 2 - Cascateador de IRQs aritmético (fixo)
(fixo) IRQ 14 - IDE Primária
IRQ 3 - Porta serial 2 IRQ 15 - IDE Secundária
IRQ 4 - Porta serial 1
IRQ 5 - Livre
IRQ 6 - Drive de disquetes Cada IRQs possui uma linha
IRQ 7 - Porta paralela física que a liga ao processador
(impressora)
11

3. Operações de entrada e saída


• Responsável por movimentar
os dados entre os dispositivos
periféricos que controla e seu
buffer de armazenamento local Memória
Principal
UCP
• Controlador é responsável por
um tipo específico de
dispositivo
▫ Contem buffer local e
conjunto de registradores de
Controlador
uso específico
▫ SO tem um driver de
dispositivo para cada
controlador de dispositivo
Dispositivos de E/ S
12

3. Operações de entrada e saída


(cont.)
• Driver (SOFTWARE) de dispositivo entende o controlador
• Para iniciar operação de I/O, o driver de dispositivo carrega
os registradores apropriados dentro do controlador de
dispositivo
▫ Controlador examina o conteúdo de seus registradores para saber
o que fazer
1. Controlador inicia a transferência dos dados dos dispositivos
para o seu buffer local
2. Transferência concluída, controlador informa driver através de
uma interrupção
3. Driver retorna controle para o SO passando dados ou ponteiro
para os dados se for leitura ou status no caso de escrita
4. Rotina do SO é responsável por obter dados da memória
principal ou armazenar dados na memória principal I/O
dirigida por interrupção
1. Dado no buffer do controlador, SO deve transferir para memória
13

3. Operações de entrada e saída


(cont.)
• I/O dirigida por interrupção adequada para pequenas
quantidades de dados
• Para maiores quantidades de dados usa-se DMA (direct
memory acess - acesso direto à memória)
▫ controlador transfere um bloco inteiro de dados diretamente da
memória para seu próprio buffer ou a partir dele para a
memória, sem intervenção da CPU
▫ Somente uma interrupção é gerada por bloco, para informar ao
driver de dispositivo que a operação foi concluída, em vez de uma
interrupção por byte gerada pelos dispositivos de baixa
velocidade
▫ Enquanto o controlador de dispositivo está executando essas
operações, a CPU fica disponível para processar outras tarefas
▫ CONTROLADOR REALIZA A TRANSFERÊNCIA ENTRE O
PERIFÉRICO E A MEMÓRIA PRINCIPAL
14

4. Buffering
• Técnica que permite a utilização de área na
memória principal para a transferência de dados
entre os dispositivos de E/S e a memória

Memória
Principal

gravação gravação
UCP Controlador
Buffer
leitura leitura
15

5. Spolling
• Técnica que utiliza uma área em disco como se
fosse um grande buffer (dados podem ser lidos
ou gravados em disco, enquanto programas são
executados concorrentemente)

Sistema Operacional

Programa Arquivo Impressora


de Spool
16

6. Reentrância
• Capacidade de um código
executável (código reentrante)
ser compartilhado por vários
usuários, exigindo que apenas
uma cópia do programa esteja usuário A usuário C
em memória (sistemas
multiprogramados) código reentrante
usuário B usuário D
área de dados do usuário A

área de dados do usuário B

área de dados do usuário C

área de dados do usuário D

Memória Principal
17

Bibliografia
• SILBERSCHATZ, Abraham, GALVIN, Peter,
GAGNE, Greg. Fundamentos de Sistemas
Operacionais. 8ª. Ed. Rio de Janeiro : LTC,
2010.
• MACHADO, Francis B.; MAIA, Luiz Paulo.
Arquitetura de Sistemas Operacionais. 3ª
ed. Rio de Janeiro : LTC, 2002.

Você também pode gostar