aula tp-sem resoluçõesemt/compa/modulo1/teorico... · compa tp - módulo 1; sem resoluções 5...

28
1 COMPA TP - Módulo 1; Sem Resoluções 1 Computação Avançada Módulo 1 (Aula Teórico-Prática) Modelação e Análise de Sistemas Computacionais Nuno Pereira [email protected] Eduardo Tovar [email protected] COMPA TP - Módulo 1; Sem Resoluções 2 PARTE I Revisão das Regras das RdP

Upload: others

Post on 21-Jul-2020

7 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Aula TP-Sem Resoluçõesemt/COMPA/Modulo1/Teorico... · COMPA TP - Módulo 1; Sem Resoluções 5 Conjunto de Exemplos (2) (Marcação Inicial) F 2 D 2 E 10 100100 COMPA TP - Módulo

1

COMPA TP - Módulo 1; Sem Resoluções 1

Computação Avançada

Módulo 1 (Aula Teórico-Prática)Modelação e Análise de Sistemas Computacionais

Nuno Pereira [email protected] Tovar [email protected]

COMPA TP - Módulo 1; Sem Resoluções 2

PARTE I

Revisão das Regras das RdP

Page 2: Aula TP-Sem Resoluçõesemt/COMPA/Modulo1/Teorico... · COMPA TP - Módulo 1; Sem Resoluções 5 Conjunto de Exemplos (2) (Marcação Inicial) F 2 D 2 E 10 100100 COMPA TP - Módulo

2

COMPA TP - Módulo 1; Sem Resoluções 3

A

Conjunto de Exemplos (1)(Marcação Inicial)

B

22

C

22

COMPA TP - Módulo 1; Sem Resoluções 4

A B

22

C

22

A C

22

Transição habilitada. Transição não habilitada.

Transição habilitada.

Conjunto de Exemplos (1)(Evolução da Marcação)

Após disparo Após disparo

Page 3: Aula TP-Sem Resoluçõesemt/COMPA/Modulo1/Teorico... · COMPA TP - Módulo 1; Sem Resoluções 5 Conjunto de Exemplos (2) (Marcação Inicial) F 2 D 2 E 10 100100 COMPA TP - Módulo

3

COMPA TP - Módulo 1; Sem Resoluções 5

Conjunto de Exemplos (2)(Marcação Inicial)

F

22

D

22

E

1010 100100

COMPA TP - Módulo 1; Sem Resoluções 6

Conjunto de Exemplos (2)(Evolução da Marcação)

F

22

D

22

E

1010 100100

F

22

D

22

E

1010 100100

1010

Disparo acrescenta dez marcas na posição posterior.

100100

Após disparo Após disparoApós disparo

Disparo acrescenta duas marcas na posição posterior.

Disparo acrescenta cem marcas na

posição posterior.

Page 4: Aula TP-Sem Resoluçõesemt/COMPA/Modulo1/Teorico... · COMPA TP - Módulo 1; Sem Resoluções 5 Conjunto de Exemplos (2) (Marcação Inicial) F 2 D 2 E 10 100100 COMPA TP - Módulo

4

COMPA TP - Módulo 1; Sem Resoluções 7

Conjunto de Exemplos (3)(Marcação Inicial)

G H

22

I

22

33

COMPA TP - Módulo 1; Sem Resoluções 8

Conjunto de Exemplos (3)(Evolução da Marcação)

G H

22

IH

22

22 33

I

22

33

Após disparoApós disparo

Transição não habilitada.

Page 5: Aula TP-Sem Resoluçõesemt/COMPA/Modulo1/Teorico... · COMPA TP - Módulo 1; Sem Resoluções 5 Conjunto de Exemplos (2) (Marcação Inicial) F 2 D 2 E 10 100100 COMPA TP - Módulo

5

COMPA TP - Módulo 1; Sem Resoluções 9

Conjunto de Exemplos (4)(Marcação Inicial)

J K L

22 22

33

55

COMPA TP - Módulo 1; Sem Resoluções 10

Conjunto de Exemplos (4)(Evolução da Marcação)

J K L

22 22

33

55

J K L

22 22

33

55

Após disparo Após disparoApós disparo

