MISRA C

Origem: Wikipédia, a enciclopédia livre.

MISRA C é um padrão para desenvolvimento de software em linguagem de programação C desenvolvida pela Motor Industry Software Reliability Association, ou MISRA. Seus objetivos são facilitar a portabilidade e a confiabilidade de código no contexto de sistemas embarcados, mais especificamente os sistema codificados em ANSI C. Não há previsão para incorporação do padrão C99, mas vem sendo desenvolvido um padrão para C++ (2007).[1]

A primeira edição do padrão MISRA C, "Recomendações para o uso da linguagem C em software embarcado em veículos" ("Guidelines for the use of the C language in vehicle based software") foi publicado em 1998; e é oficialmente conhecido como MISRA-C:1998.[2] Em 2004, uma segunda edição foi lançada — "Recomendações para o uso de linguagem C em sistemas críticos" ("Guidelines for the use of the C language in critical systems"), ou MISRA-C:2004 — com algumas mudanças substanciais nas recomendações, incluindo a retirada de 15 regras que "não faziam sentido"[3] e uma completa renumeração das regras.

MISRA-C:1998 tem 127 regras, das quais 93 são "mandatórias" e 34 são "recomendáveis"; as regras são numeradas na seqüência de 1 até 127. O documento MISRA-C:2004 contém 141 regras, das quais 121 são "mandatórias" e 20 são "recomendáveis"; elas são divididas em 21 categorias/tópicos, de Ambiente ("Environment") até Falhas em tempo-de-execução("Runtime failures").

Mesmo existindo muitas ferramentas de software que clamam verificar o código para conformidade MISRA, o fato é que não existe certificação para tal,[1] e a MISRA não provê recomendações para certificadores. Programas checadores MISRA, tão somente, provêem uma coleção de interfaces e níveis de funcionalidade.

Um conjunto para verficação MISRA-C:2004 é disponível na seção Recursos (Resources) da URL The MISRA Forum (usuários registrados). Esse recurso permite que os usuários avaliem e comparem a capacidade de checagem das ferramentas checadoras. Também, dá dicas para desenvolvedores sobre os objetivos das regras dentro do MISRA-C:2004.

As recomendações MISRA C não são livres de direitos autorais para os usuários e implementadores de ferramentas.[4]

Referências

  1. a b «MISRA C2 - FAQs». MISRA C2 (em inglês). Consultado em 1 de dezembro de 2022 [ligação inativa] 
  2. «MISRA C2 - Intro». MISRA C2 (em inglês). Consultado em 1 de dezembro de 2022 [ligação inativa] 
  3. Forward to MISRA-C:2004, "Guidelines for the use of the C language in critical systems", ISBN 0-9524156-4-X
  4. «MISRA C2 - Buy». MISRA C2 (em inglês). Consultado em 1 de dezembro de 2022 [ligação inativa] 

Ligações externas[editar | editar código-fonte]