Upload
barth
View
79
Download
5
Embed Size (px)
DESCRIPTION
JSARP – Simulador e Analisador de Redes de Petri. Felipe Lino Alexandre Sztajnberg [email protected] [email protected] DICC / IME / UERJ Rio de Janeiro, RJ, Brasil. Sumário. Motivação Trabalhos relacionados JSARP Trabalhos futuros Conclusão. - PowerPoint PPT Presentation
Citation preview
5 / julho / 2007 CSBC / Workshop de Sistemas Operacionais 2007
1
JSARP – Simulador e JSARP – Simulador e Analisador de Redes de Analisador de Redes de
PetriPetri
Felipe Lino Alexandre Felipe Lino Alexandre SztajnbergSztajnberg [email protected] [email protected]@gmail.com [email protected]
DICC / IME / UERJDICC / IME / UERJ
Rio de Janeiro, RJ, BrasilRio de Janeiro, RJ, Brasil
5 / julho / 2007 CSBC / Workshop de Sistemas Operacionais 2007
2
SumárioMotivaçãoTrabalhos relacionadosJSARPTrabalhos futurosConclusão
5 / julho / 2007 CSBC / Workshop de Sistemas Operacionais 2007
3
MotivaçãoMotivaçãoPotencial da modelagem com RdP em sistemas computacionais:
Escalonamento de processos Protocolos de comunicação Sistemas concorrentes
Verificação de propriedades como: deadlock e livelock. Refletem características do sistema modeladoFuncionalidades desejáveis:
“Token Animation Game” Geração da Árvore de Alcançabilidade Editor Gráfico Verificação de Propriedades
5 / julho / 2007 CSBC / Workshop de Sistemas Operacionais 2007
4
ObjetivoObjetivoDesenvolvimento e implementação de uma ferramenta que reúne funcionalidades desejáveis em ferramentas de RdPIndependente de plataformaResultados gráficosInteração com usuárioExtensível
5 / julho / 2007 CSBC / Workshop de Sistemas Operacionais 2007
5
Trabalhos RelacionadosTrabalhos RelacionadosAtributos JARP PetriToo
ljPNS JSARP
Composição visual Simulação interativa Simulação automática Geração de árvore alcançabilidade Verificação de propriedades Resultados gráficos Persistir rede
5 / julho / 2007 CSBC / Workshop de Sistemas Operacionais 2007
6
Ferramenta: ARPFerramenta: ARPDOS 3.0 ou superiorEdição de Redes - textoRdP temporizadasAnálise por Enumeração de Estados – Árvore de AlcançabilidadeCálculo de InvariantesVerificação de EquivalênciaSimulação Avaliação de Desempenho
5 / julho / 2007 CSBC / Workshop de Sistemas Operacionais 2007
7
Ferramenta: ARPFerramenta: ARP
Edição
5 / julho / 2007 CSBC / Workshop de Sistemas Operacionais 2007
8
Ferramenta: ARPFerramenta: ARP
Análise
5 / julho / 2007 CSBC / Workshop de Sistemas Operacionais 2007
9
Ferramenta: ARPFerramenta: ARP
Simulação
5 / julho / 2007 CSBC / Workshop de Sistemas Operacionais 2007
10
JSARP – Descrição GeralJSARP – Descrição GeralTecnologia Orientada ObjetosJava – MultiplataformaGUI: Swing e API Forms JGoodiesExporta para XML: API XStreamIdiomas: Inglês e PortuguêsComposição VisualVerificação de PropriedadesGera Árvore de AlcançabilidadeSimulação Interativa
5 / julho / 2007 CSBC / Workshop de Sistemas Operacionais 2007
11
JSARP – Arquitetura JSARP – Arquitetura Programa
Executável
Tratador da Área de Edição
Janela Principal
Tratador da Janela Principal
Análise
Janela de Resultados da
Análise
Representação da Rede de Petri
Simulação
Janela de Simulação
5 / julho / 2007 CSBC / Workshop de Sistemas Operacionais 2007
12
JSARP – Estrutura do JSARP – Estrutura do CódigoCódigo
As ações que dirigem a simulação são capturadas através da Classe SimulationActionNotifica as ações para a interface gráfica, classe SimulationWindow, e para a classe que representa a rede estendida, PetriNetGraphA simulação é realizada pela classe ImplSimulator, que opera sobre a classe ImplPetriNetBase
5 / julho / 2007 CSBC / Workshop de Sistemas Operacionais 2007
13
JSARP – Formato JSARP – Formato XMLXML<br.uerj.petrinetanalyzer.gui.objects.PetriNetGraph> <nome>RedeSimples.xml</nome> <listLugar>
<br.uerj.petrinetanalyzer.gui.objects.PlaceGraph> <x>27</x> <y>69</y> <nome>P0</nome> <posicao>0</posicao> <fichas>2</fichas> <identificador>P0</identificador>
</br.uerj.petrinetanalyzer.gui.objects.PlaceGraph> </listLugar> <listTransicao> <br.uerj.petrinetanalyzer.gui.objects.TransitionGraph> <orientation>1</orientation> <x>83</x> <y>69</y> <nome>T0</nome> <posicao>0</posicao> <identificador>T0</identificador> <seft>0.0</seft> <slft>0.0</slft> <curvaDensidade>0</curvaDensidade> </br.uerj.petrinetanalyzer.gui.objects.TransitionGraph> </listTransicao>...
5 / julho / 2007 CSBC / Workshop de Sistemas Operacionais 2007
14
Formato Formato PNMLPNML<?xml version="1.0" encoding="ISO-8859-1"?><pnml xmlns = ""> <net id = "n1"type = "http://www.irt.rwth-aachen.de/download/netlab/pntd/pnsmNet"> <name><text>Petri net1</text></name> <place id = "p1"> <graphics> <position x = "300" y = "100"/> <dimension x = "40" y = "40"/> </graphics> <initialMarking> <text>1</text> </initialMarking> <capacity> <text>1</text> </capacity> </place> <transition id = "t1"> <graphics> <position x = "300" y = "200"/> <dimension x = "40" y = "40"/> </graphics> </transition>...
5 / julho / 2007 CSBC / Workshop de Sistemas Operacionais 2007
15
JSARP – Exemplo JSARP – Exemplo P0 – Produtor pronto p/
armazenar
P1 – Consumidor pronto p/ retirar do buffer
P2 – Consumidor pronto p/ consumir
P3 – Limitador do buffer
P4 – Buffer
P5 – Produtor pronto para produzir
T0 – Produzir
T1 – Armazenar no buffer
T2 – Remover do buffer
T3 – Consumir
Produtor e Consumidor com Buffer Limitado
5 / julho / 2007 CSBC / Workshop de Sistemas Operacionais 2007
16
JSARP – Exemplo JSARP – Exemplo
5 / julho / 2007 CSBC / Workshop de Sistemas Operacionais 2007
17
JSARP – Exemplo JSARP – Exemplo
5 / julho / 2007 CSBC / Workshop de Sistemas Operacionais 2007
18
Trabalhos FuturosTrabalhos FuturosRedes de Petri Temporizadas Usar o arcabouço existente para
análise/simulação em RdP temporizadas
Verificações de Propriedades Através da representação matricial Através da árvore de alcançabilidade
Melhorias na Interface Gráfica Permitir edição de rótulos Menu de ajuda
5 / julho / 2007 CSBC / Workshop de Sistemas Operacionais 2007
19
ConclusãoConclusão
Código fonte e documentação disponível http://br.geocities.com/jsarp_project
Ferramenta usada no curso de Sistemas Concorrentes e Distribuídos no PEL (UERJ)