Page 6: Aula TP-Sem Resoluçõesemt/COMPA/Modulo1/Teorico... · COMPA TP - Módulo 1; Sem Resoluções 5 Conjunto de Exemplos (2) (Marcação Inicial) F 2 D 2 E 10 100100 COMPA TP - Módulo

6

COMPA TP - Módulo 1; Sem Resoluções 11

M

Conjunto de Exemplos (5)(Marcação Inicial)

N

33

COMPA TP - Módulo 1; Sem Resoluções 12

M

Conjunto de Exemplos (5)(Evolução da Marcação)

N

33

M N

33

Após disparoApós disparo

Page 7: Aula TP-Sem Resoluçõesemt/COMPA/Modulo1/Teorico... · COMPA TP - Módulo 1; Sem Resoluções 5 Conjunto de Exemplos (2) (Marcação Inicial) F 2 D 2 E 10 100100 COMPA TP - Módulo

7

COMPA TP - Módulo 1; Sem Resoluções 13

Exercício

2233

•Qual é a sequência de disparo de transições?

t1

t2

t3

t4

P1

P2 P3

P4

P5

P6

P7

P8

COMPA TP - Módulo 1; Sem Resoluções 14

Exercício

2233

t1

t2

t3

t4

P1

P2 P3

P4

P5

P6

P7

P8

Page 8: Aula TP-Sem Resoluçõesemt/COMPA/Modulo1/Teorico... · COMPA TP - Módulo 1; Sem Resoluções 5 Conjunto de Exemplos (2) (Marcação Inicial) F 2 D 2 E 10 100100 COMPA TP - Módulo

8

COMPA TP - Módulo 1; Sem Resoluções 15

Exercício

2233

t1

t2

t3

t4

P1

P2 P3

P4

P5

P6

P7

P8

COMPA TP - Módulo 1; Sem Resoluções 16

Exercício

2233

t1

t2

t3

t4

P1

P2 P3

P4

P5

P6

P7

P8

Page 9: Aula TP-Sem Resoluçõesemt/COMPA/Modulo1/Teorico... · COMPA TP - Módulo 1; Sem Resoluções 5 Conjunto de Exemplos (2) (Marcação Inicial) F 2 D 2 E 10 100100 COMPA TP - Módulo

9

COMPA TP - Módulo 1; Sem Resoluções 17

Exercício

2233

t1

t2

t3

t4

P1

P2 P3

P4

P5

P6

P7

P8

COMPA TP - Módulo 1; Sem Resoluções 18

Exercício

2233

t1

t2

t3

t4

P1

P2 P3

P4

P5

P6

P7

P8

Page 10: Aula TP-Sem Resoluçõesemt/COMPA/Modulo1/Teorico... · COMPA TP - Módulo 1; Sem Resoluções 5 Conjunto de Exemplos (2) (Marcação Inicial) F 2 D 2 E 10 100100 COMPA TP - Módulo

10

COMPA TP - Módulo 1; Sem Resoluções 19

Exercício

• Elaborar o respectivo gráfico das marcações acessíveis

COMPA TP - Módulo 1; Sem Resoluções 20

Exercício

• Elaborar o respectivo gráfico das marcações acessíveis

Page 11: Aula TP-Sem Resoluçõesemt/COMPA/Modulo1/Teorico... · COMPA TP - Módulo 1; Sem Resoluções 5 Conjunto de Exemplos (2) (Marcação Inicial) F 2 D 2 E 10 100100 COMPA TP - Módulo

11

COMPA TP - Módulo 1; Sem Resoluções 21

PARTE II

Exemplos de Modelação

COMPA TP - Módulo 1; Sem Resoluções 22

Exemplos de Modelação

1. Semáforos de Trânsito2. Sistema Sequencial c/ Monitorização3. Comutador Simples4. Trabalhos de Impressão 5. Servidor de Base de Dados (Exercício)

Page 12: Aula TP-Sem Resoluçõesemt/COMPA/Modulo1/Teorico... · COMPA TP - Módulo 1; Sem Resoluções 5 Conjunto de Exemplos (2) (Marcação Inicial) F 2 D 2 E 10 100100 COMPA TP - Módulo

12

COMPA TP - Módulo 1; Sem Resoluções 23

1. Semáforos de Trânsito

• Um semáforo de trânsito com três cores.• Apenas uma cor está acesa de

cada vez

