Uma metodologia para análise de fluxo de programas Java para tempo real
Autor(a) principal: | |
---|---|
Data de Publicação: | 2004 |
Tipo de documento: | Dissertação |
Idioma: | por |
Título da fonte: | Repositório Institucional da UFPE |
dARK ID: | ark:/64986/0013000008t5g |
Texto Completo: | https://repositorio.ufpe.br/handle/123456789/2553 |
Resumo: | Esta dissertação apresenta um método de análise de fluxo para a estimativa do WCET (worst-case execution time), o tempo de execução no pior caso, criado através da adaptação de uma abordagem desenvolvida recentemente com o mesmo fim, sobre programas de tempo real orientados a objeto. O método é uma extensão projetada para trabalhar sobre bytecodes Java, assumindo que não há nenhuma forma de anotação de código presente e também que o código-fonte original não está disponível. Devido a estas suposições, foi necessário determinar a estrutura original do programa, através de algoritmos existentes para análise de fluxo de controle. Outras informações sobre o programa foram necessárias, especialmente relativas às expressões condicionais, que foram fundamentais para a determinação dos caminhos possíveis no grafo. Além do método criado, foi desenvolvida uma ferramenta para análise de fluxo que implementa, de forma parcial, uma das interpretações abstratas possíveis para este tipo de finalidade. A interpretação implementada forneceu os resultados que confirmam os conceitos subjacentes a este trabalho. A ferramenta criada foi testada em alguns programas obtidos na literatura. Esses programas foram selecionados com o objetivo de exercitar a análise do fluxo de controle, em situações com características relevantes e que ocorrem freqüentemente, incluindo vários tipos de laços e estruturas com condições complexas. Programas com expressivo número de caminhos e de estados também foram utilizados nos testes. O método desenvolvido constitui-se num passo importante para a estimativa do WCET em Java |
id |
UFPE_5ea116cbf8e2db233be106b5c6e18588 |
---|---|
oai_identifier_str |
oai:repositorio.ufpe.br:123456789/2553 |
network_acronym_str |
UFPE |
network_name_str |
Repositório Institucional da UFPE |
repository_id_str |
2221 |
spelling |
Guedes, Paulo AbadieCavalcante, Sérgio Vanderlei 2014-06-12T15:59:12Z2014-06-12T15:59:12Z2004Abadie Guedes, Paulo; Vanderlei Cavalcante, Sérgio. Uma metodologia para análise de fluxo de programas Java para tempo real. 2004. Dissertação (Mestrado). Programa de Pós-Graduação em Ciência da Computação, Universidade Federal de Pernambuco, Recife, 2004.https://repositorio.ufpe.br/handle/123456789/2553ark:/64986/0013000008t5gEsta dissertação apresenta um método de análise de fluxo para a estimativa do WCET (worst-case execution time), o tempo de execução no pior caso, criado através da adaptação de uma abordagem desenvolvida recentemente com o mesmo fim, sobre programas de tempo real orientados a objeto. O método é uma extensão projetada para trabalhar sobre bytecodes Java, assumindo que não há nenhuma forma de anotação de código presente e também que o código-fonte original não está disponível. Devido a estas suposições, foi necessário determinar a estrutura original do programa, através de algoritmos existentes para análise de fluxo de controle. Outras informações sobre o programa foram necessárias, especialmente relativas às expressões condicionais, que foram fundamentais para a determinação dos caminhos possíveis no grafo. Além do método criado, foi desenvolvida uma ferramenta para análise de fluxo que implementa, de forma parcial, uma das interpretações abstratas possíveis para este tipo de finalidade. A interpretação implementada forneceu os resultados que confirmam os conceitos subjacentes a este trabalho. A ferramenta criada foi testada em alguns programas obtidos na literatura. Esses programas foram selecionados com o objetivo de exercitar a análise do fluxo de controle, em situações com características relevantes e que ocorrem freqüentemente, incluindo vários tipos de laços e estruturas com condições complexas. Programas com expressivo número de caminhos e de estados também foram utilizados nos testes. O método desenvolvido constitui-se num passo importante para a estimativa do WCET em JavaporUniversidade Federal de PernambucoAttribution-NonCommercial-NoDerivs 3.0 Brazilhttp://creativecommons.org/licenses/by-nc-nd/3.0/br/info:eu-repo/semantics/openAccessWCETTempo de execução no pior casoAnálise de fluxoInterpretação abstrataTempo real hardJava para tempo realRTJMáquina virtual javaUma metodologia para análise de fluxo de programas Java para tempo realinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesisreponame:Repositório Institucional da UFPEinstname:Universidade Federal de Pernambuco (UFPE)instacron:UFPETHUMBNAILarquivo4977_1.pdf.jpgarquivo4977_1.pdf.jpgGenerated Thumbnailimage/jpeg1312https://repositorio.ufpe.br/bitstream/123456789/2553/4/arquivo4977_1.pdf.jpg687ceeb239c0861f4d4394651e586fa1MD54ORIGINALarquivo4977_1.pdfapplication/pdf839007https://repositorio.ufpe.br/bitstream/123456789/2553/1/arquivo4977_1.pdf6f8778aed895d0751995d11c884589f1MD51LICENSElicense.txttext/plain1748https://repositorio.ufpe.br/bitstream/123456789/2553/2/license.txt8a4605be74aa9ea9d79846c1fba20a33MD52TEXTarquivo4977_1.pdf.txtarquivo4977_1.pdf.txtExtracted texttext/plain214714https://repositorio.ufpe.br/bitstream/123456789/2553/3/arquivo4977_1.pdf.txt2af1d0b4b2067421a9780e3ab1239af2MD53123456789/25532019-10-25 05:49:52.369oai:repositorio.ufpe.br:123456789/2553Tk9URTogUExBQ0UgWU9VUiBPV04gTElDRU5TRSBIRVJFClRoaXMgc2FtcGxlIGxpY2Vuc2UgaXMgcHJvdmlkZWQgZm9yIGluZm9ybWF0aW9uYWwgcHVycG9zZXMgb25seS4KCk5PTi1FWENMVVNJVkUgRElTVFJJQlVUSU9OIExJQ0VOU0UKCkJ5IHNpZ25pbmcgYW5kIHN1Ym1pdHRpbmcgdGhpcyBsaWNlbnNlLCB5b3UgKHRoZSBhdXRob3Iocykgb3IgY29weXJpZ2h0Cm93bmVyKSBncmFudHMgdG8gRFNwYWNlIFVuaXZlcnNpdHkgKERTVSkgdGhlIG5vbi1leGNsdXNpdmUgcmlnaHQgdG8gcmVwcm9kdWNlLAp0cmFuc2xhdGUgKGFzIGRlZmluZWQgYmVsb3cpLCBhbmQvb3IgZGlzdHJpYnV0ZSB5b3VyIHN1Ym1pc3Npb24gKGluY2x1ZGluZwp0aGUgYWJzdHJhY3QpIHdvcmxkd2lkZSBpbiBwcmludCBhbmQgZWxlY3Ryb25pYyBmb3JtYXQgYW5kIGluIGFueSBtZWRpdW0sCmluY2x1ZGluZyBidXQgbm90IGxpbWl0ZWQgdG8gYXVkaW8gb3IgdmlkZW8uCgpZb3UgYWdyZWUgdGhhdCBEU1UgbWF5LCB3aXRob3V0IGNoYW5naW5nIHRoZSBjb250ZW50LCB0cmFuc2xhdGUgdGhlCnN1Ym1pc3Npb24gdG8gYW55IG1lZGl1bSBvciBmb3JtYXQgZm9yIHRoZSBwdXJwb3NlIG9mIHByZXNlcnZhdGlvbi4KCllvdSBhbHNvIGFncmVlIHRoYXQgRFNVIG1heSBrZWVwIG1vcmUgdGhhbiBvbmUgY29weSBvZiB0aGlzIHN1Ym1pc3Npb24gZm9yCnB1cnBvc2VzIG9mIHNlY3VyaXR5LCBiYWNrLXVwIGFuZCBwcmVzZXJ2YXRpb24uCgpZb3UgcmVwcmVzZW50IHRoYXQgdGhlIHN1Ym1pc3Npb24gaXMgeW91ciBvcmlnaW5hbCB3b3JrLCBhbmQgdGhhdCB5b3UgaGF2ZQp0aGUgcmlnaHQgdG8gZ3JhbnQgdGhlIHJpZ2h0cyBjb250YWluZWQgaW4gdGhpcyBsaWNlbnNlLiBZb3UgYWxzbyByZXByZXNlbnQKdGhhdCB5b3VyIHN1Ym1pc3Npb24gZG9lcyBub3QsIHRvIHRoZSBiZXN0IG9mIHlvdXIga25vd2xlZGdlLCBpbmZyaW5nZSB1cG9uCmFueW9uZSdzIGNvcHlyaWdodC4KCklmIHRoZSBzdWJtaXNzaW9uIGNvbnRhaW5zIG1hdGVyaWFsIGZvciB3aGljaCB5b3UgZG8gbm90IGhvbGQgY29weXJpZ2h0LAp5b3UgcmVwcmVzZW50IHRoYXQgeW91IGhhdmUgb2J0YWluZWQgdGhlIHVucmVzdHJpY3RlZCBwZXJtaXNzaW9uIG9mIHRoZQpjb3B5cmlnaHQgb3duZXIgdG8gZ3JhbnQgRFNVIHRoZSByaWdodHMgcmVxdWlyZWQgYnkgdGhpcyBsaWNlbnNlLCBhbmQgdGhhdApzdWNoIHRoaXJkLXBhcnR5IG93bmVkIG1hdGVyaWFsIGlzIGNsZWFybHkgaWRlbnRpZmllZCBhbmQgYWNrbm93bGVkZ2VkCndpdGhpbiB0aGUgdGV4dCBvciBjb250ZW50IG9mIHRoZSBzdWJtaXNzaW9uLgoKSUYgVEhFIFNVQk1JU1NJT04gSVMgQkFTRUQgVVBPTiBXT1JLIFRIQVQgSEFTIEJFRU4gU1BPTlNPUkVEIE9SIFNVUFBPUlRFRApCWSBBTiBBR0VOQ1kgT1IgT1JHQU5JWkFUSU9OIE9USEVSIFRIQU4gRFNVLCBZT1UgUkVQUkVTRU5UIFRIQVQgWU9VIEhBVkUKRlVMRklMTEVEIEFOWSBSSUdIVCBPRiBSRVZJRVcgT1IgT1RIRVIgT0JMSUdBVElPTlMgUkVRVUlSRUQgQlkgU1VDSApDT05UUkFDVCBPUiBBR1JFRU1FTlQuCgpEU1Ugd2lsbCBjbGVhcmx5IGlkZW50aWZ5IHlvdXIgbmFtZShzKSBhcyB0aGUgYXV0aG9yKHMpIG9yIG93bmVyKHMpIG9mIHRoZQpzdWJtaXNzaW9uLCBhbmQgd2lsbCBub3QgbWFrZSBhbnkgYWx0ZXJhdGlvbiwgb3RoZXIgdGhhbiBhcyBhbGxvd2VkIGJ5IHRoaXMKbGljZW5zZSwgdG8geW91ciBzdWJtaXNzaW9uLgo=Repositório InstitucionalPUBhttps://repositorio.ufpe.br/oai/requestattena@ufpe.bropendoar:22212019-10-25T08:49:52Repositório Institucional da UFPE - Universidade Federal de Pernambuco (UFPE)false |
dc.title.pt_BR.fl_str_mv |
Uma metodologia para análise de fluxo de programas Java para tempo real |
title |
Uma metodologia para análise de fluxo de programas Java para tempo real |
spellingShingle |
Uma metodologia para análise de fluxo de programas Java para tempo real Guedes, Paulo Abadie WCET Tempo de execução no pior caso Análise de fluxo Interpretação abstrata Tempo real hard Java para tempo real RTJ Máquina virtual java |
title_short |
Uma metodologia para análise de fluxo de programas Java para tempo real |
title_full |
Uma metodologia para análise de fluxo de programas Java para tempo real |
title_fullStr |
Uma metodologia para análise de fluxo de programas Java para tempo real |
title_full_unstemmed |
Uma metodologia para análise de fluxo de programas Java para tempo real |
title_sort |
Uma metodologia para análise de fluxo de programas Java para tempo real |
author |
Guedes, Paulo Abadie |
author_facet |
Guedes, Paulo Abadie |
author_role |
author |
dc.contributor.author.fl_str_mv |
Guedes, Paulo Abadie |
dc.contributor.advisor1.fl_str_mv |
Cavalcante, Sérgio Vanderlei |
contributor_str_mv |
Cavalcante, Sérgio Vanderlei |
dc.subject.por.fl_str_mv |
WCET Tempo de execução no pior caso Análise de fluxo Interpretação abstrata Tempo real hard Java para tempo real RTJ Máquina virtual java |
topic |
WCET Tempo de execução no pior caso Análise de fluxo Interpretação abstrata Tempo real hard Java para tempo real RTJ Máquina virtual java |
description |
Esta dissertação apresenta um método de análise de fluxo para a estimativa do WCET (worst-case execution time), o tempo de execução no pior caso, criado através da adaptação de uma abordagem desenvolvida recentemente com o mesmo fim, sobre programas de tempo real orientados a objeto. O método é uma extensão projetada para trabalhar sobre bytecodes Java, assumindo que não há nenhuma forma de anotação de código presente e também que o código-fonte original não está disponível. Devido a estas suposições, foi necessário determinar a estrutura original do programa, através de algoritmos existentes para análise de fluxo de controle. Outras informações sobre o programa foram necessárias, especialmente relativas às expressões condicionais, que foram fundamentais para a determinação dos caminhos possíveis no grafo. Além do método criado, foi desenvolvida uma ferramenta para análise de fluxo que implementa, de forma parcial, uma das interpretações abstratas possíveis para este tipo de finalidade. A interpretação implementada forneceu os resultados que confirmam os conceitos subjacentes a este trabalho. A ferramenta criada foi testada em alguns programas obtidos na literatura. Esses programas foram selecionados com o objetivo de exercitar a análise do fluxo de controle, em situações com características relevantes e que ocorrem freqüentemente, incluindo vários tipos de laços e estruturas com condições complexas. Programas com expressivo número de caminhos e de estados também foram utilizados nos testes. O método desenvolvido constitui-se num passo importante para a estimativa do WCET em Java |
publishDate |
2004 |
dc.date.issued.fl_str_mv |
2004 |
dc.date.accessioned.fl_str_mv |
2014-06-12T15:59:12Z |
dc.date.available.fl_str_mv |
2014-06-12T15:59:12Z |
dc.type.status.fl_str_mv |
info:eu-repo/semantics/publishedVersion |
dc.type.driver.fl_str_mv |
info:eu-repo/semantics/masterThesis |
format |
masterThesis |
status_str |
publishedVersion |
dc.identifier.citation.fl_str_mv |
Abadie Guedes, Paulo; Vanderlei Cavalcante, Sérgio. Uma metodologia para análise de fluxo de programas Java para tempo real. 2004. Dissertação (Mestrado). Programa de Pós-Graduação em Ciência da Computação, Universidade Federal de Pernambuco, Recife, 2004. |
dc.identifier.uri.fl_str_mv |
https://repositorio.ufpe.br/handle/123456789/2553 |
dc.identifier.dark.fl_str_mv |
ark:/64986/0013000008t5g |
identifier_str_mv |
Abadie Guedes, Paulo; Vanderlei Cavalcante, Sérgio. Uma metodologia para análise de fluxo de programas Java para tempo real. 2004. Dissertação (Mestrado). Programa de Pós-Graduação em Ciência da Computação, Universidade Federal de Pernambuco, Recife, 2004. ark:/64986/0013000008t5g |
url |
https://repositorio.ufpe.br/handle/123456789/2553 |
dc.language.iso.fl_str_mv |
por |
language |
por |
dc.rights.driver.fl_str_mv |
Attribution-NonCommercial-NoDerivs 3.0 Brazil http://creativecommons.org/licenses/by-nc-nd/3.0/br/ info:eu-repo/semantics/openAccess |
rights_invalid_str_mv |
Attribution-NonCommercial-NoDerivs 3.0 Brazil http://creativecommons.org/licenses/by-nc-nd/3.0/br/ |
eu_rights_str_mv |
openAccess |
dc.publisher.none.fl_str_mv |
Universidade Federal de Pernambuco |
publisher.none.fl_str_mv |
Universidade Federal de Pernambuco |
dc.source.none.fl_str_mv |
reponame:Repositório Institucional da UFPE instname:Universidade Federal de Pernambuco (UFPE) instacron:UFPE |
instname_str |
Universidade Federal de Pernambuco (UFPE) |
instacron_str |
UFPE |
institution |
UFPE |
reponame_str |
Repositório Institucional da UFPE |
collection |
Repositório Institucional da UFPE |
bitstream.url.fl_str_mv |
https://repositorio.ufpe.br/bitstream/123456789/2553/4/arquivo4977_1.pdf.jpg https://repositorio.ufpe.br/bitstream/123456789/2553/1/arquivo4977_1.pdf https://repositorio.ufpe.br/bitstream/123456789/2553/2/license.txt https://repositorio.ufpe.br/bitstream/123456789/2553/3/arquivo4977_1.pdf.txt |
bitstream.checksum.fl_str_mv |
687ceeb239c0861f4d4394651e586fa1 6f8778aed895d0751995d11c884589f1 8a4605be74aa9ea9d79846c1fba20a33 2af1d0b4b2067421a9780e3ab1239af2 |
bitstream.checksumAlgorithm.fl_str_mv |
MD5 MD5 MD5 MD5 |
repository.name.fl_str_mv |
Repositório Institucional da UFPE - Universidade Federal de Pernambuco (UFPE) |
repository.mail.fl_str_mv |
attena@ufpe.br |
_version_ |
1814448212420853760 |