9
Redes de Petri Redes de Petri 1 1 ° Exercício ° Exercício Modele dois processos concorrentes Modele dois processos concorrentes entre si. entre si. Cada processo é cíclico e compostos Cada processo é cíclico e compostos por apenas três atividades. por apenas três atividades. Estes processos compartilham entre Estes processos compartilham entre si dois recursos: { si dois recursos: { printer printer , , scanner scanner } } Um modelo em redes de Petri para Um modelo em redes de Petri para este problema é apresentado no este problema é apresentado no próximo próximo slide slide . .

Redes de Petri 1 ° Exercício

Embed Size (px)

DESCRIPTION

Redes de Petri 1 ° Exercício. Modele dois processos concorrentes entre si. Cada processo é cíclico e compostos por apenas três atividades. Estes processos compartilham entre si dois recursos: { printer , scanner } - PowerPoint PPT Presentation

Citation preview

Page 1: Redes de Petri 1 ° Exercício

Redes de PetriRedes de Petri11° Exercício ° Exercício

Modele dois processos concorrentes Modele dois processos concorrentes entre si. entre si.

Cada processo é cíclico e compostos por Cada processo é cíclico e compostos por apenas três atividades.apenas três atividades.

Estes processos compartilham entre si Estes processos compartilham entre si dois recursos: {dois recursos: {printerprinter, , scannerscanner}}

Um modelo em redes de Petri para este Um modelo em redes de Petri para este problema é apresentado no próximo problema é apresentado no próximo slideslide..

Page 2: Redes de Petri 1 ° Exercício

Redes de PetriRedes de Petri11° Exercício° Exercício

Este modelo entra em Este modelo entra em DeadlockDeadlock. Onde?. Onde? Apresente sue modelo que evite esta Apresente sue modelo que evite esta

situação.situação. p0

t0

p1

t1

p2

t2

p3

t3

p4

t4

p5

t5

p6

p7

Proc1

Proc

2

printer

scanner

p.printer.get

p.printer.put

p.scanner.get

p.scanner.put

q.scanner.get

q.printer.get

q.scanner.put

q.printer.put

Page 3: Redes de Petri 1 ° Exercício

Redes de PetriRedes de Petri11° Exercício° Exercício

Uma soluçãoUma solução

p0

t0

p1

t1

p2

t2

p3

t3

p4

t4

p5

t5

p6

p7

Proc1

Proc

2

p.printer.get

p.scanner.get

p.scanner.putp.printer.put

q.printer.get

q.scanner.get

q.printer.putq.scanner.put

printer

scanner

Page 4: Redes de Petri 1 ° Exercício

Redes de PetriRedes de Petri11° Exercício° Exercício

RESOURCE = (get->put->RESOURCE).P = (printer.get->scanner.get

->copy ->printer.put->scanner.put

->P).Q = (scanner.get->printer.get

->copy ->scanner.put->printer.put

->Q).||SYS = (p:P||q:Q

||{p,q}::printer:RESOURCE ||{p,q}::scanner:RESOURCE ).

Considerando o analizado no modelo anterior, o que você alteraria naDescrição FSP para evitar o deadlock?

Page 5: Redes de Petri 1 ° Exercício

Redes de PetriRedes de Petri 22° Exercício° Exercício

MAKE_A = (makeA->ready->used->MAKE_A).MAKE_B = (makeB->ready->used->MAKE_B).ASSEMBLE = (ready->assemble->used->ASSEMBLE).

||FACTORY = (MAKE_A || MAKE_B || ASSEMBLE).

Traduza a descrição FSP para redes de Petri

Page 6: Redes de Petri 1 ° Exercício

makeA

ready

used

makeB

ready

used

ready

assemble

used

MakeA MakeB Assemble

Redes de PetriRedes de Petri 22° Exercício - Solução° Exercício - Solução

Page 7: Redes de Petri 1 ° Exercício

makeA

ready

makeB

used

assemble

MakeA MakeB Assemble

Redes de PetriRedes de Petri 22° Exercício - Solução° Exercício - Solução

Page 8: Redes de Petri 1 ° Exercício

Jantar dos FilósofosJantar dos Filósofos 33° Exercício ° Exercício

Cinco filósofos estão sentados em torno de uma mesa. Cada filósofo passa o tempo pensando, tendo fome e comendo. No centro da mesa há um prato de spaghetti. Cada filósofo precisa de dois garfos para comer e só podem utilizar os garfos imediatamente a sua direita e a sua esquerda. Um garfo é colocado entre cada par de filósofo.

•Para facilitar, gere a rede de Petri para apenas três filósofos.•Esta rede não deve entrar em bloqueio e deve possibilitar que todos os filósofos tenham a oportunidade de comer.

0

1

23

40

1

2

3

4

Page 9: Redes de Petri 1 ° Exercício

Jantar dos FilósofosJantar dos Filósofos 33° Exercício - Solução° Exercício - Solução

pensando pensando

pensando

com fome com fome

com fome

comendo comendo

comendo

começacomer

começacomer

começacomer

começapensar

começapensar

começapensar

começa ter fome

começa ter fome

começa ter fome

Filósofo 1

Filósofo 2

Filósofo 3

garfo 1

garfo 2

garfo 3