COMPA TP - Módulo 1; Sem Resoluções 24

1. Semáforos de Trânsito

• Um semáforo de trânsito com três cores.• Apenas uma cor está acesa de

cada vez

VerdeVerde

AmareloAmarelo

VermelhoVermelho

Page 13: Aula TP-Sem Resoluçõesemt/COMPA/Modulo1/Teorico... · COMPA TP - Módulo 1; Sem Resoluções 5 Conjunto de Exemplos (2) (Marcação Inicial) F 2 D 2 E 10 100100 COMPA TP - Módulo

13

COMPA TP - Módulo 1; Sem Resoluções 25

1. Semáforos de Trânsito• Dois semáforos de trânsito num cruzamento (S1 e S2).• Não podemos ter dois semáforos a verde!

S1S1 S2S2

COMPA TP - Módulo 1; Sem Resoluções 26

1. Semáforos de Trânsito

Este modelo NÃO garante alternância!Este modelo NÃO garante alternância!

Verde S2Verde S2

Amarelo S2Amarelo S2

Vermelho S2Vermelho S2

Verde S1Verde S1

Amarelo S1Amarelo S1

Vermelho S1Vermelho S1

S1S1 S2S2

• Dois semáforos de trânsito num cruzamento (S1 e S2).• Não podemos ter dois semáforos a verde!• Devemos garantir alternância entre os dois semáforos.

Page 14: Aula TP-Sem Resoluçõesemt/COMPA/Modulo1/Teorico... · COMPA TP - Módulo 1; Sem Resoluções 5 Conjunto de Exemplos (2) (Marcação Inicial) F 2 D 2 E 10 100100 COMPA TP - Módulo

14

COMPA TP - Módulo 1; Sem Resoluções 27

1. Semáforos de Trânsito• Dois semáforos de trânsito num cruzamento (S1 e S2).• Não podemos ter dois semáforos a verde!• Devemos garantir alternância entre os dois semáforos.

S1S1 S2S2

COMPA TP - Módulo 1; Sem Resoluções 28

1. Semáforos de Trânsito

• Sequência de transições

S1S1 S2S2

Verde S2Verde S2

Amarelo S2Amarelo S2

Vermelho S2Vermelho S2

Verde S1Verde S1

Amarelo S1Amarelo S1

Vermelho S1Vermelho S1

Page 15: Aula TP-Sem Resoluçõesemt/COMPA/Modulo1/Teorico... · COMPA TP - Módulo 1; Sem Resoluções 5 Conjunto de Exemplos (2) (Marcação Inicial) F 2 D 2 E 10 100100 COMPA TP - Módulo

15

COMPA TP - Módulo 1; Sem Resoluções 29

1. Semáforos de Trânsito

• Sequência de transições

Verde S2Verde S2

Amarelo S2Amarelo S2

Vermelho S2Vermelho S2

Verde S1Verde S1

Amarelo S1Amarelo S1

Vermelho S1Vermelho S1

S1S1 S2S2

COMPA TP - Módulo 1; Sem Resoluções 30

1. Semáforos de Trânsito

• Sequência de transições

Verde S2Verde S2

Amarelo S2Amarelo S2

Vermelho S2Vermelho S2

Verde S1Verde S1

Amarelo S1Amarelo S1

Vermelho S1Vermelho S1

S1S1 S2S2NOTA: A duração deste estado é zero.

Page 16: Aula TP-Sem Resoluçõesemt/COMPA/Modulo1/Teorico... · COMPA TP - Módulo 1; Sem Resoluções 5 Conjunto de Exemplos (2) (Marcação Inicial) F 2 D 2 E 10 100100 COMPA TP - Módulo

16

COMPA TP - Módulo 1; Sem Resoluções 31

1. Semáforos de Trânsito

• Sequência de transições

Verde S2Verde S2

Amarelo S2Amarelo S2

Vermelho S2Vermelho S2

Verde S1Verde S1

Amarelo S1Amarelo S1

Vermelho S1Vermelho S1

S1S1 S2S2

COMPA TP - Módulo 1; Sem Resoluções 32

1. Semáforos de Trânsito

• Sequência de transições

Verde S2Verde S2

Amarelo S2Amarelo S2

Vermelho S2Vermelho S2

Verde S1Verde S1

Amarelo S1Amarelo S1

