@MASTERSTHESIS{ 2007:1115997929, title = {Monitoramento do fluxo de controle de processadores embarcados baseado em profiling de software}, year = {2007}, url = "http://tede2.pucrs.br/tede2/handle/tede/3078", abstract = "Nos ?ltimos anos, observa-se com grande euforia o crescimento do mercado de sistemas embarcados nas ?reas econ?mico-sociais de grande import?ncia, tais como a sa?de, telecomunica??es, automotiva e aeroespacial, entre outras. Como conseq??ncia, exige-se maior robustez tanto do hardware quanto do software integrante destes sistemas, al?m de componentes de baixo custo, principalmente mem?ria. Dentre os tipos poss?veis de falhas, as falhas que alteram o fluxo de controle de processadores que executam aplica??es embarcadas, por implicarem em quase sempre em falhas catastr?ficas do sistema, s?o focadas nesta disserta??o. Por falhas catastr?ficas, entende-se como sendo aquelas falhas que al?m de induzir o sistema a produzir um comportamento diferente daquele esperado para a sua fun??o, implicam na maioria das vezes tamb?m na reinicializa??o do sistema como forma de recupera??o da falha. Assim, a utiliza??o de t?cnicas capazes de detectar estes tipos de falhas evita que as mesmas se propaguem pelo sistema e acabem gerando sa?das incorretas, pois tais falhas podem ser catastr?ficas para a seguran?a dos usu?rios e para a imagem e reputa??o das empresas. Por?m, a utiliza??o de t?cnicas de detec??o de falhas gera um aumento na taxa de ocupa??o de mem?ria do sistema, bem como provoca aumento da degrada??o de desempenho, o que pode ser considerado um fator cr?tico tratando-se de aplica??es embarcadas de tempo-real. Como alternativa para minimizar estes fatores, tr?s hip?teses foram investigadas, sendo uma delas implementada. Assim, nesta disserta??o prop?e-se uma abordagem baseada em software profiling que analisa o grafo de fluxo de controle da aplica??o, visando ? otimiza??o do n?mero de assinaturas (checkpoints) a serem inseridas no c?digo-fonte. Para validar a abordagem proposta, foi realizada por simula??o a inje??o de tr?s tipos de falhas: jump, nop e bit-flip, sobre diferentes programas aplicativos. Este processo de inje??o de falhas foi acelerado via prototipagem do sistema em hardware, atrav?s do uso de um FPGA (Field-Programmable Gate Array) em uma placa comercial da Xilinx. A an?lise dos resultados obtidos indica que a t?cnica proposta reduz o n?mero de assinaturas inseridas no c?digo da aplica??o, e portanto, minimizando o overhead de mem?ria e a degrada??o do desempenho do sistema, ao passo que mant?m aproximadamente inalterado n?vel de cobertura de falhas quando comparada a outras t?cnicas atualmente existentes na literatura", publisher = {Pontif?cia Universidade Cat?lica do Rio Grande do Sul}, scholl = {Programa de P?s-Gradua??o em Engenharia El?trica}, note = {Faculdade de Engenharia} }