Vermelho S1Vermelho S1

S1S1 S2S2

Page 17: Aula TP-Sem Resoluçõesemt/COMPA/Modulo1/Teorico... · COMPA TP - Módulo 1; Sem Resoluções 5 Conjunto de Exemplos (2) (Marcação Inicial) F 2 D 2 E 10 100100 COMPA TP - Módulo

17

COMPA TP - Módulo 1; Sem Resoluções 33

1. Semáforos de Trânsito

• Sequência de transições

Verde S2Verde S2

Amarelo S2Amarelo S2

Vermelho S2Vermelho S2

Verde S1Verde S1

Amarelo S1Amarelo S1

Vermelho S1Vermelho S1

S1S1 S2S2

COMPA TP - Módulo 1; Sem Resoluções 34

2. Sistema Sequencial c/ Monitorização

• Um sistema executa 4 processos sequenciais: A, B, C e D.• Enquanto estiverem a ser executados os processos B e D, é

despoletado um processo secundário de monitorização

• Passos de modelação:

1. Começamos por modelar a sequência de processos;2. Depois, modelamos a activação do processo de monitorização.

Page 18: Aula TP-Sem Resoluçõesemt/COMPA/Modulo1/Teorico... · COMPA TP - Módulo 1; Sem Resoluções 5 Conjunto de Exemplos (2) (Marcação Inicial) F 2 D 2 E 10 100100 COMPA TP - Módulo

18

COMPA TP - Módulo 1; Sem Resoluções 35

2. Sistema Sequencial c/ Monitorização

• Um sistema executa 4 processos sequenciais: A, B, C e D.• Enquanto estiverem a ser executados os processos B ou D, é

despoletado um processo secundário de monitorização1. Come1. Começçamos por modelar a amos por modelar a sequência de processossequência de processos

COMPA TP - Módulo 1; Sem Resoluções 36

2. Sistema Sequencial c/ Monitorização

• Um sistema executa 4 processos sequenciais: A, B, C e D.• Enquanto estiverem a ser executados os processos B ou D, é

despoletado um processo secundário de monitorização2. E agora modelamos a 2. E agora modelamos a activaactivaçção do processo de ão do processo de monitorizamonitorizaççãoão

Page 19: Aula TP-Sem Resoluçõesemt/COMPA/Modulo1/Teorico... · COMPA TP - Módulo 1; Sem Resoluções 5 Conjunto de Exemplos (2) (Marcação Inicial) F 2 D 2 E 10 100100 COMPA TP - Módulo

19

COMPA TP - Módulo 1; Sem Resoluções 37

2. Sistema Sequencial c/ Monitorização

• Um sistema executa 4 processos sequenciais: A, B, C e D.• Enquanto estiverem a ser executados os processos B ou D, é

despoletado um processo secundário de monitorização

AA

BB

CC

DD

O processo de monitorizaO processo de monitorizaçção ão éédespoletado despoletado enquantoenquanto existir uma existir uma marca em B marca em B ouou DD

MonitorizaMonitorizaççãoão

EsperaEspera

2. E agora modelamos a 2. E agora modelamos a activaactivaçção do processo de ão do processo de monitorizamonitorizaççãoão

COMPA TP - Módulo 1; Sem Resoluções 38

• Um comutador (switch) que serve as portas de entrada em Round-Robin (RR).

• Consideremos que:– Cada porta tem uma fila de entrada de mensagens com capacidade

máxima de 50 mensagens;– O comutador precisa de V unidades de tempo para verificar se fila de

entrada de mensagens tem mensagens;– O comutador demora C unidades de tempo para colocar a mensagem

na fila de saída da porta de destino;– A chegada de mensagens a uma porta do comutador acontece de

acordo com um processo de poisson (tempo entre chegadas exponencial).

3. Comutador Simples

RoundRound--RobinRobinPISCOPISCO

Page 20: Aula TP-Sem Resoluçõesemt/COMPA/Modulo1/Teorico... · COMPA TP - Módulo 1; Sem Resoluções 5 Conjunto de Exemplos (2) (Marcação Inicial) F 2 D 2 E 10 100100 COMPA TP - Módulo

20

COMPA TP - Módulo 1; Sem Resoluções 39

3. Comutador Simples• Por simplicidade vamos modelar apenas 4 portas.

• Passos de modelação:1. Comecemos por modelar o mecanismo RR de serviço às filas do

comutador; 2. De seguida modelamos a verificação das filas de mensagens e

comutação em cada nó;3. Finalmente, modelar o caso quando o Buffer de mensagens

está vazio.

COMPA TP - Módulo 1; Sem Resoluções 40

3. Comutador Simples• Por simplicidade vamos modelar apenas 4 portas.• Comecemos por modelar o mecanismo RR de serviço às filas do

comutador:

Page 21: Aula TP-Sem Resoluçõesemt/COMPA/Modulo1/Teorico... · COMPA TP - Módulo 1; Sem Resoluções 5 Conjunto de Exemplos (2) (Marcação Inicial) F 2 D 2 E 10 100100 COMPA TP - Módulo

21

COMPA TP - Módulo 1; Sem Resoluções 41

3. Comutador Simples• De seguida modelamos a verificação das filas de

mensagens e comutação em cada nó:

COMPA TP - Módulo 1; Sem Resoluções 42

3. Comutador Simples• Falta modelar o caso quando o Buffer de mensagens

está vazio:

Page 22: Aula TP-Sem Resoluçõesemt/COMPA/Modulo1/Teorico... · COMPA TP - Módulo 1; Sem Resoluções 5 Conjunto de Exemplos (2) (Marcação Inicial) F 2 D 2 E 10 100100 COMPA TP - Módulo

22

COMPA TP - Módulo 1; Sem Resoluções 43

3. Comutador Simples• Falta modelar o caso quando o Buffer de mensagens

está vazio:

FimFim

Chegada Chegada MsgMsg

BufferBuffer MsgMsg

BufferBuffer c/ c/ MsgMsg

Porta XPorta X

5050

5050

BufferBuffer VazioVazio

5050

Tamanho do Tamanho do BufferBuffer

Leitura da posiLeitura da posiçção. Se tem menos de 50 ão. Se tem menos de 50 marcas, então existem mensagens no marcas, então existem mensagens no bufferbuffer; senão, o ; senão, o bufferbuffer estestáá vazio.vazio.

InInííciocio

Tempo de verificaTempo de verificaçção da ão da fila de mensagens (fila de mensagens (VV))

Tempo Tempo para colocar a para colocar a mensagem na fila de mensagem na fila de sasaíída da porta de da da porta de destinodestino ((CC))

COMPA TP - Módulo 1; Sem Resoluções 44

3. Comutador Simples• O modelo final:

Page 23: Aula TP-Sem Resoluçõesemt/COMPA/Modulo1/Teorico... · COMPA TP - Módulo 1; Sem Resoluções 5 Conjunto de Exemplos (2) (Marcação Inicial) F 2 D 2 E 10 100100 COMPA TP - Módulo

23

COMPA TP - Módulo 1; Sem Resoluções 45

4. Trabalhos de Impressão• Temos 3 processos P1, P2, P3.• O processo P1 faz o pré-processamento de trabalhos de

impressão.• Após o pré-processamento de P1, pode ser executado o

processo P2 ou P3 que enviam os trabalhos para as impressoras

• Os processos acedem às seguintes estruturas de dados partilhadas:– P1: Acede a I1 ou I2– P2: Acede a I1– P3: Acede a I2

COMPA TP - Módulo 1; Sem Resoluções 46

4. Trabalhos de Impressão

• Passos de modelação:

1. Vamos começar por fazer a estrutura sequencial básica: Chegada de pedidos → P1 → P2 ou P3;

2. Modelar os acessos aos recursos (Impressoras I1 e I2):1. Começamos por modelar o acesso feito por P2 e P3;2. Modelar o acesso feito por P1 aos recursos partilhados.

Page 24: Aula TP-Sem Resoluçõesemt/COMPA/Modulo1/Teorico... · COMPA TP - Módulo 1; Sem Resoluções 5 Conjunto de Exemplos (2) (Marcação Inicial) F 2 D 2 E 10 100100 COMPA TP - Módulo

24

COMPA TP - Módulo 1; Sem Resoluções 47

4. Trabalhos de Impressão

• Vamos começar por fazer a estrutura sequencial básica: Chegada de pedidos → P1 → P2 ou P3:

COMPA TP - Módulo 1; Sem Resoluções 48

4. Trabalhos de Impressão

• Temos de modelar os acessos aos recursos (Impressoras I1 e I2); Começamos por modelar o acesso feito por P2 e P3:

Page 25: Aula TP-Sem Resoluçõesemt/COMPA/Modulo1/Teorico... · COMPA TP - Módulo 1; Sem Resoluções 5 Conjunto de Exemplos (2) (Marcação Inicial) F 2 D 2 E 10 100100 COMPA TP - Módulo

25

COMPA TP - Módulo 1; Sem Resoluções 49

4. Trabalhos de Impressão

• Como modelar o acesso feito por P1 aos recursos partilhados?

COMPA TP - Módulo 1; Sem Resoluções 50

4. Trabalhos de Impressão

Fila PedidosFila Pedidos

Chegada Chegada PedidoPedido

P2P2

Pedido Pedido ImpressoImpresso

• Temos de modelar a alternativa de aceder a um recurso ou outro (I1 ou I2)…

P1P1

P3P3

I1I1

I2I2

Page 26: Aula TP-Sem Resoluçõesemt/COMPA/Modulo1/Teorico... · COMPA TP - Módulo 1; Sem Resoluções 5 Conjunto de Exemplos (2) (Marcação Inicial) F 2 D 2 E 10 100100 COMPA TP - Módulo

26

COMPA TP - Módulo 1; Sem Resoluções 51

4. Trabalhos de Impressão

• Modelar a alternativa de aceder a um recurso ou outro:

Fila PedidosFila Pedidos

Chegada Chegada PedidoPedido

I2I2

I1I1

P1 utiliza I1P1 utiliza I1

P1 utiliza I2P1 utiliza I2

P2P2

P3P3

Pedido Pedido ImpressoImpresso

P1 utiliza I1 P1 utiliza I1 OUOU I2I2

P1 enquanto utiliza I1P1 enquanto utiliza I1

P1 enquanto utiliza I2P1 enquanto utiliza I2

COMPA TP - Módulo 1; Sem Resoluções 52

4. Trabalhos de Impressão

• Temos de modelar o facto de apenas poder ser executada uma das opções:

Fila PedidosFila Pedidos

Chegada Chegada PedidoPedido

I2I2

I1I1

P1 utiliza I1P1 utiliza I1

P1 utiliza I2P1 utiliza I2

P2P2

P3P3

Pedido Pedido ImpressoImpresso

Page 27: Aula TP-Sem Resoluçõesemt/COMPA/Modulo1/Teorico... · COMPA TP - Módulo 1; Sem Resoluções 5 Conjunto de Exemplos (2) (Marcação Inicial) F 2 D 2 E 10 100100 COMPA TP - Módulo

27

COMPA TP - Módulo 1; Sem Resoluções 53

4. Trabalhos de Impressão

• Adicionando todos os acesso aos recursos, temos o modelo final:

COMPA TP - Módulo 1; Sem Resoluções 54

Exercício: 5. Servidor de Base de Dados

• Uma base de dados cria processos que acedem a uma tabela. Os processos podem ter dois estados: escrita e leitura.

• As operações de leitura e escrita são exclusivas; Quando temos um leitor a aceder à tabela, nenhum escritor pode aceder a esta e vice-versa.

• São permitidos vários leitores ao mesmo tempo, mas por restrições do sistema, apenas podemos ter um máximo de cinco leitores a aceder àtabela ao mesmo tempo.

• Apenas podemos ter um escritor de cada vez.

• Podem existir em simultâneo um máximo de 50 processos a pendentes para efectuar leituras.

• Podem existir em simultâneo um máximo de 10 processos a pendentes para efectuar escritas.

Page 28: Aula TP-Sem Resoluçõesemt/COMPA/Modulo1/Teorico... · COMPA TP - Módulo 1; Sem Resoluções 5 Conjunto de Exemplos (2) (Marcação Inicial) F 2 D 2 E 10 100100 COMPA TP - Módulo

28

COMPA TP - Módulo 1; Sem Resoluções 55

5. Servidor de Base de Dados

• Começamos pelas duas filas; Leitores e escritores:

COMPA TP - Módulo 1; Sem Resoluções 56

5. Servidor de Base de Dados

• E depois modelamos a leitura e escrita: